↑ Up

DT2H2X---1.9.5.THM-Ref.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : DT2H2X---1.9.5
% Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300

% Computer : n011.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 06:58:51 PM UTC 2026

% Result   : Theorem 6.47s 2.17s
% Output   : Refutation 6.47s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   34
%            Number of leaves      :  149
% Syntax   : Number of formulae    :  229 (  18 unt;   0 typ;  11 def)
%            Number of atoms       : 11695 (5531 equ;   0 cnn)
%            Maximal formula atoms :  530 (  51 avg)
%            Number of connectives : 28493 (3124   ~;2875   |;2452   &;19050   @)
%                                         ( 518 <=>; 354  =>;   0  <=;   0 <~>)
%            Maximal formula depth :  188 (  14 avg)
%            Number of types       :    5 (   4 usr)
%            Number of type conns  : 2135 (2135   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  745 ( 741 usr; 304 con; 0-4 aty)
%                                         ( 120  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 5924 ( 241   ^;4303   !;1380   ?;5924   :)

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

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

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

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

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

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

thf(func_def_2,type,
    one: term ).

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

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

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

thf(func_def_6,type,
    id: subst ).

thf(func_def_7,type,
    sh: subst ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_128,type,
    d_one: d_term ).

thf(func_def_129,type,
    d_id: d_subst ).

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

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

thf(func_def_148,type,
    sP6: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

thf(func_def_169,type,
    sP27: ( subst > term > subst > $o ) > $o ).

thf(func_def_170,type,
    sP28: ( subst > term > subst > $o ) > $o ).

thf(func_def_171,type,
    sP29: ( subst > term > subst > $o ) > $o ).

thf(func_def_172,type,
    sP30: ( term > $o ) > $o ).

thf(func_def_173,type,
    sP31: ( subst > term > subst > $o ) > $o ).

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

thf(func_def_181,type,
    sP39: ( subst > term > subst > $o ) > $o ).

thf(func_def_182,type,
    sP40: ( term > $o ) > $o ).

thf(func_def_183,type,
    sP41: ( term > $o ) > $o ).

thf(func_def_186,type,
    sP44: ( subst > term > subst > $o ) > $o ).

thf(func_def_188,type,
    sP46: ( term > $o ) > $o ).

thf(func_def_189,type,
    sP47: ( subst > term > subst > $o ) > $o ).

thf(func_def_190,type,
    sP48: ( subst > term > subst > $o ) > $o ).

thf(func_def_197,type,
    sP55: ( term > $o ) > $o ).

thf(func_def_199,type,
    sP57: ( subst > term > subst > $o ) > $o ).

thf(func_def_201,type,
    sK59: subst > term > subst > $o ).

thf(func_def_202,type,
    sK60: term ).

thf(func_def_203,type,
    sK61: term > ( subst > term > subst > $o ) > term ).

thf(func_def_204,type,
    sK62: ( subst > term > subst > $o ) > term ).

thf(func_def_205,type,
    sK63: ( subst > term > subst > $o ) > subst ).

thf(func_def_206,type,
    sK64: ( subst > term > subst > $o ) > subst ).

thf(func_def_207,type,
    sK65: ( subst > term > subst > $o ) > subst ).

thf(func_def_208,type,
    sK66: ( subst > term > subst > $o ) > subst ).

thf(func_def_209,type,
    sK67: ( subst > term > subst > $o ) > term ).

thf(func_def_210,type,
    sK68: ( subst > term > subst > $o ) > subst ).

thf(func_def_211,type,
    sK69: ( subst > term > subst > $o ) > subst ).

thf(func_def_212,type,
    sK70: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_213,type,
    sK71: ( subst > term > term ) > term ).

thf(func_def_214,type,
    sK72: ( subst > term > term ) > subst ).

thf(func_def_215,type,
    sK73: ( subst > term > term ) > subst ).

thf(func_def_216,type,
    sK74: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_217,type,
    sK75: subst > term > term ).

thf(func_def_218,type,
    sK76: subst > term > term ).

thf(func_def_219,type,
    sK77: term ).

thf(func_def_220,type,
    sK78: subst ).

thf(func_def_221,type,
    sK79: subst ).

thf(func_def_222,type,
    sK80: term ).

thf(func_def_223,type,
    sK81: term ).

thf(func_def_224,type,
    sK82: term ).

thf(func_def_225,type,
    sK83: ( subst > term > term ) > subst ).

thf(func_def_226,type,
    sK84: ( subst > term > term ) > term ).

thf(func_def_227,type,
    sK85: ( subst > term > term ) > subst ).

thf(func_def_228,type,
    sK86: ( subst > term > term ) > subst ).

thf(func_def_229,type,
    sK87: ( subst > term > term ) > subst ).

thf(func_def_230,type,
    sK88: ( subst > term > term ) > term ).

thf(func_def_231,type,
    sK89: subst ).

thf(func_def_232,type,
    sK90: term ).

thf(func_def_233,type,
    sK91: ( term > $o ) > term ).

thf(func_def_234,type,
    sK92: ( term > $o ) > term ).

thf(func_def_235,type,
    sK93: subst > term > subst > $o ).

thf(func_def_236,type,
    sK94: term ).

thf(func_def_237,type,
    sK95: ( subst > term > term ) > subst ).

thf(func_def_238,type,
    sK96: ( subst > term > term ) > subst ).

thf(func_def_239,type,
    sK97: ( subst > term > term ) > term ).

thf(func_def_240,type,
    sK98: ( subst > term > term ) > term ).

thf(func_def_241,type,
    sK99: term > ( subst > term > subst > $o ) > term ).

thf(func_def_242,type,
    sK100: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_243,type,
    sK101: term ).

thf(func_def_244,type,
    sK102: ( subst > term > subst > $o ) > term > term ).

thf(func_def_245,type,
    sK103: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_246,type,
    sK104: term ).

thf(func_def_247,type,
    sK105: subst > term > subst > $o ).

thf(func_def_248,type,
    sK106: ( subst > term > term ) > term ).

thf(func_def_249,type,
    sK107: ( subst > term > term ) > subst ).

thf(func_def_250,type,
    sK108: ( subst > term > term ) > subst ).

thf(func_def_251,type,
    sK109: ( subst > term > term ) > term ).

thf(func_def_252,type,
    sK110: subst > term > subst > $o ).

thf(func_def_253,type,
    sK111: term ).

thf(func_def_254,type,
    sK112: ( subst > term > term ) > subst ).

thf(func_def_255,type,
    sK113: ( subst > term > term ) > subst ).

thf(func_def_256,type,
    sK114: ( subst > term > term ) > term ).

thf(func_def_257,type,
    sK115: ( subst > term > term ) > term ).

thf(func_def_258,type,
    sK116: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_259,type,
    sK117: term > ( subst > term > subst > $o ) > term ).

thf(func_def_260,type,
    sK118: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_261,type,
    sK119: ( term > $o ) > term ).

thf(func_def_262,type,
    sK120: ( term > $o ) > term ).

thf(func_def_263,type,
    sK121: subst > term > subst > $o ).

thf(func_def_264,type,
    sK122: ( term > $o ) > term ).

thf(func_def_265,type,
    sK123: term > $o ).

thf(func_def_266,type,
    sK124: term ).

thf(func_def_267,type,
    sK125: term > term ).

thf(func_def_268,type,
    sK126: term ).

thf(func_def_269,type,
    sK127: subst > term > subst > $o ).

thf(func_def_270,type,
    sK128: term ).

thf(func_def_271,type,
    sK129: ( subst > term > subst > $o ) > term ).

thf(func_def_272,type,
    sK130: ( subst > term > subst > $o ) > subst ).

thf(func_def_273,type,
    sK131: ( subst > term > subst > $o ) > term ).

thf(func_def_274,type,
    sK132: ( subst > term > subst > $o ) > subst ).

thf(func_def_275,type,
    sK133: ( subst > term > subst > $o ) > subst ).

thf(func_def_276,type,
    sK134: ( subst > term > subst > $o ) > subst ).

thf(func_def_277,type,
    sK135: ( subst > term > subst > $o ) > term ).

thf(func_def_278,type,
    sK136: ( subst > term > subst > $o ) > subst ).

thf(func_def_279,type,
    sK137: ( subst > term > subst > $o ) > subst ).

thf(func_def_280,type,
    sK138: ( term > $o ) > term > term ).

thf(func_def_281,type,
    sK139: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_282,type,
    sK140: ( subst > term > subst > $o ) > ( term > $o ) > term ).

thf(func_def_283,type,
    sK141: term ).

thf(func_def_284,type,
    sK142: term > $o ).

thf(func_def_285,type,
    sK143: subst > term > subst > $o ).

thf(func_def_286,type,
    sK144: ( subst > term > term ) > term ).

thf(func_def_287,type,
    sK145: ( subst > term > term ) > subst ).

thf(func_def_288,type,
    sK146: ( subst > term > term ) > subst ).

thf(func_def_289,type,
    sK147: ( subst > term > term ) > term ).

thf(func_def_290,type,
    sK148: ( subst > term > subst > $o ) > term ).

thf(func_def_291,type,
    sK149: ( subst > term > subst > $o ) > term ).

thf(func_def_292,type,
    sK150: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_293,type,
    sK151: ( subst > term > term ) > subst ).

thf(func_def_294,type,
    sK152: ( subst > term > term ) > subst ).

thf(func_def_295,type,
    sK153: ( subst > term > term ) > term ).

thf(func_def_296,type,
    sK154: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_297,type,
    sK155: ( term > $o ) > term ).

thf(func_def_298,type,
    sK156: ( term > $o ) > term ).

thf(func_def_299,type,
    sK157: subst > term > subst > $o ).

thf(func_def_300,type,
    sK158: term ).

thf(func_def_301,type,
    sK159: term > $o ).

thf(func_def_302,type,
    sK160: term ).

thf(func_def_303,type,
    sK161: ( subst > term > subst > $o ) > subst ).

thf(func_def_304,type,
    sK162: ( subst > term > subst > $o ) > subst ).

thf(func_def_305,type,
    sK163: ( subst > term > subst > $o ) > term ).

thf(func_def_306,type,
    sK164: ( subst > term > subst > $o ) > subst ).

thf(func_def_307,type,
    sK165: ( subst > term > subst > $o ) > term ).

thf(func_def_308,type,
    sK166: ( subst > term > subst > $o ) > subst ).

thf(func_def_309,type,
    sK167: ( subst > term > subst > $o ) > subst ).

thf(func_def_310,type,
    sK168: ( subst > term > subst > $o ) > subst ).

thf(func_def_311,type,
    sK169: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_312,type,
    sK170: ( subst > term > subst > $o ) > term ).

thf(func_def_313,type,
    sK171: ( subst > term > subst > $o ) > term ).

thf(func_def_314,type,
    sK172: ( term > $o ) > term ).

thf(func_def_315,type,
    sK173: ( term > $o ) > term ).

thf(func_def_316,type,
    sK174: subst ).

thf(func_def_317,type,
    sK175: term ).

thf(func_def_318,type,
    sK176: subst ).

thf(func_def_319,type,
    sK177: subst ).

thf(func_def_320,type,
    sK178: term ).

thf(func_def_321,type,
    sK179: term ).

thf(func_def_322,type,
    sK180: term > $o ).

thf(func_def_323,type,
    sK181: subst ).

thf(func_def_324,type,
    sK182: term > $o ).

thf(func_def_325,type,
    sK183: term ).

thf(func_def_326,type,
    sK184: term > term ).

thf(func_def_327,type,
    sK185: ( term > $o ) > term ).

thf(func_def_328,type,
    sK186: ( term > $o ) > subst > term ).

thf(func_def_329,type,
    sK187: ( term > $o ) > term ).

thf(func_def_330,type,
    sK188: ( term > $o ) > term ).

thf(func_def_331,type,
    sK189: ( term > $o ) > term ).

thf(func_def_332,type,
    sK190: ( term > $o ) > term ).

thf(func_def_333,type,
    sK191: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_334,type,
    sK192: ( subst > term > term ) > subst ).

thf(func_def_335,type,
    sK193: ( subst > term > term ) > term ).

thf(func_def_336,type,
    sK194: ( subst > term > term ) > subst ).

thf(func_def_337,type,
    sK195: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_338,type,
    sK196: term ).

thf(func_def_339,type,
    sK197: subst > term > subst > $o ).

thf(func_def_340,type,
    sK198: term ).

thf(func_def_341,type,
    sK199: ( subst > term > subst > $o ) > term ).

thf(func_def_342,type,
    sK200: ( subst > term > subst > $o ) > subst ).

thf(func_def_343,type,
    sK201: ( subst > term > subst > $o ) > subst ).

thf(func_def_344,type,
    sK202: ( subst > term > subst > $o ) > subst ).

thf(func_def_345,type,
    sK203: ( subst > term > subst > $o ) > subst ).

thf(func_def_346,type,
    sK204: ( subst > term > subst > $o ) > subst ).

thf(func_def_347,type,
    sK205: ( subst > term > subst > $o ) > term ).

thf(func_def_348,type,
    sK206: ( subst > term > subst > $o ) > subst ).

thf(func_def_349,type,
    sK207: ( subst > term > subst > $o ) > term ).

thf(func_def_350,type,
    sK208: ( subst > term > subst > $o ) > term ).

thf(func_def_351,type,
    sK209: term ).

thf(func_def_352,type,
    sK210: subst > term > subst > $o ).

thf(func_def_353,type,
    sK211: ( subst > term > term ) > subst ).

thf(func_def_354,type,
    sK212: ( subst > term > term ) > subst ).

thf(func_def_355,type,
    sK213: ( subst > term > term ) > term ).

thf(func_def_356,type,
    sK214: ( subst > term > term ) > term ).

thf(func_def_357,type,
    sK215: ( subst > term > subst > $o ) > term > term ).

thf(func_def_358,type,
    sK216: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_359,type,
    sK217: ( subst > term > subst > $o ) > subst ).

thf(func_def_360,type,
    sK218: ( subst > term > subst > $o ) > subst ).

thf(func_def_361,type,
    sK219: ( subst > term > subst > $o ) > subst ).

thf(func_def_362,type,
    sK220: ( subst > term > subst > $o ) > term ).

thf(func_def_363,type,
    sK221: ( subst > term > subst > $o ) > term ).

thf(func_def_364,type,
    sK222: ( subst > term > subst > $o ) > subst ).

thf(func_def_365,type,
    sK223: ( subst > term > subst > $o ) > subst ).

thf(func_def_366,type,
    sK224: ( subst > term > subst > $o ) > subst ).

thf(func_def_367,type,
    sK225: term ).

thf(func_def_368,type,
    sK226: term ).

thf(func_def_369,type,
    sK227: subst > term > subst > $o ).

thf(func_def_370,type,
    sK228: ( term > $o ) > term ).

thf(func_def_371,type,
    sK229: ( term > $o ) > term ).

thf(func_def_372,type,
    sK230: term ).

thf(func_def_373,type,
    sK231: term > $o ).

thf(func_def_374,type,
    sK232: term > term ).

thf(func_def_375,type,
    sK233: subst > term > subst > $o ).

thf(func_def_376,type,
    sK234: term ).

thf(func_def_377,type,
    sK235: ( subst > term > subst > $o ) > term ).

thf(func_def_378,type,
    sK236: ( subst > term > subst > $o ) > subst ).

thf(func_def_379,type,
    sK237: ( subst > term > subst > $o ) > term ).

thf(func_def_380,type,
    sK238: ( subst > term > subst > $o ) > subst ).

thf(func_def_381,type,
    sK239: ( subst > term > subst > $o ) > subst ).

thf(func_def_382,type,
    sK240: ( subst > term > subst > $o ) > subst ).

thf(func_def_383,type,
    sK241: ( subst > term > subst > $o ) > subst ).

thf(func_def_384,type,
    sK242: ( subst > term > subst > $o ) > subst ).

thf(func_def_385,type,
    sK243: ( subst > term > subst > $o ) > term ).

thf(func_def_386,type,
    sK244: ( subst > term > subst > $o ) > subst ).

thf(func_def_387,type,
    sK245: ( subst > term > subst > $o ) > subst ).

thf(func_def_388,type,
    sK246: ( subst > term > subst > $o ) > subst ).

thf(func_def_389,type,
    sK247: ( subst > term > subst > $o ) > term ).

thf(func_def_390,type,
    sK248: ( subst > term > subst > $o ) > subst ).

thf(func_def_391,type,
    sK249: ( subst > term > subst > $o ) > subst ).

thf(func_def_392,type,
    sK250: ( subst > term > subst > $o ) > subst ).

thf(func_def_393,type,
    sK251: ( subst > term > subst > $o ) > term ).

thf(func_def_394,type,
    sK252: ( subst > term > subst > $o ) > term > term ).

thf(func_def_395,type,
    sK253: term ).

thf(func_def_396,type,
    sK254: subst > term > subst > $o ).

thf(func_def_397,type,
    sK255: ( subst > term > subst > $o ) > term ).

thf(func_def_398,type,
    sK256: ( subst > term > subst > $o ) > term ).

thf(func_def_399,type,
    sK257: ( term > $o ) > term ).

thf(func_def_400,type,
    sK258: ( term > $o ) > term ).

thf(func_def_401,type,
    sK259: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_402,type,
    sK260: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_403,type,
    sK261: ( subst > term > term ) > subst ).

thf(func_def_404,type,
    sK262: ( subst > term > term ) > subst ).

thf(func_def_405,type,
    sK263: ( subst > term > term ) > term ).

thf(func_def_406,type,
    sK264: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_407,type,
    sK265: ( subst > term > term ) > subst ).

thf(func_def_408,type,
    sK266: ( subst > term > term ) > term ).

thf(func_def_409,type,
    sK267: ( subst > term > term ) > subst ).

thf(func_def_410,type,
    sK268: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_411,type,
    sK269: ( subst > term > subst > $o ) > term ).

thf(func_def_412,type,
    sK270: ( subst > term > subst > $o ) > term ).

thf(func_def_413,type,
    sK271: ( term > $o ) > subst > term ).

thf(func_def_414,type,
    sK272: ( term > $o ) > term ).

thf(func_def_415,type,
    sK273: term ).

thf(func_def_416,type,
    sK274: subst ).

thf(func_def_417,type,
    sK275: term > $o ).

thf(func_def_418,type,
    sK276: term ).

thf(func_def_419,type,
    sK277: term > term ).

thf(func_def_420,type,
    sK278: term ).

thf(func_def_421,type,
    sK279: term > $o ).

thf(func_def_422,type,
    sK280: term > term ).

thf(func_def_423,type,
    sK281: ( term > $o ) > term ).

thf(func_def_424,type,
    sK282: ( term > $o ) > term ).

thf(func_def_425,type,
    sK283: ( term > $o ) > term ).

thf(func_def_426,type,
    sK284: ( term > $o ) > term ).

thf(func_def_427,type,
    sK285: ( term > $o ) > term ).

thf(func_def_428,type,
    sK286: ( term > $o ) > term ).

thf(func_def_429,type,
    sK287: term > subst > term > term ).

thf(func_def_430,type,
    sK288: term ).

thf(func_def_431,type,
    sK289: term > $o ).

thf(func_def_432,type,
    sK290: subst > term > subst > $o ).

thf(func_def_433,type,
    sK291: ( subst > term > term ) > term ).

thf(func_def_434,type,
    sK292: ( subst > term > term ) > subst ).

thf(func_def_435,type,
    sK293: ( subst > term > term ) > subst ).

thf(func_def_436,type,
    sK294: ( subst > term > term ) > term ).

thf(func_def_437,type,
    sK295: term ).

thf(func_def_438,type,
    sK296: ( subst > term > term ) > subst ).

thf(func_def_439,type,
    sK297: ( subst > term > term ) > term ).

thf(func_def_440,type,
    sK298: ( subst > term > subst > $o ) > ( term > $o ) > term ).

thf(func_def_441,type,
    sK299: ( term > $o ) > term > term ).

thf(func_def_442,type,
    sK300: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_443,type,
    sK301: term ).

thf(func_def_444,type,
    sK302: subst > term > subst > $o ).

thf(func_def_445,type,
    sK303: term ).

thf(func_def_446,type,
    sK304: ( subst > term > term ) > term ).

thf(func_def_447,type,
    sK305: ( subst > term > term ) > term ).

thf(func_def_448,type,
    sK306: ( subst > term > term ) > subst ).

thf(func_def_449,type,
    sK307: ( subst > term > term ) > subst ).

thf(func_def_450,type,
    sK308: term > ( subst > term > subst > $o ) > term ).

thf(func_def_451,type,
    sK309: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_452,type,
    sK310: term ).

thf(func_def_453,type,
    sK311: term > $o ).

thf(func_def_454,type,
    sK312: term > term ).

thf(func_def_455,type,
    sK313: ( term > $o ) > term ).

thf(func_def_456,type,
    sK314: ( term > $o ) > term ).

thf(func_def_457,type,
    sK315: ( term > $o ) > term ).

thf(func_def_458,type,
    sK316: ( term > $o ) > term ).

thf(func_def_459,type,
    sK317: term ).

thf(func_def_460,type,
    sK318: subst > term > subst > $o ).

thf(func_def_461,type,
    sK319: ( subst > term > subst > $o ) > term > term ).

thf(func_def_462,type,
    sK320: ( subst > term > subst > $o ) > term ).

thf(func_def_463,type,
    sK321: ( subst > term > subst > $o ) > subst ).

thf(func_def_464,type,
    sK322: ( subst > term > subst > $o ) > subst ).

thf(func_def_465,type,
    sK323: ( subst > term > subst > $o ) > subst ).

thf(func_def_466,type,
    sK324: ( subst > term > subst > $o ) > term ).

thf(func_def_467,type,
    sK325: ( subst > term > subst > $o ) > subst ).

thf(func_def_468,type,
    sK326: ( subst > term > subst > $o ) > subst ).

thf(func_def_469,type,
    sK327: ( subst > term > subst > $o ) > subst ).

thf(func_def_470,type,
    sK328: term ).

thf(func_def_471,type,
    sK329: ( subst > term > subst > $o ) > term > term ).

thf(func_def_472,type,
    sK330: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_473,type,
    sK331: term ).

thf(func_def_474,type,
    sK332: subst > term > subst > $o ).

thf(func_def_475,type,
    sK333: ( subst > term > term ) > term ).

thf(func_def_476,type,
    sK334: ( subst > term > term ) > subst ).

thf(func_def_477,type,
    sK335: ( subst > term > term ) > term ).

thf(func_def_478,type,
    sK336: ( subst > term > term ) > subst ).

thf(func_def_479,type,
    sK337: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_480,type,
    sK338: ( subst > term > term ) > subst ).

thf(func_def_481,type,
    sK339: ( subst > term > term ) > term ).

thf(func_def_482,type,
    sK340: ( subst > term > term ) > subst ).

thf(func_def_483,type,
    sK341: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_484,type,
    sK342: subst > term > subst > $o ).

thf(func_def_485,type,
    sK343: term ).

thf(func_def_486,type,
    sK344: ( subst > term > subst > $o ) > term ).

thf(func_def_487,type,
    sK345: ( subst > term > subst > $o ) > subst ).

thf(func_def_488,type,
    sK346: ( subst > term > subst > $o ) > subst ).

thf(func_def_489,type,
    sK347: ( subst > term > subst > $o ) > subst ).

thf(func_def_490,type,
    sK348: ( subst > term > subst > $o ) > term ).

thf(func_def_491,type,
    sK349: ( subst > term > subst > $o ) > subst ).

thf(func_def_492,type,
    sK350: ( subst > term > subst > $o ) > subst ).

thf(func_def_493,type,
    sK351: ( subst > term > subst > $o ) > term ).

thf(func_def_494,type,
    sK352: ( subst > term > subst > $o ) > subst ).

thf(func_def_495,type,
    sK353: ( subst > term > subst > $o ) > term ).

thf(func_def_496,type,
    sK354: ( subst > term > subst > $o ) > term ).

thf(func_def_497,type,
    sK355: ( subst > term > term ) > subst ).

thf(func_def_498,type,
    sK356: ( subst > term > term ) > subst ).

thf(func_def_499,type,
    sK357: ( subst > term > term ) > term ).

thf(func_def_500,type,
    sK358: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_501,type,
    sK359: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_502,type,
    sK360: term ).

thf(func_def_503,type,
    sK361: subst > term > subst > $o ).

thf(func_def_504,type,
    sK362: term > $o ).

thf(func_def_505,type,
    sK363: ( subst > term > term ) > term ).

thf(func_def_506,type,
    sK364: ( subst > term > term ) > subst ).

thf(func_def_507,type,
    sK365: ( subst > term > term ) > subst ).

thf(func_def_508,type,
    sK366: ( subst > term > term ) > term ).

thf(func_def_509,type,
    sK367: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_510,type,
    sK368: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_511,type,
    sK369: ( term > $o ) > term > term ).

thf(func_def_512,type,
    sK370: subst ).

thf(func_def_513,type,
    sK371: term ).

thf(func_def_514,type,
    sK372: term > $o ).

thf(func_def_515,type,
    sK373: term > term ).

thf(func_def_516,type,
    sK374: ( term > $o ) > term ).

thf(func_def_517,type,
    sK375: ( term > $o ) > subst > term ).

thf(func_def_518,type,
    sK376: ( term > $o ) > term ).

thf(func_def_519,type,
    sK377: ( term > $o ) > term ).

thf(func_def_520,type,
    sK378: subst > term > subst > $o ).

thf(func_def_521,type,
    sK379: term ).

thf(func_def_522,type,
    sK380: term > $o ).

thf(func_def_523,type,
    sK381: ( subst > term > subst > $o ) > subst ).

thf(func_def_524,type,
    sK382: ( subst > term > subst > $o ) > term ).

thf(func_def_525,type,
    sK383: ( subst > term > subst > $o ) > subst ).

thf(func_def_526,type,
    sK384: ( subst > term > subst > $o ) > subst ).

thf(func_def_527,type,
    sK385: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_528,type,
    sK386: ( subst > term > subst > $o ) > subst ).

thf(func_def_529,type,
    sK387: ( subst > term > subst > $o ) > subst ).

thf(func_def_530,type,
    sK388: ( subst > term > subst > $o ) > term ).

thf(func_def_531,type,
    sK389: ( subst > term > subst > $o ) > subst ).

thf(func_def_532,type,
    sK390: ( term > $o ) > term > term ).

thf(func_def_533,type,
    sK391: term ).

thf(func_def_534,type,
    sK392: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_535,type,
    sK393: ( subst > term > term ) > subst ).

thf(func_def_536,type,
    sK394: ( subst > term > term ) > subst ).

thf(func_def_537,type,
    sK395: ( subst > term > term ) > term ).

thf(func_def_538,type,
    sK396: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_539,type,
    sK397: term ).

thf(func_def_540,type,
    sK398: term > $o ).

thf(func_def_541,type,
    sK399: subst > term > subst > $o ).

thf(func_def_542,type,
    sK400: ( subst > term > subst > $o ) > subst ).

thf(func_def_543,type,
    sK401: ( subst > term > subst > $o ) > subst ).

thf(func_def_544,type,
    sK402: ( subst > term > subst > $o ) > subst ).

thf(func_def_545,type,
    sK403: ( subst > term > subst > $o ) > term ).

thf(func_def_546,type,
    sK404: ( subst > term > subst > $o ) > subst ).

thf(func_def_547,type,
    sK405: ( subst > term > subst > $o ) > subst ).

thf(func_def_548,type,
    sK406: ( subst > term > subst > $o ) > subst ).

thf(func_def_549,type,
    sK407: ( subst > term > subst > $o ) > term ).

thf(func_def_550,type,
    sK408: ( subst > term > subst > $o ) > ( term > $o ) > term ).

thf(func_def_551,type,
    sK409: ( term > $o ) > term > term ).

thf(func_def_552,type,
    sK410: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_553,type,
    sK411: ( subst > term > term ) > subst ).

thf(func_def_554,type,
    sK412: ( subst > term > term ) > term ).

thf(func_def_555,type,
    sK413: ( subst > term > term ) > subst ).

thf(func_def_556,type,
    sK414: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_557,type,
    sK415: ( term > $o ) > term ).

thf(func_def_558,type,
    sK416: ( term > $o ) > term ).

thf(func_def_559,type,
    sK417: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_560,type,
    sK418: term > $o ).

thf(func_def_561,type,
    sK419: term ).

thf(func_def_562,type,
    sK420: term > term ).

thf(func_def_563,type,
    sK421: subst > term > subst > $o ).

thf(func_def_564,type,
    sK422: ( term > $o ) > term ).

thf(func_def_565,type,
    sK423: term ).

thf(func_def_566,type,
    sK424: term ).

thf(func_def_567,type,
    sK425: subst > term > subst > $o ).

thf(func_def_568,type,
    sK426: ( subst > term > term ) > term ).

thf(func_def_569,type,
    sK427: ( subst > term > term ) > term ).

thf(func_def_570,type,
    sK428: ( subst > term > term ) > subst ).

thf(func_def_571,type,
    sK429: ( subst > term > term ) > subst ).

thf(func_def_572,type,
    sK430: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_573,type,
    sK431: term > ( term > $o ) > term ).

thf(func_def_574,type,
    sK432: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_575,type,
    sK433: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_576,type,
    sK434: subst > term > subst > $o ).

thf(func_def_577,type,
    sK435: term > $o ).

thf(func_def_578,type,
    sK436: term ).

thf(func_def_579,type,
    sK437: ( subst > term > term ) > term ).

thf(func_def_580,type,
    sK438: ( subst > term > term ) > subst ).

thf(func_def_581,type,
    sK439: ( subst > term > term ) > subst ).

thf(func_def_582,type,
    sK440: ( subst > term > term ) > term ).

thf(func_def_583,type,
    sK441: ( term > $o ) > term ).

thf(func_def_584,type,
    sK442: ( term > $o ) > term ).

thf(func_def_585,type,
    sK443: ( subst > term > subst > $o ) > term ).

thf(func_def_586,type,
    sK444: ( subst > term > subst > $o ) > term ).

thf(func_def_587,type,
    sK445: subst > term > subst > $o ).

thf(func_def_588,type,
    sK446: term ).

thf(func_def_589,type,
    sK447: ( subst > term > term ) > term > subst ).

thf(func_def_590,type,
    sK448: ( subst > term > term ) > term > subst ).

thf(func_def_591,type,
    sK449: ( subst > term > term ) > term > term ).

thf(func_def_592,type,
    sK450: ( subst > term > term ) > term > subst ).

thf(func_def_593,type,
    sK451: ( subst > term > term ) > term > subst ).

thf(func_def_594,type,
    sK452: ( subst > term > term ) > term > term ).

thf(func_def_595,type,
    sK453: ( subst > term > term ) > term ).

thf(func_def_596,type,
    sK454: term > ( subst > term > subst > $o ) > term ).

thf(func_def_597,type,
    sK455: ( subst > term > subst > $o ) > term ).

thf(func_def_598,type,
    sK456: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_599,type,
    sK457: term > $o ).

thf(func_def_600,type,
    sK458: subst ).

thf(func_def_601,type,
    sK459: term > $o ).

thf(func_def_602,type,
    sK460: term ).

thf(func_def_603,type,
    sK461: term ).

thf(func_def_604,type,
    sK462: subst > d_subst ).

thf(func_def_605,type,
    sK463: ( term > $o ) > term ).

thf(func_def_606,type,
    sK464: ( term > $o ) > term ).

thf(func_def_607,type,
    sK465: term > $o ).

thf(func_def_608,type,
    sK466: term ).

thf(func_def_609,type,
    sK467: term ).

thf(func_def_610,type,
    sK468: subst ).

thf(func_def_611,type,
    sK469: subst ).

thf(func_def_612,type,
    sK470: subst ).

thf(func_def_613,type,
    sK471: subst ).

thf(func_def_614,type,
    sK472: subst ).

thf(func_def_615,type,
    sK473: term ).

thf(func_def_616,type,
    sK474: term ).

thf(func_def_617,type,
    sK475: term ).

thf(func_def_618,type,
    sK476: term ).

thf(func_def_619,type,
    sK477: term ).

thf(func_def_620,type,
    sK478: term ).

thf(func_def_621,type,
    sK479: ( subst > term > subst > $o ) > term ).

thf(func_def_622,type,
    sK480: ( subst > term > subst > $o ) > term ).

thf(func_def_623,type,
    sK481: term ).

thf(func_def_624,type,
    sK482: subst > term > subst > $o ).

thf(func_def_625,type,
    sK483: term ).

thf(func_def_626,type,
    sK484: term ).

thf(func_def_627,type,
    sK485: term > $o ).

thf(func_def_628,type,
    sK486: term > $o ).

thf(func_def_629,type,
    sK487: subst ).

thf(func_def_630,type,
    sK488: subst > ( term > $o ) > ( term > $o ) > term > term ).

thf(func_def_631,type,
    sK489: subst ).

thf(func_def_632,type,
    sK490: term ).

thf(func_def_633,type,
    sK491: subst > ( term > $o ) > term > term > $o ).

thf(func_def_634,type,
    sK492: term ).

thf(func_def_635,type,
    sK493: term > $o ).

thf(func_def_636,type,
    sK494: subst ).

thf(func_def_637,type,
    sK495: ( term > $o ) > term ).

thf(func_def_638,type,
    sK496: term ).

thf(func_def_639,type,
    sK497: term ).

thf(func_def_640,type,
    sK498: term ).

thf(func_def_641,type,
    sK499: term ).

thf(func_def_642,type,
    sK500: term ).

thf(func_def_643,type,
    sK501: term ).

thf(func_def_644,type,
    sK502: term ).

thf(func_def_645,type,
    sK503: term ).

thf(func_def_646,type,
    sK504: term ).

thf(func_def_647,type,
    sK505: term ).

thf(func_def_648,type,
    sK506: term ).

thf(func_def_649,type,
    sK507: term ).

thf(func_def_650,type,
    sK508: term ).

thf(func_def_651,type,
    sK509: subst ).

thf(func_def_652,type,
    sK510: term ).

thf(func_def_653,type,
    sK511: term > subst > term > term ).

thf(func_def_654,type,
    sK512: term ).

thf(func_def_655,type,
    sK513: term ).

thf(func_def_656,type,
    sK514: term ).

thf(func_def_657,type,
    sK515: term ).

thf(func_def_658,type,
    sK516: term ).

thf(func_def_659,type,
    sK517: term ).

thf(func_def_660,type,
    sK518: subst ).

thf(func_def_661,type,
    sK519: term > subst > term > term ).

thf(func_def_662,type,
    sK520: term ).

thf(func_def_663,type,
    sK521: term > $o ).

thf(func_def_664,type,
    sK522: term ).

thf(func_def_665,type,
    sK523: term > $o ).

thf(func_def_666,type,
    sK524: subst ).

thf(func_def_667,type,
    sK525: subst > ( term > $o ) > term > ( term > $o ) > term ).

thf(func_def_668,type,
    sK526: subst ).

thf(func_def_669,type,
    sK527: subst ).

thf(func_def_670,type,
    sK528: subst ).

thf(func_def_671,type,
    sK529: term ).

thf(func_def_672,type,
    sK530: term ).

thf(func_def_673,type,
    sK531: term > ( term > $o ) > subst > term > $o ).

thf(func_def_674,type,
    sK532: subst ).

thf(func_def_675,type,
    sK533: term > $o ).

thf(func_def_676,type,
    sK534: term ).

thf(func_def_677,type,
    sK535: ( term > $o ) > term ).

thf(func_def_678,type,
    sK536: ( subst > term > term ) > subst ).

thf(func_def_679,type,
    sK537: ( subst > term > term ) > subst ).

thf(func_def_680,type,
    sK538: ( subst > term > term ) > term ).

thf(func_def_681,type,
    sK539: term ).

thf(func_def_682,type,
    sK540: term ).

thf(func_def_683,type,
    sK541: subst > term > term ).

thf(func_def_684,type,
    sK542: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_685,type,
    sK543: subst > term > subst > $o ).

thf(func_def_686,type,
    sK544: ( term > $o ) > term ).

thf(func_def_687,type,
    sK545: subst ).

thf(func_def_688,type,
    sK546: term ).

thf(func_def_689,type,
    sK547: term ).

thf(func_def_690,type,
    sK548: subst ).

thf(func_def_691,type,
    sK549: term ).

thf(func_def_692,type,
    sK550: term > $o ).

thf(func_def_693,type,
    sK551: term ).

thf(func_def_694,type,
    sK552: term > $o ).

thf(func_def_695,type,
    sK553: subst ).

thf(func_def_696,type,
    sK554: term ).

thf(func_def_697,type,
    sK555: ( subst > term > term ) > subst ).

thf(func_def_698,type,
    sK556: ( subst > term > term ) > term ).

thf(func_def_699,type,
    sK557: term > subst > term > term ).

thf(func_def_700,type,
    sK558: term ).

thf(func_def_701,type,
    sK559: term ).

thf(func_def_702,type,
    sK560: subst ).

thf(func_def_703,type,
    sK561: term ).

thf(func_def_704,type,
    sK562: term ).

thf(func_def_705,type,
    sK563: term ).

thf(func_def_706,type,
    sK564: term ).

thf(func_def_707,type,
    sK565: term ).

thf(func_def_708,type,
    sK566: term ).

thf(func_def_709,type,
    sK567: term ).

thf(func_def_710,type,
    sK568: term ).

thf(func_def_711,type,
    sK569: subst > term > subst > $o ).

thf(func_def_712,type,
    sK570: ( term > $o ) > term ).

thf(func_def_713,type,
    sK571: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_714,type,
    sK572: subst > term > term ).

thf(func_def_715,type,
    sK573: subst > term > term ).

thf(func_def_716,type,
    sK574: subst ).

thf(func_def_717,type,
    sK575: term ).

thf(func_def_718,type,
    sK576: ( subst > term > term ) > subst ).

thf(func_def_719,type,
    sK577: ( subst > term > term ) > subst ).

thf(func_def_720,type,
    sK578: ( subst > term > term ) > term ).

thf(func_def_721,type,
    sK579: ( subst > term > term ) > term ).

thf(func_def_722,type,
    sK580: ( subst > term > term ) > subst ).

thf(func_def_723,type,
    sK581: ( subst > term > term ) > subst ).

thf(func_def_724,type,
    sK582: term ).

thf(func_def_725,type,
    sK583: ( subst > term > term ) > subst ).

thf(func_def_726,type,
    sK584: ( subst > term > term ) > term ).

thf(func_def_727,type,
    sK585: term > subst > term > term ).

thf(func_def_728,type,
    sK586: term ).

thf(func_def_729,type,
    sK587: term ).

thf(func_def_730,type,
    sK588: term ).

thf(func_def_731,type,
    sK589: term ).

thf(func_def_732,type,
    sK590: term > d_term ).

thf(func_def_734,type,
    sK592: subst > term > subst > $o ).

thf(func_def_735,type,
    sK593: ( subst > term > term ) > subst ).

thf(func_def_736,type,
    sK594: ( subst > term > term ) > term ).

thf(func_def_737,type,
    sK595: ( subst > term > term ) > subst ).

thf(func_def_738,type,
    sK596: ( subst > term > term ) > term ).

thf(func_def_739,type,
    sK597: ( subst > term > term ) > subst ).

thf(func_def_740,type,
    sK598: ( subst > term > term ) > term ).

thf(func_def_741,type,
    sK599: term ).

thf(func_def_742,type,
    sK600: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_743,type,
    sK601: ( subst > term > subst > $o ) > term > term ).

thf(func_def_744,type,
    sK602: ( subst > term > subst > $o ) > term > term ).

thf(func_def_745,type,
    sK603: ( subst > term > subst > $o ) > term > term ).

thf(func_def_747,type,
    ph604: 
      !>[X0: $tType] : X0 ).

thf(f4867,plain,
    $false,
    inference(avatar_sat_refutation,[status(thm)],[f2034,f3868,f3884,f3952,f4367,f4609,f4708,f4814,f4843,f4853,f4856,f4866]) ).

thf(f4866,plain,
    ( spl591_460
    | ~ spl591_462 ),
    inference(avatar_split_clause,[status(thm)],[f4865,f3882,f3874]) ).

thf(f3874,definition,
    ( spl591_460
  <=> ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
      = $true ) ),
    introduced(definition,[new_symbols(naming,[spl591_460])],[avatar_definition]) ).

thf(f3882,definition,
    ( spl591_462
  <=> ! [X1: subst > term > term] :
        ( ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ ( sK596 @ X1 ) @ ( sK593 @ X1 ) ) )
         != ( sub @ ( X1 @ ( sK595 @ X1 ) @ ( sK596 @ X1 ) ) @ ( sK593 @ X1 ) ) )
        | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[spl591_462])],[avatar_definition]) ).

thf(f4865,plain,
    ( ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
      = $true )
    | ~ spl591_462 ),
    inference(forward_demodulation,[status(thm)],[f4864,f4733]) ).

thf(f4733,plain,
    ! [X272: term] :
      ( ( d2term @ d_one )
      = X272 ),
    inference(forward_demodulation,[status(thm)],[f1036,f1210]) ).

thf(f1210,plain,
    ! [X38: d_term] : ( d_one = X38 ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f545,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ( sP58 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP58 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
      | ( ( ( sK459 @ sK460 )
          = $true )
        & ( $true
         != ( sK457 @ ( sub @ sK460 @ ( push @ sK461 @ sK458 ) ) ) ) ) )
    & ( ! [X5: term > $o,X6: subst,X7: term > $o,X8: term,X9: term] :
          ( ( $true
           != ( X7 @ X8 ) )
          | ( ( X5 @ ( sub @ X8 @ ( push @ X9 @ X6 ) ) )
            = $true ) )
      | ( pushprop_lem1 != $true ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X10: d_subst,X11: d_subst] :
        ( ( X10 = X11 )
        | ( ( d2subst @ X10 )
         != ( d2subst @ X11 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( sP56 = $true )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( sP56 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X12: subst] :
        ( ( d2subst @ ( sK462 @ X12 ) )
        = X12 )
    & ( ! [X14: term > $o,X15: term] :
          ( ( ( sP55 @ X14 )
            = $true )
          | ( ( ( X14 @ ( sK463 @ X14 ) )
              = $true )
            & ( ( X14 @ ( lam @ ( sK463 @ X14 ) ) )
             != $true ) )
          | ( ( X14 @ X15 )
            = $true )
          | ( ( $true
             != ( X14 @ ( sK464 @ X14 ) ) )
            & ( $true
              = ( var @ ( sK464 @ X14 ) ) ) ) )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( ( $true
         != ( sP55 @ sK465 ) )
        & ! [X20: term] :
            ( ( $true
             != ( sK465 @ X20 ) )
            | ( $true
              = ( sK465 @ ( lam @ X20 ) ) ) )
        & ( $true
         != ( sK465 @ sK466 ) )
        & ! [X21: term] :
            ( ( $true
              = ( sK465 @ X21 ) )
            | ( ( var @ X21 )
             != $true ) ) ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X22: term,X23: subst] :
          ( ( comp @ sh @ ( push @ X22 @ X23 ) )
          = X23 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ( sK468
       != ( comp @ sh @ ( push @ sK467 @ sK468 ) ) ) )
    & ( ( substmonoid_lthm = $true )
      | ( ! [X26: subst] :
            ( ( comp @ X26 @ id )
            = X26 )
        & ( ( sK469
           != ( comp @ id @ sK469 ) )
          | ( ( comp @ sK470 @ id )
           != sK470 ) )
        & ! [X29: subst] :
            ( ( comp @ id @ X29 )
            = X29 ) ) )
    & ( ( sK471
       != ( comp @ sK471 @ id ) )
      | ( ! [X31: subst] :
            ( ( comp @ id @ X31 )
            = X31 )
        & ! [X32: subst] :
            ( ( comp @ X32 @ id )
            = X32 ) )
      | ( ( comp @ id @ sK472 )
       != sK472 )
      | ( substmonoid_lthm != $true ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( sP51 = $true )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( sP51 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
      | ( ( ( sub @ sK473 @ sh )
          = ( sub @ sK474 @ sh ) )
        & ( sK474 != sK473 ) ) )
    & ( ! [X36: term,X37: term] :
          ( ( ( sub @ X36 @ sh )
           != ( sub @ X37 @ sh ) )
          | ( X36 = X37 ) )
      | ( shinj != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ! [X38: d_term] : ( d_one = X38 )
    & ( ! [X39: term,X40: term,X41: term,X42: term] :
          ( ( ( ap @ X39 @ X40 )
           != ( ap @ X42 @ X41 ) )
          | ( X39 = X42 ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ( ( ( ap @ sK478 @ sK477 )
          = ( ap @ sK475 @ sK476 ) )
        & ( sK475 != sK478 ) ) )
    & ( induction2lem_gthm = $true )
    & ( ( $true = sP43 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( $true != sP43 ) )
    & ( ! [X47: term,X48: subst > term > subst > $o] :
          ( ( ( $true
              = ( X48 @ id @ ( sK480 @ X48 ) @ id ) )
            & ( ( X48 @ id @ ( sK479 @ X48 ) @ id )
              = $true )
            & ( $true
             != ( X48 @ id @ ( ap @ ( sub @ ( sK480 @ X48 ) @ id ) @ ( sK479 @ X48 ) ) @ id ) ) )
          | ( $true
            = ( X48 @ id @ X47 @ id ) )
          | ( $true
            = ( sP39 @ X48 ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ( ! [X53: term,X54: term] :
            ( ( ( sK482 @ id @ X54 @ id )
             != $true )
            | ( ( sK482 @ id @ X53 @ id )
             != $true )
            | ( $true
              = ( sK482 @ id @ ( ap @ ( sub @ X54 @ id ) @ X53 ) @ id ) ) )
        & ( $true
         != ( sK482 @ id @ sK481 @ id ) )
        & ( $true
         != ( sP39 @ sK482 ) ) ) )
    & ( ( axvarid = $true )
      | ( ( sub @ sK483 @ id )
       != sK483 ) )
    & ( ! [X56: term] :
          ( ( sub @ X56 @ id )
          = X56 )
      | ( axvarid != $true ) )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ( ( sK486 @ one )
         != $true )
        & ( $true
          = ( sK485 @ sK484 ) )
        & ! [X61: term] :
            ( ( sK486 @ X61 )
            = ( sK485 @ ( sub @ X61 @ ( push @ sK484 @ sK487 ) ) ) )
        & ! [X62: subst,X63: term] :
            ( ( sub @ one @ ( push @ X63 @ X62 ) )
            = X63 ) ) )
    & ( ! [X64: term,X65: term > $o,X66: term > $o,X67: subst] :
          ( ( $true
            = ( X66 @ one ) )
          | ( ( X65 @ X64 )
           != $true )
          | ( ( X66 @ ( sK488 @ X67 @ X66 @ X65 @ X64 ) )
           != ( X65 @ ( sub @ ( sK488 @ X67 @ X66 @ X65 @ X64 ) @ ( push @ X64 @ X67 ) ) ) ) )
      | ( ( sub @ one @ ( push @ sK490 @ sK489 ) )
       != sK490 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ! [X71: term,X72: term > $o,X73: subst,X75: term] :
          ( ( X72 @ ( sub @ X75 @ ( push @ X71 @ X73 ) ) )
          = ( sK491 @ X73 @ X72 @ X71 @ X75 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ! [X79: term > $o] :
          ( ( sK493 @ ( sub @ ( sK495 @ X79 ) @ ( push @ sK492 @ sK494 ) ) )
         != ( X79 @ ( sK495 @ X79 ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X81: term,X82: term,X83: term,X84: term] :
          ( ( ( ap @ ( sub @ X83 @ id ) @ X81 )
           != ( ap @ ( sub @ X84 @ id ) @ X82 ) )
          | ( X81 = X82 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ( ( ( ap @ ( sub @ sK498 @ id ) @ sK496 )
          = ( ap @ ( sub @ sK499 @ id ) @ sK497 ) )
        & ( sK497 != sK496 ) ) )
    & ( axclos = $true )
    & ! [X89: d_term,X90: d_term] :
        ( ( X89 = X90 )
        | ( ( d2term @ X89 )
         != ( d2term @ X90 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP38 ) )
    & ( ( $true = sP38 )
      | ( hoasinduction_lem2 != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( ( sK501 != sK500 )
        & ( ( ap @ sK500 @ sK502 )
          = ( ap @ sK501 @ sK503 ) ) )
      | ! [X95: term,X96: term,X97: term,X98: term] :
          ( ( X96 = X98 )
          | ( ( ap @ ( sub @ X98 @ id ) @ X97 )
           != ( ap @ ( sub @ X96 @ id ) @ X95 ) ) )
      | ( ( sub @ sK504 @ id )
       != sK504 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( ! [X100: term,X101: term,X102: term,X103: term] :
            ( ( X100 = X101 )
            | ( ( ap @ X101 @ X103 )
             != ( ap @ X100 @ X102 ) ) )
        & ( sK506 != sK508 )
        & ( ( ap @ ( sub @ sK506 @ id ) @ sK505 )
          = ( ap @ ( sub @ sK508 @ id ) @ sK507 ) )
        & ! [X108: term] :
            ( ( sub @ X108 @ id )
            = X108 ) ) )
    & ( ( axidl = $true )
      | ( sK509
       != ( comp @ id @ sK509 ) ) )
    & ( ! [X110: subst] :
          ( ( comp @ id @ X110 )
          = X110 )
      | ( axidl != $true ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ! [X112: subst > term > term] :
          ( ( X112 @ sh @ one )
         != ( sub @ sK510 @ ( push @ one @ sh ) ) ) )
    & ( ! [X113: term] :
          ( ( sK511 @ X113 @ sh @ one )
          = ( sub @ X113 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP36 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP36 ) )
    & ( ! [X115: term,X116: term,X117: term,X118: term] :
          ( ( ( ap @ ( sub @ X117 @ id ) @ X116 )
           != ( ap @ ( sub @ X115 @ id ) @ X118 ) )
          | ( X115 = X117 ) )
      | ( hoasapinj1 != $true ) )
    & ( ( hoasapinj1 = $true )
      | ( ( ( ap @ ( sub @ sK514 @ id ) @ sK513 )
          = ( ap @ ( sub @ sK512 @ id ) @ sK515 ) )
        & ( sK514 != sK512 ) ) )
    & ( ( termmset_lthm = $true )
      | ( ( sK516
         != ( sub @ sK516 @ id ) )
        & ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 ) ) )
    & ( ! [X125: term] :
          ( ( sub @ X125 @ id )
          = X125 )
      | ( sK517
       != ( sub @ sK517 @ id ) )
      | ( termmset_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
      | ( ( comp @ sK518 @ id )
       != sK518 ) )
    & ( ! [X128: subst] :
          ( ( comp @ X128 @ id )
          = X128 )
      | ( axidr != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X129: term] :
          ( ( sub @ X129 @ ( push @ one @ sh ) )
          = ( sK519 @ X129 @ sh @ one ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ! [X132: subst > term > term] :
          ( ( X132 @ sh @ one )
         != ( sub @ sK520 @ ( push @ one @ sh ) ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ( ( $true
          = ( sK521 @ sK522 ) )
        & ! [X137: term] :
            ( ( sK523 @ X137 )
            = ( sK521 @ ( sub @ X137 @ ( push @ sK522 @ sK524 ) ) ) )
        & ( ( sK523 @ one )
         != $true ) ) )
    & ( ! [X138: term > $o,X139: term,X140: term > $o,X141: subst] :
          ( ( $true
           != ( X138 @ X139 ) )
          | ( ( X138 @ ( sub @ ( sK525 @ X141 @ X140 @ X139 @ X138 ) @ ( push @ X139 @ X141 ) ) )
           != ( X140 @ ( sK525 @ X141 @ X140 @ X139 @ X138 ) ) )
          | ( $true
            = ( X140 @ one ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( sP35 != $true ) )
    & ( ( sP35 = $true )
      | ( hoasinduction_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP26 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( $true != sP26 ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
      | ( ( comp @ id @ sK526 )
       != sK526 )
      | ( sK527
       != ( comp @ sK527 @ id ) ) )
    & ( ( ! [X145: subst] :
            ( ( comp @ id @ X145 )
            = X145 )
        & ! [X146: subst] :
            ( ( comp @ X146 @ id )
            = X146 ) )
      | ( substmonoid != $true ) )
    & ( ! [X147: subst] :
          ( ( push @ ( sub @ one @ X147 ) @ ( comp @ sh @ X147 ) )
          = X147 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ( ( push @ ( sub @ one @ sK528 ) @ ( comp @ sh @ sK528 ) )
       != sK528 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
      | ( ( ( lam @ sK529 )
          = ( lam @ sK530 ) )
        & ( sK529 != sK530 ) ) )
    & ( ! [X151: term,X152: term] :
          ( ( ( lam @ X152 )
           != ( lam @ X151 ) )
          | ( X151 = X152 ) )
      | ( laminj != $true ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X153: subst,X154: term > $o,X155: term,X157: term] :
          ( ( X154 @ ( sub @ X157 @ ( push @ X155 @ X153 ) ) )
          = ( sK531 @ X155 @ X154 @ X153 @ X157 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ! [X161: term > $o] :
          ( ( X161 @ ( sK535 @ X161 ) )
         != ( sK533 @ ( sub @ ( sK535 @ X161 ) @ ( push @ sK534 @ sK532 ) ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( $true != sP22 ) )
    & ( ! [X163: term,X164: term,X165: subst > term > term] :
          ( ( ( X165 @ ( comp @ ( sK536 @ X165 ) @ ( sK537 @ X165 ) ) @ ( sub @ ( sK538 @ X165 ) @ ( sK537 @ X165 ) ) )
           != ( sub @ ( X165 @ ( sK536 @ X165 ) @ ( sK538 @ X165 ) ) @ ( sK537 @ X165 ) ) )
          | ( ( lam @ ( X165 @ sh @ one ) )
           != ( ap @ ( sub @ X164 @ id ) @ X163 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ( ! [X172: subst,X173: subst,X174: term] :
            ( ( sub @ ( sK541 @ X172 @ X174 ) @ X173 )
            = ( sK541 @ ( comp @ X172 @ X173 ) @ ( sub @ X174 @ X173 ) ) )
        & ( ( ap @ ( sub @ sK540 @ id ) @ sK539 )
          = ( lam @ ( sK541 @ sh @ one ) ) ) ) )
    & ( axmap = $true )
    & ( ! [X175: subst > term > subst > $o,X177: term] :
          ( ( X175 @ id @ X177 @ id )
          = ( sK542 @ X175 @ X177 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ! [X179: term > $o] :
          ( ( X179 @ ( sK544 @ X179 ) )
         != ( sK543 @ id @ ( sK544 @ X179 ) @ id ) ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ( ( comp @ sh @ ( push @ sK546 @ sK545 ) )
       != sK545 )
      | ( ( sub @ one @ ( push @ sK547 @ sK548 ) )
       != sK547 )
      | ! [X185: term,X186: term > $o,X187: term,X188: term > $o,X189: subst] :
          ( ( $true
            = ( X188 @ ( sub @ X185 @ ( push @ X187 @ X189 ) ) ) )
          | ( $true
           != ( X186 @ X185 ) ) )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X190: subst,X191: term] :
            ( ( comp @ sh @ ( push @ X191 @ X190 ) )
            = X190 )
        & ! [X192: term,X193: subst] :
            ( ( sub @ one @ ( push @ X192 @ X193 ) )
            = X192 )
        & ( $true
         != ( sK552 @ ( sub @ sK549 @ ( push @ sK551 @ sK553 ) ) ) )
        & ( $true
          = ( sK550 @ sK549 ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP20 ) )
    & ( ( $true = sP20 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( $true != sP18 ) )
    & ( ( $true = sP18 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP15 )
      | ( hoasinduction != $true ) )
    & ( ( sP12 = $true )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( sP12 != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ! [X200: subst > term > term] :
          ( ( sub @ sK554 @ ( push @ ( sK556 @ X200 ) @ ( sK555 @ X200 ) ) )
         != ( X200 @ ( sK555 @ X200 ) @ ( sK556 @ X200 ) ) ) )
    & ( ! [X203: term,X205: subst,X206: term] :
          ( ( sub @ X203 @ ( push @ X206 @ X205 ) )
          = ( sK557 @ X203 @ X205 @ X206 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
      | ( $true != sP11 ) )
    & ( ( $true = sP11 )
      | ( induction2lem != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( $true != sP9 ) )
    & ( ( $true = sP9 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP7 ) )
    & ( ( $true = sP7 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( $true = sP5 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( $true != sP5 ) )
    & ( ( $true = sP0 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP0 ) )
    & ( ( termmset = $true )
      | ( ( sub @ sK558 @ id )
       != sK558 ) )
    & ( ! [X208: term] :
          ( ( sub @ X208 @ id )
          = X208 )
      | ( termmset != $true ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X209: term,X210: subst] :
          ( ( sub @ one @ ( push @ X209 @ X210 ) )
          = X209 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ( sK559
       != ( sub @ one @ ( push @ sK559 @ sK560 ) ) ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
      | ( ( ( ap @ ( sub @ sK563 @ id ) @ sK564 )
          = ( ap @ ( sub @ sK561 @ id ) @ sK562 ) )
        & ( sK562 != sK564 )
        & ! [X217: term,X218: term,X219: term,X220: term] :
            ( ( ( ap @ X218 @ X217 )
             != ( ap @ X219 @ X220 ) )
            | ( X217 = X220 ) ) ) )
    & ( ! [X221: term,X222: term,X223: term,X224: term] :
          ( ( ( ap @ ( sub @ X223 @ id ) @ X224 )
           != ( ap @ ( sub @ X221 @ id ) @ X222 ) )
          | ( X222 = X224 ) )
      | ( ( ( ap @ sK567 @ sK568 )
          = ( ap @ sK566 @ sK565 ) )
        & ( sK565 != sK568 ) )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ! [X230: term > $o] :
          ( ( X230 @ ( sK570 @ X230 ) )
         != ( sK569 @ id @ ( sK570 @ X230 ) @ id ) ) )
    & ( ! [X232: subst > term > subst > $o,X234: term] :
          ( ( X232 @ id @ X234 @ id )
          = ( sK571 @ X232 @ X234 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoaslaminj = $true )
      | ( ! [X239: subst,X240: subst,X241: term] :
            ( ( sub @ ( sK573 @ X240 @ X241 ) @ X239 )
            = ( sK573 @ ( comp @ X240 @ X239 ) @ ( sub @ X241 @ X239 ) ) )
        & ! [X242: term,X243: subst,X244: subst] :
            ( ( sK572 @ ( comp @ X243 @ X244 ) @ ( sub @ X242 @ X244 ) )
            = ( sub @ ( sK572 @ X243 @ X242 ) @ X244 ) )
        & ( ( sK573 @ sK574 @ sK575 )
         != ( sK572 @ sK574 @ sK575 ) )
        & ( ( lam @ ( sK572 @ sh @ one ) )
          = ( lam @ ( sK573 @ sh @ one ) ) ) ) )
    & ( ! [X245: subst > term > term,X246: subst > term > term,X247: subst,X248: term] :
          ( ( ( sub @ ( X246 @ ( sK577 @ X246 ) @ ( sK578 @ X246 ) ) @ ( sK576 @ X246 ) )
           != ( X246 @ ( comp @ ( sK577 @ X246 ) @ ( sK576 @ X246 ) ) @ ( sub @ ( sK578 @ X246 ) @ ( sK576 @ X246 ) ) ) )
          | ( ( sub @ ( X245 @ ( sK580 @ X245 ) @ ( sK579 @ X245 ) ) @ ( sK581 @ X245 ) )
           != ( X245 @ ( comp @ ( sK580 @ X245 ) @ ( sK581 @ X245 ) ) @ ( sub @ ( sK579 @ X245 ) @ ( sK581 @ X245 ) ) ) )
          | ( ( X246 @ X247 @ X248 )
            = ( X245 @ X247 @ X248 ) )
          | ( ( lam @ ( X246 @ sh @ one ) )
           != ( lam @ ( X245 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ! [X256: subst > term > term] :
          ( ( sub @ sK582 @ ( push @ ( sK584 @ X256 ) @ ( sK583 @ X256 ) ) )
         != ( X256 @ ( sK583 @ X256 ) @ ( sK584 @ X256 ) ) ) )
    & ( ! [X259: term,X261: subst,X262: term] :
          ( ( sub @ X259 @ ( push @ X262 @ X261 ) )
          = ( sK585 @ X259 @ X261 @ X262 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
      | ( ( sK587 != sK586 )
        & ( ( ap @ sK589 @ sK587 )
          = ( ap @ sK588 @ sK586 ) ) ) )
    & ( ! [X267: term,X268: term,X269: term,X270: term] :
          ( ( X267 = X268 )
          | ( ( ap @ X270 @ X268 )
           != ( ap @ X269 @ X267 ) ) )
      | ( apinj2 != $true ) )
    & ! [X271: d_subst] : ( d_id = X271 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X272: term] :
        ( ( d2term @ ( sK590 @ X272 ) )
        = X272 ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK457,sK458,sK459,sK460,sK461,sK462,sK463,sK464,sK465,sK466,sK467,sK468,sK469,sK470,sK471,sK472,sK473,sK474,sK475,sK476,sK477,sK478,sK479,sK480,sK481,sK482,sK483,sK484,sK485,sK486,sK487,sK488,sK489,sK490,sK491,sK492,sK493,sK494,sK495,sK496,sK497,sK498,sK499,sK500,sK501,sK502,sK503,sK504,sK505,sK506,sK507,sK508,sK509,sK510,sK511,sK512,sK513,sK514,sK515,sK516,sK517,sK518,sK519,sK520,sK521,sK522,sK523,sK524,sK525,sK526,sK527,sK528,sK529,sK530,sK531,sK532,sK533,sK534,sK535,sK536,sK537,sK538,sK539,sK540,sK541,sK542,sK543,sK544,sK545,sK546,sK547,sK548,sK549,sK550,sK551,sK552,sK553,sK554,sK555,sK556,sK557,sK558,sK559,sK560,sK561,sK562,sK563,sK564,sK565,sK566,sK567,sK568,sK569,sK570,sK571,sK572,sK573,sK574,sK575,sK576,sK577,sK578,sK579,sK580,sK581,sK582,sK583,sK584,sK585,sK586,sK587,sK588,sK589,sK590])],[f475,f544,f543,f542,f541,f540,f539,f538,f537,f536,f535,f534,f533,f532,f531,f530,f529,f528,f527,f526,f525,f524,f523,f522,f521,f520,f519,f518,f517,f516,f515,f514,f513,f512,f511,f510,f509,f508,f507,f506,f505,f504,f503,f502,f501,f500,f499,f498,f497,f496,f495,f494,f493,f492,f491,f490,f489,f488,f487,f486,f485,f484,f483,f482,f481,f480,f479,f478,f477,f476]) ).

thf(f476,plain,
    ( ? [X0: term > $o,X1: subst,X2: term > $o,X3: term,X4: term] :
        ( ( $true
          = ( X2 @ X3 ) )
        & ( $true
         != ( X0 @ ( sub @ X3 @ ( push @ X4 @ X1 ) ) ) ) )
   => ( ( ( sK459 @ sK460 )
        = $true )
      & ( $true
       != ( sK457 @ ( sub @ sK460 @ ( push @ sK461 @ sK458 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f477,plain,
    ! [X12: subst] :
      ( ? [X13: d_subst] :
          ( ( d2subst @ X13 )
          = X12 )
     => ( ( d2subst @ ( sK462 @ X12 ) )
        = X12 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f478,plain,
    ! [X14: term > $o] :
      ( ? [X16: term] :
          ( ( $true
            = ( X14 @ X16 ) )
          & ( $true
           != ( X14 @ ( lam @ X16 ) ) ) )
     => ( ( ( X14 @ ( sK463 @ X14 ) )
          = $true )
        & ( ( X14 @ ( lam @ ( sK463 @ X14 ) ) )
         != $true ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f479,plain,
    ! [X14: term > $o] :
      ( ? [X17: term] :
          ( ( $true
           != ( X14 @ X17 ) )
          & ( $true
            = ( var @ X17 ) ) )
     => ( ( $true
         != ( X14 @ ( sK464 @ X14 ) ) )
        & ( $true
          = ( var @ ( sK464 @ X14 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f480,plain,
    ( ? [X18: term > $o,X19: term] :
        ( ( $true
         != ( sP55 @ X18 ) )
        & ! [X20: term] :
            ( ( $true
             != ( X18 @ X20 ) )
            | ( $true
              = ( X18 @ ( lam @ X20 ) ) ) )
        & ( ( X18 @ X19 )
         != $true )
        & ! [X21: term] :
            ( ( $true
              = ( X18 @ X21 ) )
            | ( ( var @ X21 )
             != $true ) ) )
   => ( ( $true
       != ( sP55 @ sK465 ) )
      & ! [X20: term] :
          ( ( $true
           != ( sK465 @ X20 ) )
          | ( $true
            = ( sK465 @ ( lam @ X20 ) ) ) )
      & ( $true
       != ( sK465 @ sK466 ) )
      & ! [X21: term] :
          ( ( $true
            = ( sK465 @ X21 ) )
          | ( ( var @ X21 )
           != $true ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f481,plain,
    ( ? [X24: term,X25: subst] :
        ( ( comp @ sh @ ( push @ X24 @ X25 ) )
       != X25 )
   => ( sK468
     != ( comp @ sh @ ( push @ sK467 @ sK468 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f482,plain,
    ( ? [X27: subst] :
        ( ( comp @ id @ X27 )
       != X27 )
   => ( sK469
     != ( comp @ id @ sK469 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f483,plain,
    ( ? [X28: subst] :
        ( ( comp @ X28 @ id )
       != X28 )
   => ( ( comp @ sK470 @ id )
     != sK470 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f484,plain,
    ( ? [X30: subst] :
        ( ( comp @ X30 @ id )
       != X30 )
   => ( sK471
     != ( comp @ sK471 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f485,plain,
    ( ? [X33: subst] :
        ( ( comp @ id @ X33 )
       != X33 )
   => ( ( comp @ id @ sK472 )
     != sK472 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f486,plain,
    ( ? [X34: term,X35: term] :
        ( ( ( sub @ X35 @ sh )
          = ( sub @ X34 @ sh ) )
        & ( X34 != X35 ) )
   => ( ( ( sub @ sK473 @ sh )
        = ( sub @ sK474 @ sh ) )
      & ( sK474 != sK473 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f487,plain,
    ( ? [X43: term,X44: term,X45: term,X46: term] :
        ( ( ( ap @ X43 @ X44 )
          = ( ap @ X46 @ X45 ) )
        & ( X43 != X46 ) )
   => ( ( ( ap @ sK478 @ sK477 )
        = ( ap @ sK475 @ sK476 ) )
      & ( sK475 != sK478 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f488,plain,
    ! [X48: subst > term > subst > $o] :
      ( ? [X49: term,X50: term] :
          ( ( ( X48 @ id @ X50 @ id )
            = $true )
          & ( $true
            = ( X48 @ id @ X49 @ id ) )
          & ( $true
           != ( X48 @ id @ ( ap @ ( sub @ X50 @ id ) @ X49 ) @ id ) ) )
     => ( ( $true
          = ( X48 @ id @ ( sK480 @ X48 ) @ id ) )
        & ( ( X48 @ id @ ( sK479 @ X48 ) @ id )
          = $true )
        & ( $true
         != ( X48 @ id @ ( ap @ ( sub @ ( sK480 @ X48 ) @ id ) @ ( sK479 @ X48 ) ) @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f489,plain,
    ( ? [X51: term,X52: subst > term > subst > $o] :
        ( ! [X53: term,X54: term] :
            ( ( $true
             != ( X52 @ id @ X54 @ id ) )
            | ( $true
             != ( X52 @ id @ X53 @ id ) )
            | ( $true
              = ( X52 @ id @ ( ap @ ( sub @ X54 @ id ) @ X53 ) @ id ) ) )
        & ( $true
         != ( X52 @ id @ X51 @ id ) )
        & ( $true
         != ( sP39 @ X52 ) ) )
   => ( ! [X54: term,X53: term] :
          ( ( ( sK482 @ id @ X54 @ id )
           != $true )
          | ( ( sK482 @ id @ X53 @ id )
           != $true )
          | ( $true
            = ( sK482 @ id @ ( ap @ ( sub @ X54 @ id ) @ X53 ) @ id ) ) )
      & ( $true
       != ( sK482 @ id @ sK481 @ id ) )
      & ( $true
       != ( sP39 @ sK482 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f490,plain,
    ( ? [X55: term] :
        ( ( sub @ X55 @ id )
       != X55 )
   => ( ( sub @ sK483 @ id )
     != sK483 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f491,plain,
    ( ? [X57: term,X58: term > $o,X59: term > $o,X60: subst] :
        ( ( $true
         != ( X59 @ one ) )
        & ( ( X58 @ X57 )
          = $true )
        & ! [X61: term] :
            ( ( X59 @ X61 )
            = ( X58 @ ( sub @ X61 @ ( push @ X57 @ X60 ) ) ) ) )
   => ( ( ( sK486 @ one )
       != $true )
      & ( $true
        = ( sK485 @ sK484 ) )
      & ! [X61: term] :
          ( ( sK486 @ X61 )
          = ( sK485 @ ( sub @ X61 @ ( push @ sK484 @ sK487 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f492,plain,
    ! [X64: term,X65: term > $o,X66: term > $o,X67: subst] :
      ( ? [X68: term] :
          ( ( X66 @ X68 )
         != ( X65 @ ( sub @ X68 @ ( push @ X64 @ X67 ) ) ) )
     => ( ( X66 @ ( sK488 @ X67 @ X66 @ X65 @ X64 ) )
       != ( X65 @ ( sub @ ( sK488 @ X67 @ X66 @ X65 @ X64 ) @ ( push @ X64 @ X67 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f493,plain,
    ( ? [X69: subst,X70: term] :
        ( ( sub @ one @ ( push @ X70 @ X69 ) )
       != X70 )
   => ( ( sub @ one @ ( push @ sK490 @ sK489 ) )
     != sK490 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f494,plain,
    ! [X71: term,X72: term > $o,X73: subst] :
      ( ? [X74: term > $o] :
        ! [X75: term] :
          ( ( X72 @ ( sub @ X75 @ ( push @ X71 @ X73 ) ) )
          = ( X74 @ X75 ) )
     => ! [X75: term] :
          ( ( X72 @ ( sub @ X75 @ ( push @ X71 @ X73 ) ) )
          = ( sK491 @ X73 @ X72 @ X71 @ X75 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f495,plain,
    ( ? [X76: term,X77: term > $o,X78: subst] :
      ! [X79: term > $o] :
      ? [X80: term] :
        ( ( X77 @ ( sub @ X80 @ ( push @ X76 @ X78 ) ) )
       != ( X79 @ X80 ) )
   => ! [X79: term > $o] :
      ? [X80: term] :
        ( ( X79 @ X80 )
       != ( sK493 @ ( sub @ X80 @ ( push @ sK492 @ sK494 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f496,plain,
    ! [X79: term > $o] :
      ( ? [X80: term] :
          ( ( X79 @ X80 )
         != ( sK493 @ ( sub @ X80 @ ( push @ sK492 @ sK494 ) ) ) )
     => ( ( sK493 @ ( sub @ ( sK495 @ X79 ) @ ( push @ sK492 @ sK494 ) ) )
       != ( X79 @ ( sK495 @ X79 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f497,plain,
    ( ? [X85: term,X86: term,X87: term,X88: term] :
        ( ( ( ap @ ( sub @ X88 @ id ) @ X86 )
          = ( ap @ ( sub @ X87 @ id ) @ X85 ) )
        & ( X85 != X86 ) )
   => ( ( ( ap @ ( sub @ sK498 @ id ) @ sK496 )
        = ( ap @ ( sub @ sK499 @ id ) @ sK497 ) )
      & ( sK497 != sK496 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f498,plain,
    ( ? [X91: term,X92: term,X93: term,X94: term] :
        ( ( X91 != X92 )
        & ( ( ap @ X91 @ X93 )
          = ( ap @ X92 @ X94 ) ) )
   => ( ( sK501 != sK500 )
      & ( ( ap @ sK500 @ sK502 )
        = ( ap @ sK501 @ sK503 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f499,plain,
    ( ? [X99: term] :
        ( ( sub @ X99 @ id )
       != X99 )
   => ( ( sub @ sK504 @ id )
     != sK504 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f500,plain,
    ( ? [X104: term,X105: term,X106: term,X107: term] :
        ( ( X105 != X107 )
        & ( ( ap @ ( sub @ X105 @ id ) @ X104 )
          = ( ap @ ( sub @ X107 @ id ) @ X106 ) ) )
   => ( ( sK506 != sK508 )
      & ( ( ap @ ( sub @ sK506 @ id ) @ sK505 )
        = ( ap @ ( sub @ sK508 @ id ) @ sK507 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f501,plain,
    ( ? [X109: subst] :
        ( ( comp @ id @ X109 )
       != X109 )
   => ( sK509
     != ( comp @ id @ sK509 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f502,plain,
    ( ? [X111: term] :
      ! [X112: subst > term > term] :
        ( ( sub @ X111 @ ( push @ one @ sh ) )
       != ( X112 @ sh @ one ) )
   => ! [X112: subst > term > term] :
        ( ( X112 @ sh @ one )
       != ( sub @ sK510 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f503,plain,
    ! [X113: term] :
      ( ? [X114: subst > term > term] :
          ( ( sub @ X113 @ ( push @ one @ sh ) )
          = ( X114 @ sh @ one ) )
     => ( ( sK511 @ X113 @ sh @ one )
        = ( sub @ X113 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f504,plain,
    ( ? [X119: term,X120: term,X121: term,X122: term] :
        ( ( ( ap @ ( sub @ X121 @ id ) @ X120 )
          = ( ap @ ( sub @ X119 @ id ) @ X122 ) )
        & ( X119 != X121 ) )
   => ( ( ( ap @ ( sub @ sK514 @ id ) @ sK513 )
        = ( ap @ ( sub @ sK512 @ id ) @ sK515 ) )
      & ( sK514 != sK512 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f505,plain,
    ( ? [X123: term] :
        ( ( sub @ X123 @ id )
       != X123 )
   => ( sK516
     != ( sub @ sK516 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f506,plain,
    ( ? [X126: term] :
        ( ( sub @ X126 @ id )
       != X126 )
   => ( sK517
     != ( sub @ sK517 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f507,plain,
    ( ? [X127: subst] :
        ( ( comp @ X127 @ id )
       != X127 )
   => ( ( comp @ sK518 @ id )
     != sK518 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f508,plain,
    ! [X129: term] :
      ( ? [X130: subst > term > term] :
          ( ( sub @ X129 @ ( push @ one @ sh ) )
          = ( X130 @ sh @ one ) )
     => ( ( sub @ X129 @ ( push @ one @ sh ) )
        = ( sK519 @ X129 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f509,plain,
    ( ? [X131: term] :
      ! [X132: subst > term > term] :
        ( ( X132 @ sh @ one )
       != ( sub @ X131 @ ( push @ one @ sh ) ) )
   => ! [X132: subst > term > term] :
        ( ( X132 @ sh @ one )
       != ( sub @ sK520 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f510,plain,
    ( ? [X133: term > $o,X134: term,X135: term > $o,X136: subst] :
        ( ( $true
          = ( X133 @ X134 ) )
        & ! [X137: term] :
            ( ( X135 @ X137 )
            = ( X133 @ ( sub @ X137 @ ( push @ X134 @ X136 ) ) ) )
        & ( $true
         != ( X135 @ one ) ) )
   => ( ( $true
        = ( sK521 @ sK522 ) )
      & ! [X137: term] :
          ( ( sK523 @ X137 )
          = ( sK521 @ ( sub @ X137 @ ( push @ sK522 @ sK524 ) ) ) )
      & ( ( sK523 @ one )
       != $true ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f511,plain,
    ! [X138: term > $o,X139: term,X140: term > $o,X141: subst] :
      ( ? [X142: term] :
          ( ( X138 @ ( sub @ X142 @ ( push @ X139 @ X141 ) ) )
         != ( X140 @ X142 ) )
     => ( ( X138 @ ( sub @ ( sK525 @ X141 @ X140 @ X139 @ X138 ) @ ( push @ X139 @ X141 ) ) )
       != ( X140 @ ( sK525 @ X141 @ X140 @ X139 @ X138 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f512,plain,
    ( ? [X143: subst] :
        ( ( comp @ id @ X143 )
       != X143 )
   => ( ( comp @ id @ sK526 )
     != sK526 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f513,plain,
    ( ? [X144: subst] :
        ( ( comp @ X144 @ id )
       != X144 )
   => ( sK527
     != ( comp @ sK527 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f514,plain,
    ( ? [X148: subst] :
        ( ( push @ ( sub @ one @ X148 ) @ ( comp @ sh @ X148 ) )
       != X148 )
   => ( ( push @ ( sub @ one @ sK528 ) @ ( comp @ sh @ sK528 ) )
     != sK528 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f515,plain,
    ( ? [X149: term,X150: term] :
        ( ( ( lam @ X150 )
          = ( lam @ X149 ) )
        & ( X149 != X150 ) )
   => ( ( ( lam @ sK529 )
        = ( lam @ sK530 ) )
      & ( sK529 != sK530 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f516,plain,
    ! [X153: subst,X154: term > $o,X155: term] :
      ( ? [X156: term > $o] :
        ! [X157: term] :
          ( ( X154 @ ( sub @ X157 @ ( push @ X155 @ X153 ) ) )
          = ( X156 @ X157 ) )
     => ! [X157: term] :
          ( ( X154 @ ( sub @ X157 @ ( push @ X155 @ X153 ) ) )
          = ( sK531 @ X155 @ X154 @ X153 @ X157 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f517,plain,
    ( ? [X158: subst,X159: term > $o,X160: term] :
      ! [X161: term > $o] :
      ? [X162: term] :
        ( ( X159 @ ( sub @ X162 @ ( push @ X160 @ X158 ) ) )
       != ( X161 @ X162 ) )
   => ! [X161: term > $o] :
      ? [X162: term] :
        ( ( X161 @ X162 )
       != ( sK533 @ ( sub @ X162 @ ( push @ sK534 @ sK532 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f518,plain,
    ! [X161: term > $o] :
      ( ? [X162: term] :
          ( ( X161 @ X162 )
         != ( sK533 @ ( sub @ X162 @ ( push @ sK534 @ sK532 ) ) ) )
     => ( ( X161 @ ( sK535 @ X161 ) )
       != ( sK533 @ ( sub @ ( sK535 @ X161 ) @ ( push @ sK534 @ sK532 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f519,plain,
    ! [X165: subst > term > term] :
      ( ? [X166: subst,X167: subst,X168: term] :
          ( ( X165 @ ( comp @ X166 @ X167 ) @ ( sub @ X168 @ X167 ) )
         != ( sub @ ( X165 @ X166 @ X168 ) @ X167 ) )
     => ( ( X165 @ ( comp @ ( sK536 @ X165 ) @ ( sK537 @ X165 ) ) @ ( sub @ ( sK538 @ X165 ) @ ( sK537 @ X165 ) ) )
       != ( sub @ ( X165 @ ( sK536 @ X165 ) @ ( sK538 @ X165 ) ) @ ( sK537 @ X165 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f520,plain,
    ( ? [X169: term,X170: term,X171: subst > term > term] :
        ( ! [X172: subst,X173: subst,X174: term] :
            ( ( sub @ ( X171 @ X172 @ X174 ) @ X173 )
            = ( X171 @ ( comp @ X172 @ X173 ) @ ( sub @ X174 @ X173 ) ) )
        & ( ( ap @ ( sub @ X170 @ id ) @ X169 )
          = ( lam @ ( X171 @ sh @ one ) ) ) )
   => ( ! [X174: term,X173: subst,X172: subst] :
          ( ( sub @ ( sK541 @ X172 @ X174 ) @ X173 )
          = ( sK541 @ ( comp @ X172 @ X173 ) @ ( sub @ X174 @ X173 ) ) )
      & ( ( ap @ ( sub @ sK540 @ id ) @ sK539 )
        = ( lam @ ( sK541 @ sh @ one ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f521,plain,
    ! [X175: subst > term > subst > $o] :
      ( ? [X176: term > $o] :
        ! [X177: term] :
          ( ( X175 @ id @ X177 @ id )
          = ( X176 @ X177 ) )
     => ! [X177: term] :
          ( ( X175 @ id @ X177 @ id )
          = ( sK542 @ X175 @ X177 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f522,plain,
    ( ? [X178: subst > term > subst > $o] :
      ! [X179: term > $o] :
      ? [X180: term] :
        ( ( X179 @ X180 )
       != ( X178 @ id @ X180 @ id ) )
   => ! [X179: term > $o] :
      ? [X180: term] :
        ( ( X179 @ X180 )
       != ( sK543 @ id @ X180 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f523,plain,
    ! [X179: term > $o] :
      ( ? [X180: term] :
          ( ( X179 @ X180 )
         != ( sK543 @ id @ X180 @ id ) )
     => ( ( X179 @ ( sK544 @ X179 ) )
       != ( sK543 @ id @ ( sK544 @ X179 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f524,plain,
    ( ? [X181: subst,X182: term] :
        ( ( comp @ sh @ ( push @ X182 @ X181 ) )
       != X181 )
   => ( ( comp @ sh @ ( push @ sK546 @ sK545 ) )
     != sK545 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f525,plain,
    ( ? [X183: term,X184: subst] :
        ( ( sub @ one @ ( push @ X183 @ X184 ) )
       != X183 )
   => ( ( sub @ one @ ( push @ sK547 @ sK548 ) )
     != sK547 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f526,plain,
    ( ? [X194: term,X195: term > $o,X196: term,X197: term > $o,X198: subst] :
        ( ( $true
         != ( X197 @ ( sub @ X194 @ ( push @ X196 @ X198 ) ) ) )
        & ( $true
          = ( X195 @ X194 ) ) )
   => ( ( $true
       != ( sK552 @ ( sub @ sK549 @ ( push @ sK551 @ sK553 ) ) ) )
      & ( $true
        = ( sK550 @ sK549 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f527,plain,
    ( ? [X199: term] :
      ! [X200: subst > term > term] :
      ? [X201: subst,X202: term] :
        ( ( X200 @ X201 @ X202 )
       != ( sub @ X199 @ ( push @ X202 @ X201 ) ) )
   => ! [X200: subst > term > term] :
      ? [X202: term,X201: subst] :
        ( ( sub @ sK554 @ ( push @ X202 @ X201 ) )
       != ( X200 @ X201 @ X202 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f528,plain,
    ! [X200: subst > term > term] :
      ( ? [X202: term,X201: subst] :
          ( ( sub @ sK554 @ ( push @ X202 @ X201 ) )
         != ( X200 @ X201 @ X202 ) )
     => ( ( sub @ sK554 @ ( push @ ( sK556 @ X200 ) @ ( sK555 @ X200 ) ) )
       != ( X200 @ ( sK555 @ X200 ) @ ( sK556 @ X200 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f529,plain,
    ! [X203: term] :
      ( ? [X204: subst > term > term] :
        ! [X205: subst,X206: term] :
          ( ( sub @ X203 @ ( push @ X206 @ X205 ) )
          = ( X204 @ X205 @ X206 ) )
     => ! [X206: term,X205: subst] :
          ( ( sub @ X203 @ ( push @ X206 @ X205 ) )
          = ( sK557 @ X203 @ X205 @ X206 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f530,plain,
    ( ? [X207: term] :
        ( ( sub @ X207 @ id )
       != X207 )
   => ( ( sub @ sK558 @ id )
     != sK558 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f531,plain,
    ( ? [X211: term,X212: subst] :
        ( ( sub @ one @ ( push @ X211 @ X212 ) )
       != X211 )
   => ( sK559
     != ( sub @ one @ ( push @ sK559 @ sK560 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f532,plain,
    ( ? [X213: term,X214: term,X215: term,X216: term] :
        ( ( ( ap @ ( sub @ X215 @ id ) @ X216 )
          = ( ap @ ( sub @ X213 @ id ) @ X214 ) )
        & ( X214 != X216 ) )
   => ( ( ( ap @ ( sub @ sK563 @ id ) @ sK564 )
        = ( ap @ ( sub @ sK561 @ id ) @ sK562 ) )
      & ( sK562 != sK564 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f533,plain,
    ( ? [X225: term,X226: term,X227: term,X228: term] :
        ( ( ( ap @ X226 @ X225 )
          = ( ap @ X227 @ X228 ) )
        & ( X225 != X228 ) )
   => ( ( ( ap @ sK567 @ sK568 )
        = ( ap @ sK566 @ sK565 ) )
      & ( sK565 != sK568 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f534,plain,
    ( ? [X229: subst > term > subst > $o] :
      ! [X230: term > $o] :
      ? [X231: term] :
        ( ( X230 @ X231 )
       != ( X229 @ id @ X231 @ id ) )
   => ! [X230: term > $o] :
      ? [X231: term] :
        ( ( X230 @ X231 )
       != ( sK569 @ id @ X231 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f535,plain,
    ! [X230: term > $o] :
      ( ? [X231: term] :
          ( ( X230 @ X231 )
         != ( sK569 @ id @ X231 @ id ) )
     => ( ( X230 @ ( sK570 @ X230 ) )
       != ( sK569 @ id @ ( sK570 @ X230 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f536,plain,
    ! [X232: subst > term > subst > $o] :
      ( ? [X233: term > $o] :
        ! [X234: term] :
          ( ( X232 @ id @ X234 @ id )
          = ( X233 @ X234 ) )
     => ! [X234: term] :
          ( ( X232 @ id @ X234 @ id )
          = ( sK571 @ X232 @ X234 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f537,plain,
    ( ? [X235: subst > term > term,X236: subst > term > term,X237: subst,X238: term] :
        ( ! [X239: subst,X240: subst,X241: term] :
            ( ( X236 @ ( comp @ X240 @ X239 ) @ ( sub @ X241 @ X239 ) )
            = ( sub @ ( X236 @ X240 @ X241 ) @ X239 ) )
        & ! [X242: term,X243: subst,X244: subst] :
            ( ( X235 @ ( comp @ X243 @ X244 ) @ ( sub @ X242 @ X244 ) )
            = ( sub @ ( X235 @ X243 @ X242 ) @ X244 ) )
        & ( ( X235 @ X237 @ X238 )
         != ( X236 @ X237 @ X238 ) )
        & ( ( lam @ ( X235 @ sh @ one ) )
          = ( lam @ ( X236 @ sh @ one ) ) ) )
   => ( ! [X241: term,X240: subst,X239: subst] :
          ( ( sub @ ( sK573 @ X240 @ X241 ) @ X239 )
          = ( sK573 @ ( comp @ X240 @ X239 ) @ ( sub @ X241 @ X239 ) ) )
      & ! [X244: subst,X243: subst,X242: term] :
          ( ( sK572 @ ( comp @ X243 @ X244 ) @ ( sub @ X242 @ X244 ) )
          = ( sub @ ( sK572 @ X243 @ X242 ) @ X244 ) )
      & ( ( sK573 @ sK574 @ sK575 )
       != ( sK572 @ sK574 @ sK575 ) )
      & ( ( lam @ ( sK572 @ sh @ one ) )
        = ( lam @ ( sK573 @ sh @ one ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f538,plain,
    ! [X246: subst > term > term] :
      ( ? [X249: subst,X250: subst,X251: term] :
          ( ( sub @ ( X246 @ X250 @ X251 ) @ X249 )
         != ( X246 @ ( comp @ X250 @ X249 ) @ ( sub @ X251 @ X249 ) ) )
     => ( ( sub @ ( X246 @ ( sK577 @ X246 ) @ ( sK578 @ X246 ) ) @ ( sK576 @ X246 ) )
       != ( X246 @ ( comp @ ( sK577 @ X246 ) @ ( sK576 @ X246 ) ) @ ( sub @ ( sK578 @ X246 ) @ ( sK576 @ X246 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f539,plain,
    ! [X245: subst > term > term] :
      ( ? [X252: term,X253: subst,X254: subst] :
          ( ( X245 @ ( comp @ X253 @ X254 ) @ ( sub @ X252 @ X254 ) )
         != ( sub @ ( X245 @ X253 @ X252 ) @ X254 ) )
     => ( ( sub @ ( X245 @ ( sK580 @ X245 ) @ ( sK579 @ X245 ) ) @ ( sK581 @ X245 ) )
       != ( X245 @ ( comp @ ( sK580 @ X245 ) @ ( sK581 @ X245 ) ) @ ( sub @ ( sK579 @ X245 ) @ ( sK581 @ X245 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f540,plain,
    ( ? [X255: term] :
      ! [X256: subst > term > term] :
      ? [X257: subst,X258: term] :
        ( ( sub @ X255 @ ( push @ X258 @ X257 ) )
       != ( X256 @ X257 @ X258 ) )
   => ! [X256: subst > term > term] :
      ? [X258: term,X257: subst] :
        ( ( sub @ sK582 @ ( push @ X258 @ X257 ) )
       != ( X256 @ X257 @ X258 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f541,plain,
    ! [X256: subst > term > term] :
      ( ? [X258: term,X257: subst] :
          ( ( sub @ sK582 @ ( push @ X258 @ X257 ) )
         != ( X256 @ X257 @ X258 ) )
     => ( ( sub @ sK582 @ ( push @ ( sK584 @ X256 ) @ ( sK583 @ X256 ) ) )
       != ( X256 @ ( sK583 @ X256 ) @ ( sK584 @ X256 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f542,plain,
    ! [X259: term] :
      ( ? [X260: subst > term > term] :
        ! [X261: subst,X262: term] :
          ( ( sub @ X259 @ ( push @ X262 @ X261 ) )
          = ( X260 @ X261 @ X262 ) )
     => ! [X262: term,X261: subst] :
          ( ( sub @ X259 @ ( push @ X262 @ X261 ) )
          = ( sK585 @ X259 @ X261 @ X262 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f543,plain,
    ( ? [X263: term,X264: term,X265: term,X266: term] :
        ( ( X263 != X264 )
        & ( ( ap @ X266 @ X264 )
          = ( ap @ X265 @ X263 ) ) )
   => ( ( sK587 != sK586 )
      & ( ( ap @ sK589 @ sK587 )
        = ( ap @ sK588 @ sK586 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f544,plain,
    ! [X272: term] :
      ( ? [X273: d_term] :
          ( ( d2term @ X273 )
          = X272 )
     => ( ( d2term @ ( sK590 @ X272 ) )
        = X272 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f475,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ( sP58 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP58 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
      | ? [X0: term > $o,X1: subst,X2: term > $o,X3: term,X4: term] :
          ( ( $true
            = ( X2 @ X3 ) )
          & ( $true
           != ( X0 @ ( sub @ X3 @ ( push @ X4 @ X1 ) ) ) ) ) )
    & ( ! [X5: term > $o,X6: subst,X7: term > $o,X8: term,X9: term] :
          ( ( $true
           != ( X7 @ X8 ) )
          | ( ( X5 @ ( sub @ X8 @ ( push @ X9 @ X6 ) ) )
            = $true ) )
      | ( pushprop_lem1 != $true ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X10: d_subst,X11: d_subst] :
        ( ( X10 = X11 )
        | ( ( d2subst @ X10 )
         != ( d2subst @ X11 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( sP56 = $true )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( sP56 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X12: subst] :
      ? [X13: d_subst] :
        ( ( d2subst @ X13 )
        = X12 )
    & ( ! [X14: term > $o,X15: term] :
          ( ( ( sP55 @ X14 )
            = $true )
          | ? [X16: term] :
              ( ( $true
                = ( X14 @ X16 ) )
              & ( $true
               != ( X14 @ ( lam @ X16 ) ) ) )
          | ( ( X14 @ X15 )
            = $true )
          | ? [X17: term] :
              ( ( $true
               != ( X14 @ X17 ) )
              & ( $true
                = ( var @ X17 ) ) ) )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ? [X18: term > $o,X19: term] :
          ( ( $true
           != ( sP55 @ X18 ) )
          & ! [X20: term] :
              ( ( $true
               != ( X18 @ X20 ) )
              | ( $true
                = ( X18 @ ( lam @ X20 ) ) ) )
          & ( ( X18 @ X19 )
           != $true )
          & ! [X21: term] :
              ( ( $true
                = ( X18 @ X21 ) )
              | ( ( var @ X21 )
               != $true ) ) ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X22: term,X23: subst] :
          ( ( comp @ sh @ ( push @ X22 @ X23 ) )
          = X23 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X24: term,X25: subst] :
          ( ( comp @ sh @ ( push @ X24 @ X25 ) )
         != X25 ) )
    & ( ( substmonoid_lthm = $true )
      | ( ! [X26: subst] :
            ( ( comp @ X26 @ id )
            = X26 )
        & ( ? [X27: subst] :
              ( ( comp @ id @ X27 )
             != X27 )
          | ? [X28: subst] :
              ( ( comp @ X28 @ id )
             != X28 ) )
        & ! [X29: subst] :
            ( ( comp @ id @ X29 )
            = X29 ) ) )
    & ( ? [X30: subst] :
          ( ( comp @ X30 @ id )
         != X30 )
      | ( ! [X31: subst] :
            ( ( comp @ id @ X31 )
            = X31 )
        & ! [X32: subst] :
            ( ( comp @ X32 @ id )
            = X32 ) )
      | ? [X33: subst] :
          ( ( comp @ id @ X33 )
         != X33 )
      | ( substmonoid_lthm != $true ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( sP51 = $true )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( sP51 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
      | ? [X34: term,X35: term] :
          ( ( ( sub @ X35 @ sh )
            = ( sub @ X34 @ sh ) )
          & ( X34 != X35 ) ) )
    & ( ! [X36: term,X37: term] :
          ( ( ( sub @ X36 @ sh )
           != ( sub @ X37 @ sh ) )
          | ( X36 = X37 ) )
      | ( shinj != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ! [X38: d_term] : ( d_one = X38 )
    & ( ! [X39: term,X40: term,X41: term,X42: term] :
          ( ( ( ap @ X39 @ X40 )
           != ( ap @ X42 @ X41 ) )
          | ( X39 = X42 ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X43: term,X44: term,X45: term,X46: term] :
          ( ( ( ap @ X43 @ X44 )
            = ( ap @ X46 @ X45 ) )
          & ( X43 != X46 ) ) )
    & ( induction2lem_gthm = $true )
    & ( ( $true = sP43 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( $true != sP43 ) )
    & ( ! [X47: term,X48: subst > term > subst > $o] :
          ( ? [X49: term,X50: term] :
              ( ( ( X48 @ id @ X50 @ id )
                = $true )
              & ( $true
                = ( X48 @ id @ X49 @ id ) )
              & ( $true
               != ( X48 @ id @ ( ap @ ( sub @ X50 @ id ) @ X49 ) @ id ) ) )
          | ( $true
            = ( X48 @ id @ X47 @ id ) )
          | ( $true
            = ( sP39 @ X48 ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X51: term,X52: subst > term > subst > $o] :
          ( ! [X53: term,X54: term] :
              ( ( $true
               != ( X52 @ id @ X54 @ id ) )
              | ( $true
               != ( X52 @ id @ X53 @ id ) )
              | ( $true
                = ( X52 @ id @ ( ap @ ( sub @ X54 @ id ) @ X53 ) @ id ) ) )
          & ( $true
           != ( X52 @ id @ X51 @ id ) )
          & ( $true
           != ( sP39 @ X52 ) ) ) )
    & ( ( axvarid = $true )
      | ? [X55: term] :
          ( ( sub @ X55 @ id )
         != X55 ) )
    & ( ! [X56: term] :
          ( ( sub @ X56 @ id )
          = X56 )
      | ( axvarid != $true ) )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X57: term,X58: term > $o,X59: term > $o,X60: subst] :
            ( ( $true
             != ( X59 @ one ) )
            & ( ( X58 @ X57 )
              = $true )
            & ! [X61: term] :
                ( ( X59 @ X61 )
                = ( X58 @ ( sub @ X61 @ ( push @ X57 @ X60 ) ) ) ) )
        & ! [X62: subst,X63: term] :
            ( ( sub @ one @ ( push @ X63 @ X62 ) )
            = X63 ) ) )
    & ( ! [X64: term,X65: term > $o,X66: term > $o,X67: subst] :
          ( ( $true
            = ( X66 @ one ) )
          | ( ( X65 @ X64 )
           != $true )
          | ? [X68: term] :
              ( ( X66 @ X68 )
             != ( X65 @ ( sub @ X68 @ ( push @ X64 @ X67 ) ) ) ) )
      | ? [X69: subst,X70: term] :
          ( ( sub @ one @ ( push @ X70 @ X69 ) )
         != X70 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ! [X71: term,X72: term > $o,X73: subst] :
        ? [X74: term > $o] :
        ! [X75: term] :
          ( ( X72 @ ( sub @ X75 @ ( push @ X71 @ X73 ) ) )
          = ( X74 @ X75 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X76: term,X77: term > $o,X78: subst] :
        ! [X79: term > $o] :
        ? [X80: term] :
          ( ( X77 @ ( sub @ X80 @ ( push @ X76 @ X78 ) ) )
         != ( X79 @ X80 ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X81: term,X82: term,X83: term,X84: term] :
          ( ( ( ap @ ( sub @ X83 @ id ) @ X81 )
           != ( ap @ ( sub @ X84 @ id ) @ X82 ) )
          | ( X81 = X82 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X85: term,X86: term,X87: term,X88: term] :
          ( ( ( ap @ ( sub @ X88 @ id ) @ X86 )
            = ( ap @ ( sub @ X87 @ id ) @ X85 ) )
          & ( X85 != X86 ) ) )
    & ( axclos = $true )
    & ! [X89: d_term,X90: d_term] :
        ( ( X89 = X90 )
        | ( ( d2term @ X89 )
         != ( d2term @ X90 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP38 ) )
    & ( ( $true = sP38 )
      | ( hoasinduction_lem2 != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ? [X91: term,X92: term,X93: term,X94: term] :
          ( ( X91 != X92 )
          & ( ( ap @ X91 @ X93 )
            = ( ap @ X92 @ X94 ) ) )
      | ! [X95: term,X96: term,X97: term,X98: term] :
          ( ( X96 = X98 )
          | ( ( ap @ ( sub @ X98 @ id ) @ X97 )
           != ( ap @ ( sub @ X96 @ id ) @ X95 ) ) )
      | ? [X99: term] :
          ( ( sub @ X99 @ id )
         != X99 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( ! [X100: term,X101: term,X102: term,X103: term] :
            ( ( X100 = X101 )
            | ( ( ap @ X101 @ X103 )
             != ( ap @ X100 @ X102 ) ) )
        & ? [X104: term,X105: term,X106: term,X107: term] :
            ( ( X105 != X107 )
            & ( ( ap @ ( sub @ X105 @ id ) @ X104 )
              = ( ap @ ( sub @ X107 @ id ) @ X106 ) ) )
        & ! [X108: term] :
            ( ( sub @ X108 @ id )
            = X108 ) ) )
    & ( ( axidl = $true )
      | ? [X109: subst] :
          ( ( comp @ id @ X109 )
         != X109 ) )
    & ( ! [X110: subst] :
          ( ( comp @ id @ X110 )
          = X110 )
      | ( axidl != $true ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X111: term] :
        ! [X112: subst > term > term] :
          ( ( sub @ X111 @ ( push @ one @ sh ) )
         != ( X112 @ sh @ one ) ) )
    & ( ! [X113: term] :
        ? [X114: subst > term > term] :
          ( ( sub @ X113 @ ( push @ one @ sh ) )
          = ( X114 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP36 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP36 ) )
    & ( ! [X115: term,X116: term,X117: term,X118: term] :
          ( ( ( ap @ ( sub @ X117 @ id ) @ X116 )
           != ( ap @ ( sub @ X115 @ id ) @ X118 ) )
          | ( X115 = X117 ) )
      | ( hoasapinj1 != $true ) )
    & ( ( hoasapinj1 = $true )
      | ? [X119: term,X120: term,X121: term,X122: term] :
          ( ( ( ap @ ( sub @ X121 @ id ) @ X120 )
            = ( ap @ ( sub @ X119 @ id ) @ X122 ) )
          & ( X119 != X121 ) ) )
    & ( ( termmset_lthm = $true )
      | ( ? [X123: term] :
            ( ( sub @ X123 @ id )
           != X123 )
        & ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 ) ) )
    & ( ! [X125: term] :
          ( ( sub @ X125 @ id )
          = X125 )
      | ? [X126: term] :
          ( ( sub @ X126 @ id )
         != X126 )
      | ( termmset_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
      | ? [X127: subst] :
          ( ( comp @ X127 @ id )
         != X127 ) )
    & ( ! [X128: subst] :
          ( ( comp @ X128 @ id )
          = X128 )
      | ( axidr != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X129: term] :
        ? [X130: subst > term > term] :
          ( ( sub @ X129 @ ( push @ one @ sh ) )
          = ( X130 @ sh @ one ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X131: term] :
        ! [X132: subst > term > term] :
          ( ( X132 @ sh @ one )
         != ( sub @ X131 @ ( push @ one @ sh ) ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X133: term > $o,X134: term,X135: term > $o,X136: subst] :
          ( ( $true
            = ( X133 @ X134 ) )
          & ! [X137: term] :
              ( ( X135 @ X137 )
              = ( X133 @ ( sub @ X137 @ ( push @ X134 @ X136 ) ) ) )
          & ( $true
           != ( X135 @ one ) ) ) )
    & ( ! [X138: term > $o,X139: term,X140: term > $o,X141: subst] :
          ( ( $true
           != ( X138 @ X139 ) )
          | ? [X142: term] :
              ( ( X138 @ ( sub @ X142 @ ( push @ X139 @ X141 ) ) )
             != ( X140 @ X142 ) )
          | ( $true
            = ( X140 @ one ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( sP35 != $true ) )
    & ( ( sP35 = $true )
      | ( hoasinduction_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP26 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( $true != sP26 ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
      | ? [X143: subst] :
          ( ( comp @ id @ X143 )
         != X143 )
      | ? [X144: subst] :
          ( ( comp @ X144 @ id )
         != X144 ) )
    & ( ( ! [X145: subst] :
            ( ( comp @ id @ X145 )
            = X145 )
        & ! [X146: subst] :
            ( ( comp @ X146 @ id )
            = X146 ) )
      | ( substmonoid != $true ) )
    & ( ! [X147: subst] :
          ( ( push @ ( sub @ one @ X147 ) @ ( comp @ sh @ X147 ) )
          = X147 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X148: subst] :
          ( ( push @ ( sub @ one @ X148 ) @ ( comp @ sh @ X148 ) )
         != X148 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
      | ? [X149: term,X150: term] :
          ( ( ( lam @ X150 )
            = ( lam @ X149 ) )
          & ( X149 != X150 ) ) )
    & ( ! [X151: term,X152: term] :
          ( ( ( lam @ X152 )
           != ( lam @ X151 ) )
          | ( X151 = X152 ) )
      | ( laminj != $true ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X153: subst,X154: term > $o,X155: term] :
        ? [X156: term > $o] :
        ! [X157: term] :
          ( ( X154 @ ( sub @ X157 @ ( push @ X155 @ X153 ) ) )
          = ( X156 @ X157 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X158: subst,X159: term > $o,X160: term] :
        ! [X161: term > $o] :
        ? [X162: term] :
          ( ( X159 @ ( sub @ X162 @ ( push @ X160 @ X158 ) ) )
         != ( X161 @ X162 ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( $true != sP22 ) )
    & ( ! [X163: term,X164: term,X165: subst > term > term] :
          ( ? [X166: subst,X167: subst,X168: term] :
              ( ( X165 @ ( comp @ X166 @ X167 ) @ ( sub @ X168 @ X167 ) )
             != ( sub @ ( X165 @ X166 @ X168 ) @ X167 ) )
          | ( ( lam @ ( X165 @ sh @ one ) )
           != ( ap @ ( sub @ X164 @ id ) @ X163 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X169: term,X170: term,X171: subst > term > term] :
          ( ! [X172: subst,X173: subst,X174: term] :
              ( ( sub @ ( X171 @ X172 @ X174 ) @ X173 )
              = ( X171 @ ( comp @ X172 @ X173 ) @ ( sub @ X174 @ X173 ) ) )
          & ( ( ap @ ( sub @ X170 @ id ) @ X169 )
            = ( lam @ ( X171 @ sh @ one ) ) ) ) )
    & ( axmap = $true )
    & ( ! [X175: subst > term > subst > $o] :
        ? [X176: term > $o] :
        ! [X177: term] :
          ( ( X175 @ id @ X177 @ id )
          = ( X176 @ X177 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X178: subst > term > subst > $o] :
        ! [X179: term > $o] :
        ? [X180: term] :
          ( ( X179 @ X180 )
         != ( X178 @ id @ X180 @ id ) ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ? [X181: subst,X182: term] :
          ( ( comp @ sh @ ( push @ X182 @ X181 ) )
         != X181 )
      | ? [X183: term,X184: subst] :
          ( ( sub @ one @ ( push @ X183 @ X184 ) )
         != X183 )
      | ! [X185: term,X186: term > $o,X187: term,X188: term > $o,X189: subst] :
          ( ( $true
            = ( X188 @ ( sub @ X185 @ ( push @ X187 @ X189 ) ) ) )
          | ( $true
           != ( X186 @ X185 ) ) )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X190: subst,X191: term] :
            ( ( comp @ sh @ ( push @ X191 @ X190 ) )
            = X190 )
        & ! [X192: term,X193: subst] :
            ( ( sub @ one @ ( push @ X192 @ X193 ) )
            = X192 )
        & ? [X194: term,X195: term > $o,X196: term,X197: term > $o,X198: subst] :
            ( ( $true
             != ( X197 @ ( sub @ X194 @ ( push @ X196 @ X198 ) ) ) )
            & ( $true
              = ( X195 @ X194 ) ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP20 ) )
    & ( ( $true = sP20 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( $true != sP18 ) )
    & ( ( $true = sP18 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP15 )
      | ( hoasinduction != $true ) )
    & ( ( sP12 = $true )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( sP12 != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X199: term] :
        ! [X200: subst > term > term] :
        ? [X201: subst,X202: term] :
          ( ( X200 @ X201 @ X202 )
         != ( sub @ X199 @ ( push @ X202 @ X201 ) ) ) )
    & ( ! [X203: term] :
        ? [X204: subst > term > term] :
        ! [X205: subst,X206: term] :
          ( ( sub @ X203 @ ( push @ X206 @ X205 ) )
          = ( X204 @ X205 @ X206 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
      | ( $true != sP11 ) )
    & ( ( $true = sP11 )
      | ( induction2lem != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( $true != sP9 ) )
    & ( ( $true = sP9 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP7 ) )
    & ( ( $true = sP7 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( $true = sP5 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( $true != sP5 ) )
    & ( ( $true = sP0 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP0 ) )
    & ( ( termmset = $true )
      | ? [X207: term] :
          ( ( sub @ X207 @ id )
         != X207 ) )
    & ( ! [X208: term] :
          ( ( sub @ X208 @ id )
          = X208 )
      | ( termmset != $true ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X209: term,X210: subst] :
          ( ( sub @ one @ ( push @ X209 @ X210 ) )
          = X209 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X211: term,X212: subst] :
          ( ( sub @ one @ ( push @ X211 @ X212 ) )
         != X211 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
      | ( ? [X213: term,X214: term,X215: term,X216: term] :
            ( ( ( ap @ ( sub @ X215 @ id ) @ X216 )
              = ( ap @ ( sub @ X213 @ id ) @ X214 ) )
            & ( X214 != X216 ) )
        & ! [X217: term,X218: term,X219: term,X220: term] :
            ( ( ( ap @ X218 @ X217 )
             != ( ap @ X219 @ X220 ) )
            | ( X217 = X220 ) ) ) )
    & ( ! [X221: term,X222: term,X223: term,X224: term] :
          ( ( ( ap @ ( sub @ X223 @ id ) @ X224 )
           != ( ap @ ( sub @ X221 @ id ) @ X222 ) )
          | ( X222 = X224 ) )
      | ? [X225: term,X226: term,X227: term,X228: term] :
          ( ( ( ap @ X226 @ X225 )
            = ( ap @ X227 @ X228 ) )
          & ( X225 != X228 ) )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X229: subst > term > subst > $o] :
        ! [X230: term > $o] :
        ? [X231: term] :
          ( ( X230 @ X231 )
         != ( X229 @ id @ X231 @ id ) ) )
    & ( ! [X232: subst > term > subst > $o] :
        ? [X233: term > $o] :
        ! [X234: term] :
          ( ( X232 @ id @ X234 @ id )
          = ( X233 @ X234 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X235: subst > term > term,X236: subst > term > term,X237: subst,X238: term] :
          ( ! [X239: subst,X240: subst,X241: term] :
              ( ( X236 @ ( comp @ X240 @ X239 ) @ ( sub @ X241 @ X239 ) )
              = ( sub @ ( X236 @ X240 @ X241 ) @ X239 ) )
          & ! [X242: term,X243: subst,X244: subst] :
              ( ( X235 @ ( comp @ X243 @ X244 ) @ ( sub @ X242 @ X244 ) )
              = ( sub @ ( X235 @ X243 @ X242 ) @ X244 ) )
          & ( ( X235 @ X237 @ X238 )
           != ( X236 @ X237 @ X238 ) )
          & ( ( lam @ ( X235 @ sh @ one ) )
            = ( lam @ ( X236 @ sh @ one ) ) ) ) )
    & ( ! [X245: subst > term > term,X246: subst > term > term,X247: subst,X248: term] :
          ( ? [X249: subst,X250: subst,X251: term] :
              ( ( sub @ ( X246 @ X250 @ X251 ) @ X249 )
             != ( X246 @ ( comp @ X250 @ X249 ) @ ( sub @ X251 @ X249 ) ) )
          | ? [X252: term,X253: subst,X254: subst] :
              ( ( X245 @ ( comp @ X253 @ X254 ) @ ( sub @ X252 @ X254 ) )
             != ( sub @ ( X245 @ X253 @ X252 ) @ X254 ) )
          | ( ( X246 @ X247 @ X248 )
            = ( X245 @ X247 @ X248 ) )
          | ( ( lam @ ( X246 @ sh @ one ) )
           != ( lam @ ( X245 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X255: term] :
        ! [X256: subst > term > term] :
        ? [X257: subst,X258: term] :
          ( ( sub @ X255 @ ( push @ X258 @ X257 ) )
         != ( X256 @ X257 @ X258 ) ) )
    & ( ! [X259: term] :
        ? [X260: subst > term > term] :
        ! [X261: subst,X262: term] :
          ( ( sub @ X259 @ ( push @ X262 @ X261 ) )
          = ( X260 @ X261 @ X262 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
      | ? [X263: term,X264: term,X265: term,X266: term] :
          ( ( X263 != X264 )
          & ( ( ap @ X266 @ X264 )
            = ( ap @ X265 @ X263 ) ) ) )
    & ( ! [X267: term,X268: term,X269: term,X270: term] :
          ( ( X267 = X268 )
          | ( ( ap @ X270 @ X268 )
           != ( ap @ X269 @ X267 ) ) )
      | ( apinj2 != $true ) )
    & ! [X271: d_subst] : ( d_id = X271 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X272: term] :
      ? [X273: d_term] :
        ( ( d2term @ X273 )
        = X272 ) ),
    inference(rectify,[status(thm)],[f474]) ).

thf(f474,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ( sP58 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP58 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
      | ? [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
            = ( X145 @ X146 ) )
          & ( $true
           != ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( X56 = X57 )
        | ( ( d2subst @ X56 )
         != ( d2subst @ X57 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( sP56 = $true )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( sP56 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ! [X5: term > $o,X6: term] :
          ( ( $true
            = ( sP55 @ X5 ) )
          | ? [X7: term] :
              ( ( $true
                = ( X5 @ X7 ) )
              & ( ( X5 @ ( lam @ X7 ) )
               != $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ? [X10: term] :
              ( ( $true
               != ( X5 @ X10 ) )
              & ( $true
                = ( var @ X10 ) ) ) )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ? [X5: term > $o,X6: term] :
          ( ( $true
           != ( sP55 @ X5 ) )
          & ! [X7: term] :
              ( ( $true
               != ( X5 @ X7 ) )
              | ( ( X5 @ ( lam @ X7 ) )
                = $true ) )
          & ( $true
           != ( X5 @ X6 ) )
          & ! [X10: term] :
              ( ( $true
                = ( X5 @ X10 ) )
              | ( $true
               != ( var @ X10 ) ) ) ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
         != X286 ) )
    & ( ( substmonoid_lthm = $true )
      | ( ! [X61: subst] :
            ( ( comp @ X61 @ id )
            = X61 )
        & ( ? [X63: subst] :
              ( ( comp @ id @ X63 )
             != X63 )
          | ? [X62: subst] :
              ( ( comp @ X62 @ id )
             != X62 ) )
        & ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 ) ) )
    & ( ? [X61: subst] :
          ( ( comp @ X61 @ id )
         != X61 )
      | ( ! [X63: subst] :
            ( ( comp @ id @ X63 )
            = X63 )
        & ! [X62: subst] :
            ( ( comp @ X62 @ id )
            = X62 ) )
      | ? [X60: subst] :
          ( ( comp @ id @ X60 )
         != X60 )
      | ( substmonoid_lthm != $true ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( sP51 = $true )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( sP51 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
      | ? [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
            = ( sub @ X449 @ sh ) )
          & ( X448 != X449 ) ) )
    & ( ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) )
      | ( shinj != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
            = ( ap @ X101 @ X102 ) )
          & ( X101 != X104 ) ) )
    & ( induction2lem_gthm = $true )
    & ( ( $true = sP43 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( $true != sP43 ) )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ? [X254: term,X255: term] :
              ( ( $true
                = ( X248 @ id @ X255 @ id ) )
              & ( $true
                = ( X248 @ id @ X254 @ id ) )
              & ( $true
               != ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) )
          | ( ( sP39 @ X248 )
            = $true ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X247: term,X248: subst > term > subst > $o] :
          ( ! [X254: term,X255: term] :
              ( ( $true
               != ( X248 @ id @ X255 @ id ) )
              | ( $true
               != ( X248 @ id @ X254 @ id ) )
              | ( $true
                = ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          & ( $true
           != ( X248 @ id @ X247 @ id ) )
          & ( ( sP39 @ X248 )
           != $true ) ) )
    & ( ( axvarid = $true )
      | ? [X80: term] :
          ( ( sub @ X80 @ id )
         != X80 ) )
    & ( ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 )
      | ( axvarid != $true ) )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
             != ( X110 @ one ) )
            & ( $true
              = ( X109 @ X108 ) )
            & ! [X112: term] :
                ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                = ( X110 @ X112 ) ) )
        & ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 ) ) )
    & ( ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
          ( ( $true
            = ( X110 @ one ) )
          | ( $true
           != ( X109 @ X108 ) )
          | ? [X112: term] :
              ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
             != ( X110 @ X112 ) ) )
      | ? [X106: subst,X107: term] :
          ( ( sub @ one @ ( push @ X107 @ X106 ) )
         != X107 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
        ? [X3: term > $o] :
        ! [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
          = ( X3 @ X4 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X0: term,X1: term > $o,X2: subst] :
        ! [X3: term > $o] :
        ? [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
         != ( X3 @ X4 ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
            = ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          & ( X11 != X12 ) ) )
    & ( axclos = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( X207 = X208 )
        | ( ( d2term @ X208 )
         != ( d2term @ X207 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP38 ) )
    & ( ( $true = sP38 )
      | ( hoasinduction_lem2 != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ? [X505: term,X506: term,X507: term,X508: term] :
          ( ( X505 != X506 )
          & ( ( ap @ X506 @ X508 )
            = ( ap @ X505 @ X507 ) ) )
      | ! [X509: term,X510: term,X511: term,X512: term] :
          ( ( X510 = X512 )
          | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
           != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
      | ? [X504: term] :
          ( ( sub @ X504 @ id )
         != X504 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( ! [X505: term,X506: term,X507: term,X508: term] :
            ( ( X505 = X506 )
            | ( ( ap @ X506 @ X508 )
             != ( ap @ X505 @ X507 ) ) )
        & ? [X509: term,X510: term,X511: term,X512: term] :
            ( ( X510 != X512 )
            & ( ( ap @ ( sub @ X510 @ id ) @ X509 )
              = ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
        & ! [X504: term] :
            ( ( sub @ X504 @ id )
            = X504 ) ) )
    & ( ( axidl = $true )
      | ? [X539: subst] :
          ( ( comp @ id @ X539 )
         != X539 ) )
    & ( ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 )
      | ( axidl != $true ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X283: term] :
        ! [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
         != ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ( ! [X283: term] :
        ? [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
          = ( sub @ X283 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP36 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP36 ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
      | ( hoasapinj1 != $true ) )
    & ( ( hoasapinj1 = $true )
      | ? [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
            = ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          & ( X287 != X289 ) ) )
    & ( ( termmset_lthm = $true )
      | ( ? [X294: term] :
            ( ( sub @ X294 @ id )
           != X294 )
        & ! [X293: term] :
            ( ( sub @ X293 @ id )
            = X293 ) ) )
    & ( ! [X294: term] :
          ( ( sub @ X294 @ id )
          = X294 )
      | ? [X293: term] :
          ( ( sub @ X293 @ id )
         != X293 )
      | ( termmset_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
      | ? [X374: subst] :
          ( ( comp @ X374 @ id )
         != X374 ) )
    & ( ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 )
      | ( axidr != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X141: term] :
        ? [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
          = ( sub @ X141 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X141: term] :
        ! [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
         != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
            = ( X27 @ X28 ) )
          & ! [X31: term] :
              ( ( X29 @ X31 )
              = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          & ( $true
           != ( X29 @ one ) ) ) )
    & ( ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
           != ( X27 @ X28 ) )
          | ? [X31: term] :
              ( ( X29 @ X31 )
             != ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( sP35 != $true ) )
    & ( ( sP35 = $true )
      | ( hoasinduction_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP26 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( $true != sP26 ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
      | ? [X210: subst] :
          ( ( comp @ id @ X210 )
         != X210 )
      | ? [X209: subst] :
          ( ( comp @ X209 @ id )
         != X209 ) )
    & ( ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) )
      | ( substmonoid != $true ) )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
         != X217 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
      | ? [X307: term,X308: term] :
          ( ( ( lam @ X307 )
            = ( lam @ X308 ) )
          & ( X307 != X308 ) ) )
    & ( ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) )
      | ( laminj != $true ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X443: subst,X444: term > $o,X445: term] :
        ? [X446: term > $o] :
        ! [X447: term] :
          ( ( X446 @ X447 )
          = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X443: subst,X444: term > $o,X445: term] :
        ! [X446: term > $o] :
        ? [X447: term] :
          ( ( X446 @ X447 )
         != ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( $true != sP22 ) )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ? [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
             != ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X211: term,X212: term,X213: subst > term > term] :
          ( ! [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
              = ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          & ( ( lam @ ( X213 @ sh @ one ) )
            = ( ap @ ( sub @ X212 @ id ) @ X211 ) ) ) )
    & ( axmap = $true )
    & ( ! [X186: subst > term > subst > $o] :
        ? [X187: term > $o] :
        ! [X188: term] :
          ( ( X186 @ id @ X188 @ id )
          = ( X187 @ X188 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X186: subst > term > subst > $o] :
        ! [X187: term > $o] :
        ? [X188: term] :
          ( ( X186 @ id @ X188 @ id )
         != ( X187 @ X188 ) ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ? [X34: subst,X35: term] :
          ( ( comp @ sh @ ( push @ X35 @ X34 ) )
         != X34 )
      | ? [X32: term,X33: subst] :
          ( ( sub @ one @ ( push @ X32 @ X33 ) )
         != X32 )
      | ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
          ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
            = $true )
          | ( $true
           != ( X37 @ X36 ) ) )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
            = X34 )
        & ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
        & ? [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
            ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
             != $true )
            & ( $true
              = ( X37 @ X36 ) ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP20 ) )
    & ( ( $true = sP20 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( $true != sP18 ) )
    & ( ( $true = sP18 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP15 )
      | ( hoasinduction != $true ) )
    & ( ( sP12 = $true )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( sP12 != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X385: term] :
        ! [X386: subst > term > term] :
        ? [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
         != ( X386 @ X387 @ X388 ) ) )
    & ( ! [X385: term] :
        ? [X386: subst > term > term] :
        ! [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
          = ( X386 @ X387 @ X388 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
      | ( $true != sP11 ) )
    & ( ( $true = sP11 )
      | ( induction2lem != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( $true != sP9 ) )
    & ( ( $true = sP9 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP7 ) )
    & ( ( $true = sP7 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( $true = sP5 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( $true != sP5 ) )
    & ( ( $true = sP0 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP0 ) )
    & ( ( termmset = $true )
      | ? [X355: term] :
          ( ( sub @ X355 @ id )
         != X355 ) )
    & ( ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 )
      | ( termmset != $true ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
         != X291 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
      | ( ? [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
              = ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            & ( X300 != X302 ) )
        & ! [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
             != ( ap @ X296 @ X295 ) )
            | ( X295 = X298 ) ) ) )
    & ( ! [X299: term,X300: term,X301: term,X302: term] :
          ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
           != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
          | ( X300 = X302 ) )
      | ? [X295: term,X296: term,X297: term,X298: term] :
          ( ( ( ap @ X297 @ X298 )
            = ( ap @ X296 @ X295 ) )
          & ( X295 != X298 ) )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X121: subst > term > subst > $o] :
        ! [X122: term > $o] :
        ? [X123: term] :
          ( ( X121 @ id @ X123 @ id )
         != ( X122 @ X123 ) ) )
    & ( ! [X121: subst > term > subst > $o] :
        ? [X122: term > $o] :
        ! [X123: term] :
          ( ( X121 @ id @ X123 @ id )
          = ( X122 @ X123 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ! [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
              = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          & ! [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
              = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          & ( ( X91 @ X93 @ X94 )
           != ( X92 @ X93 @ X94 ) )
          & ( ( lam @ ( X92 @ sh @ one ) )
            = ( lam @ ( X91 @ sh @ one ) ) ) ) )
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ? [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
             != ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ? [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
             != ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X303: term] :
        ! [X304: subst > term > term] :
        ? [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
         != ( X304 @ X305 @ X306 ) ) )
    & ( ! [X303: term] :
        ? [X304: subst > term > term] :
        ! [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
          = ( X304 @ X305 @ X306 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
      | ? [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 != X257 )
          & ( ( ap @ X258 @ X256 )
            = ( ap @ X259 @ X257 ) ) ) )
    & ( ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) )
      | ( apinj2 != $true ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 ) ),
    inference(flattening,[status(thm)],[f473]) ).

thf(f473,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ( sP58 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP58 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
      | ? [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
            = ( X145 @ X146 ) )
          & ( $true
           != ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( X56 = X57 )
        | ( ( d2subst @ X56 )
         != ( d2subst @ X57 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( sP56 = $true )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( sP56 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ! [X5: term > $o,X6: term] :
          ( ( $true
            = ( sP55 @ X5 ) )
          | ? [X7: term] :
              ( ( $true
                = ( X5 @ X7 ) )
              & ( ( X5 @ ( lam @ X7 ) )
               != $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ? [X10: term] :
              ( ( $true
               != ( X5 @ X10 ) )
              & ( $true
                = ( var @ X10 ) ) ) )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ? [X5: term > $o,X6: term] :
          ( ( $true
           != ( sP55 @ X5 ) )
          & ! [X7: term] :
              ( ( $true
               != ( X5 @ X7 ) )
              | ( ( X5 @ ( lam @ X7 ) )
                = $true ) )
          & ( $true
           != ( X5 @ X6 ) )
          & ! [X10: term] :
              ( ( $true
                = ( X5 @ X10 ) )
              | ( $true
               != ( var @ X10 ) ) ) ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
         != X286 ) )
    & ( ( substmonoid_lthm = $true )
      | ( ! [X61: subst] :
            ( ( comp @ X61 @ id )
            = X61 )
        & ( ? [X63: subst] :
              ( ( comp @ id @ X63 )
             != X63 )
          | ? [X62: subst] :
              ( ( comp @ X62 @ id )
             != X62 ) )
        & ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 ) ) )
    & ( ? [X61: subst] :
          ( ( comp @ X61 @ id )
         != X61 )
      | ( ! [X63: subst] :
            ( ( comp @ id @ X63 )
            = X63 )
        & ! [X62: subst] :
            ( ( comp @ X62 @ id )
            = X62 ) )
      | ? [X60: subst] :
          ( ( comp @ id @ X60 )
         != X60 )
      | ( substmonoid_lthm != $true ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( sP51 = $true )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( sP51 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
      | ? [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
            = ( sub @ X449 @ sh ) )
          & ( X448 != X449 ) ) )
    & ( ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) )
      | ( shinj != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
            = ( ap @ X101 @ X102 ) )
          & ( X101 != X104 ) ) )
    & ( induction2lem_gthm = $true )
    & ( ( $true = sP43 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( $true != sP43 ) )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ? [X254: term,X255: term] :
              ( ( $true
                = ( X248 @ id @ X255 @ id ) )
              & ( $true
                = ( X248 @ id @ X254 @ id ) )
              & ( $true
               != ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) )
          | ( ( sP39 @ X248 )
            = $true ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X247: term,X248: subst > term > subst > $o] :
          ( ! [X254: term,X255: term] :
              ( ( $true
               != ( X248 @ id @ X255 @ id ) )
              | ( $true
               != ( X248 @ id @ X254 @ id ) )
              | ( $true
                = ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          & ( $true
           != ( X248 @ id @ X247 @ id ) )
          & ( ( sP39 @ X248 )
           != $true ) ) )
    & ( ( axvarid = $true )
      | ? [X80: term] :
          ( ( sub @ X80 @ id )
         != X80 ) )
    & ( ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 )
      | ( axvarid != $true ) )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
             != ( X110 @ one ) )
            & ( $true
              = ( X109 @ X108 ) )
            & ! [X112: term] :
                ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                = ( X110 @ X112 ) ) )
        & ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 ) ) )
    & ( ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
          ( ( $true
            = ( X110 @ one ) )
          | ( $true
           != ( X109 @ X108 ) )
          | ? [X112: term] :
              ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
             != ( X110 @ X112 ) ) )
      | ? [X106: subst,X107: term] :
          ( ( sub @ one @ ( push @ X107 @ X106 ) )
         != X107 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
        ? [X3: term > $o] :
        ! [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
          = ( X3 @ X4 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X0: term,X1: term > $o,X2: subst] :
        ! [X3: term > $o] :
        ? [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
         != ( X3 @ X4 ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
            = ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          & ( X11 != X12 ) ) )
    & ( axclos = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( X207 = X208 )
        | ( ( d2term @ X208 )
         != ( d2term @ X207 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP38 ) )
    & ( ( $true = sP38 )
      | ( hoasinduction_lem2 != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ? [X505: term,X506: term,X507: term,X508: term] :
          ( ( X505 != X506 )
          & ( ( ap @ X506 @ X508 )
            = ( ap @ X505 @ X507 ) ) )
      | ! [X509: term,X510: term,X511: term,X512: term] :
          ( ( X510 = X512 )
          | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
           != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
      | ? [X504: term] :
          ( ( sub @ X504 @ id )
         != X504 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( ! [X505: term,X506: term,X507: term,X508: term] :
            ( ( X505 = X506 )
            | ( ( ap @ X506 @ X508 )
             != ( ap @ X505 @ X507 ) ) )
        & ? [X509: term,X510: term,X511: term,X512: term] :
            ( ( X510 != X512 )
            & ( ( ap @ ( sub @ X510 @ id ) @ X509 )
              = ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
        & ! [X504: term] :
            ( ( sub @ X504 @ id )
            = X504 ) ) )
    & ( ( axidl = $true )
      | ? [X539: subst] :
          ( ( comp @ id @ X539 )
         != X539 ) )
    & ( ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 )
      | ( axidl != $true ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X283: term] :
        ! [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
         != ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ( ! [X283: term] :
        ? [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
          = ( sub @ X283 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP36 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP36 ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
      | ( hoasapinj1 != $true ) )
    & ( ( hoasapinj1 = $true )
      | ? [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
            = ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          & ( X287 != X289 ) ) )
    & ( ( termmset_lthm = $true )
      | ( ? [X294: term] :
            ( ( sub @ X294 @ id )
           != X294 )
        & ! [X293: term] :
            ( ( sub @ X293 @ id )
            = X293 ) ) )
    & ( ! [X294: term] :
          ( ( sub @ X294 @ id )
          = X294 )
      | ? [X293: term] :
          ( ( sub @ X293 @ id )
         != X293 )
      | ( termmset_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
      | ? [X374: subst] :
          ( ( comp @ X374 @ id )
         != X374 ) )
    & ( ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 )
      | ( axidr != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X141: term] :
        ? [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
          = ( sub @ X141 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X141: term] :
        ! [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
         != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
            = ( X27 @ X28 ) )
          & ! [X31: term] :
              ( ( X29 @ X31 )
              = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          & ( $true
           != ( X29 @ one ) ) ) )
    & ( ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
           != ( X27 @ X28 ) )
          | ? [X31: term] :
              ( ( X29 @ X31 )
             != ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( sP35 != $true ) )
    & ( ( sP35 = $true )
      | ( hoasinduction_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP26 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( $true != sP26 ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
      | ? [X210: subst] :
          ( ( comp @ id @ X210 )
         != X210 )
      | ? [X209: subst] :
          ( ( comp @ X209 @ id )
         != X209 ) )
    & ( ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) )
      | ( substmonoid != $true ) )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
         != X217 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
      | ? [X307: term,X308: term] :
          ( ( ( lam @ X307 )
            = ( lam @ X308 ) )
          & ( X307 != X308 ) ) )
    & ( ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) )
      | ( laminj != $true ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X443: subst,X444: term > $o,X445: term] :
        ? [X446: term > $o] :
        ! [X447: term] :
          ( ( X446 @ X447 )
          = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X443: subst,X444: term > $o,X445: term] :
        ! [X446: term > $o] :
        ? [X447: term] :
          ( ( X446 @ X447 )
         != ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( $true != sP22 ) )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ? [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
             != ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X211: term,X212: term,X213: subst > term > term] :
          ( ! [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
              = ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          & ( ( lam @ ( X213 @ sh @ one ) )
            = ( ap @ ( sub @ X212 @ id ) @ X211 ) ) ) )
    & ( axmap = $true )
    & ( ! [X186: subst > term > subst > $o] :
        ? [X187: term > $o] :
        ! [X188: term] :
          ( ( X186 @ id @ X188 @ id )
          = ( X187 @ X188 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X186: subst > term > subst > $o] :
        ! [X187: term > $o] :
        ? [X188: term] :
          ( ( X186 @ id @ X188 @ id )
         != ( X187 @ X188 ) ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ? [X34: subst,X35: term] :
          ( ( comp @ sh @ ( push @ X35 @ X34 ) )
         != X34 )
      | ? [X32: term,X33: subst] :
          ( ( sub @ one @ ( push @ X32 @ X33 ) )
         != X32 )
      | ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
          ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
            = $true )
          | ( $true
           != ( X37 @ X36 ) ) )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
            = X34 )
        & ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
        & ? [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
            ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
             != $true )
            & ( $true
              = ( X37 @ X36 ) ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP20 ) )
    & ( ( $true = sP20 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( $true != sP18 ) )
    & ( ( $true = sP18 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP15 )
      | ( hoasinduction != $true ) )
    & ( ( sP12 = $true )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( sP12 != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X385: term] :
        ! [X386: subst > term > term] :
        ? [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
         != ( X386 @ X387 @ X388 ) ) )
    & ( ! [X385: term] :
        ? [X386: subst > term > term] :
        ! [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
          = ( X386 @ X387 @ X388 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
      | ( $true != sP11 ) )
    & ( ( $true = sP11 )
      | ( induction2lem != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( $true != sP9 ) )
    & ( ( $true = sP9 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP7 ) )
    & ( ( $true = sP7 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( $true = sP5 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( $true != sP5 ) )
    & ( ( $true = sP0 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP0 ) )
    & ( ( termmset = $true )
      | ? [X355: term] :
          ( ( sub @ X355 @ id )
         != X355 ) )
    & ( ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 )
      | ( termmset != $true ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
         != X291 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
      | ( ? [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
              = ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            & ( X300 != X302 ) )
        & ! [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
             != ( ap @ X296 @ X295 ) )
            | ( X295 = X298 ) ) ) )
    & ( ! [X299: term,X300: term,X301: term,X302: term] :
          ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
           != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
          | ( X300 = X302 ) )
      | ? [X295: term,X296: term,X297: term,X298: term] :
          ( ( ( ap @ X297 @ X298 )
            = ( ap @ X296 @ X295 ) )
          & ( X295 != X298 ) )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X121: subst > term > subst > $o] :
        ! [X122: term > $o] :
        ? [X123: term] :
          ( ( X121 @ id @ X123 @ id )
         != ( X122 @ X123 ) ) )
    & ( ! [X121: subst > term > subst > $o] :
        ? [X122: term > $o] :
        ! [X123: term] :
          ( ( X121 @ id @ X123 @ id )
          = ( X122 @ X123 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ! [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
              = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          & ! [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
              = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          & ( ( X91 @ X93 @ X94 )
           != ( X92 @ X93 @ X94 ) )
          & ( ( lam @ ( X92 @ sh @ one ) )
            = ( lam @ ( X91 @ sh @ one ) ) ) ) )
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ? [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
             != ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ? [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
             != ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X303: term] :
        ! [X304: subst > term > term] :
        ? [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
         != ( X304 @ X305 @ X306 ) ) )
    & ( ! [X303: term] :
        ? [X304: subst > term > term] :
        ! [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
          = ( X304 @ X305 @ X306 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
      | ? [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 != X257 )
          & ( ( ap @ X258 @ X256 )
            = ( ap @ X259 @ X257 ) ) ) )
    & ( ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) )
      | ( apinj2 != $true ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 ) ),
    inference(nnf_transformation,[status(thm)],[f73]) ).

thf(f73,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ( sP58 = $true )
    <=> ( hoasinduction_lem3 = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( X56 = X57 )
        | ( ( d2subst @ X56 )
         != ( d2subst @ X57 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( sP56 = $true )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ! [X5: term > $o,X6: term] :
          ( ( $true
            = ( sP55 @ X5 ) )
          | ? [X7: term] :
              ( ( $true
                = ( X5 @ X7 ) )
              & ( ( X5 @ ( lam @ X7 ) )
               != $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ? [X10: term] :
              ( ( $true
               != ( X5 @ X10 ) )
              & ( $true
                = ( var @ X10 ) ) ) )
    <=> ( induction = $true ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
    <=> ( axshiftcons = $true ) )
    & ( ( substmonoid_lthm = $true )
    <=> ( ? [X61: subst] :
            ( ( comp @ X61 @ id )
           != X61 )
        | ( ! [X63: subst] :
              ( ( comp @ id @ X63 )
              = X63 )
          & ! [X62: subst] :
              ( ( comp @ X62 @ id )
              = X62 ) )
        | ? [X60: subst] :
            ( ( comp @ id @ X60 )
           != X60 ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( sP54 = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ( $true = sP52 ) )
    & ( ( sP51 = $true )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
    <=> ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
    <=> ( $true = sP45 ) )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( induction2lem_gthm = $true )
    & ( ( $true = sP43 )
    <=> ( induction2lem_lthm = $true ) )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ? [X254: term,X255: term] :
              ( ( $true
                = ( X248 @ id @ X255 @ id ) )
              & ( $true
                = ( X248 @ id @ X254 @ id ) )
              & ( $true
               != ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) )
          | ( ( sP39 @ X248 )
            = $true ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
              = ( X110 @ one ) )
            | ( $true
             != ( X109 @ X108 ) )
            | ? [X112: term] :
                ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
               != ( X110 @ X112 ) ) )
        | ? [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
           != X107 ) ) )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
        ? [X3: term > $o] :
        ! [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
          = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( axclos = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( X207 = X208 )
        | ( ( d2term @ X208 )
         != ( d2term @ X207 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
    <=> ( $true = sP38 ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( ? [X505: term,X506: term,X507: term,X508: term] :
            ( ( X505 != X506 )
            & ( ( ap @ X506 @ X508 )
              = ( ap @ X505 @ X507 ) ) )
        | ! [X509: term,X510: term,X511: term,X512: term] :
            ( ( X510 = X512 )
            | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
             != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
        | ? [X504: term] :
            ( ( sub @ X504 @ id )
           != X504 ) )
    <=> ( hoasapinj1_lthm = $true ) )
    & ( ( axidl = $true )
    <=> ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X283: term] :
        ? [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
          = ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP36 )
    <=> ( hoasinduction_lem3a = $true ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
    <=> ( hoasapinj1 = $true ) )
    & ( ( termmset_lthm = $true )
    <=> ( ! [X294: term] :
            ( ( sub @ X294 @ id )
            = X294 )
        | ? [X293: term] :
            ( ( sub @ X293 @ id )
           != X293 ) ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
    <=> ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X141: term] :
        ? [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
          = ( sub @ X141 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b = $true ) )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
           != ( X27 @ X28 ) )
          | ? [X31: term] :
              ( ( X29 @ X31 )
             != ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) ) ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
    <=> ( sP35 = $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP26 )
    <=> ( induction2_lthm = $true ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
    <=> ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) ) )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
    <=> ( axscons = $true ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
    <=> ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X443: subst,X444: term > $o,X445: term] :
        ? [X446: term > $o] :
        ! [X447: term] :
          ( ( X446 @ X447 )
          = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( $true = sP22 )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ? [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
             != ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( axmap = $true )
    & ( ! [X186: subst > term > subst > $o] :
        ? [X187: term > $o] :
        ! [X188: term] :
          ( ( X186 @ id @ X188 @ id )
          = ( X187 @ X188 ) )
    <=> ( hoasinduction_lem0_lthm = $true ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ( $true = sP21 ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ( ? [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
           != X34 )
        | ? [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
           != X32 )
        | ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
            ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
              = $true )
            | ( $true
             != ( X37 @ X36 ) ) ) )
    <=> ( pushprop_lem1_lthm = $true ) )
    & ( ( induction2 = $true )
    <=> ( $true = sP20 ) )
    & ( ( hoasinduction_lem3_lthm = $true )
    <=> ( $true = sP18 ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
    <=> ( $true = sP15 ) )
    & ( ( sP12 = $true )
    <=> ( hoasinduction_lem3v2a = $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X385: term] :
        ? [X386: subst > term > term] :
        ! [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
          = ( X386 @ X387 @ X388 ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
    <=> ( $true = sP11 ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
    <=> ( $true = sP9 ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ( $true = sP7 ) )
    & ( ( $true = sP5 )
    <=> ( hoasinduction_no_psi_cond_lthm = $true ) )
    & ( ( $true = sP0 )
    <=> ( hoasinduction_lem3aaa = $true ) )
    & ( ( termmset = $true )
    <=> ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
    <=> ( axvarcons = $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            | ( X300 = X302 ) )
        | ? [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
              = ( ap @ X296 @ X295 ) )
            & ( X295 != X298 ) ) ) )
    & ( ( hoasinduction_lem0 = $true )
    <=> ! [X121: subst > term > subst > $o] :
        ? [X122: term > $o] :
        ! [X123: term] :
          ( ( X121 @ id @ X123 @ id )
          = ( X122 @ X123 ) ) )
    & ( ( hoaslaminj = $true )
    <=> ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ? [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
             != ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ? [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
             != ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
    <=> ! [X303: term] :
        ? [X304: subst > term > term] :
        ! [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
          = ( X304 @ X305 @ X306 ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
    <=> ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 ) ),
    inference(definition_folding,[status(thm)],[f13,f72,f71,f70,f69,f68,f67,f66,f65,f64,f63,f62,f61,f60,f59,f58,f57,f56,f55,f54,f53,f52,f51,f50,f49,f48,f47,f46,f45,f44,f43,f42,f41,f40,f39,f38,f37,f36,f35,f34,f33,f32,f31,f30,f29,f28,f27,f26,f25,f24,f23,f22,f21,f20,f19,f18,f17,f16,f15,f14]) ).

thf(f14,plain,
    ( ( $true = sP0 )
  <=> ! [X15: subst > term > subst > $o,X16: term] :
        ( ? [X26: term] :
            ( ( $true
             != ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) )
            & ( $true
              = ( X15 @ id @ X26 @ id ) ) )
        | ? [X17: term,X18: subst > term > term] :
            ( ! [X23: subst,X24: subst,X25: term] :
                ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
            & ! [X20: subst,X21: subst,X22: term] :
                ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
            & ! [X19: term] :
                ( ( $true
                 != ( X15 @ id @ X19 @ id ) )
                | ( $true
                  = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) ) )
            & ( $true
             != ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) ) )
        | ( $true
          = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f15,plain,
    ! [X347: subst > term > subst > $o] :
      ( ( ( sP1 @ X347 )
        = $true )
    <=> ? [X348: term,X349: term] :
          ( ( $true
            = ( X347 @ id @ X349 @ id ) )
          & ( $true
            = ( X347 @ id @ X348 @ id ) )
          & ( ( X347 @ id @ ( ap @ ( sub @ X348 @ id ) @ X349 ) @ id )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f16,plain,
    ! [X328: term > $o] :
      ( ( $true
        = ( sP2 @ X328 ) )
    <=> ! [X333: term,X334: term] :
          ( ( $true
           != ( X328 @ X334 ) )
          | ( $true
           != ( X328 @ X333 ) )
          | ( ( X328 @ ( ap @ X333 @ X334 ) )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f17,plain,
    ( ( sP3 = $true )
  <=> ? [X336: subst > term > subst > $o,X337: term > $o,X338: term] :
        ( ! [X344: term] :
            ( ( $true
              = ( X337 @ ( sub @ X338 @ ( push @ X344 @ id ) ) ) )
            | ( $true
             != ( X337 @ X344 ) ) )
        & ! [X345: term] :
            ( ( X336 @ id @ X345 @ id )
            = ( X337 @ X345 ) )
        & ( ( X337 @ ( lam @ X338 ) )
         != $true )
        & ! [X339: subst > term > term] :
            ( ? [X340: term] :
                ( ( $true
                 != ( X336 @ id @ ( X339 @ id @ X340 ) @ id ) )
                & ( $true
                  = ( X336 @ id @ X340 @ id ) ) )
            | ? [X341: subst,X342: subst,X343: term] :
                ( ( sub @ ( X339 @ X341 @ X343 ) @ X342 )
               != ( X339 @ ( comp @ X341 @ X342 ) @ ( sub @ X343 @ X342 ) ) )
            | ( $true
              = ( X336 @ id @ ( lam @ ( X339 @ sh @ one ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f18,plain,
    ( ( $true = sP4 )
  <=> ! [X346: term,X347: subst > term > subst > $o] :
        ( ? [X350: subst > term > term] :
            ( ! [X354: term] :
                ( ( ( X347 @ id @ ( X350 @ id @ X354 ) @ id )
                  = $true )
                | ( $true
                 != ( X347 @ id @ X354 @ id ) ) )
            & ( ( X347 @ id @ ( lam @ ( X350 @ sh @ one ) ) @ id )
             != $true )
            & ! [X351: term,X352: subst,X353: subst] :
                ( ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) )
                = ( sub @ ( X350 @ X353 @ X351 ) @ X352 ) ) )
        | ( ( sP1 @ X347 )
          = $true )
        | ( ( X347 @ id @ X346 @ id )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f19,plain,
    ( ( $true = sP5 )
  <=> ( ? [X328: term > $o,X329: term] :
          ( ( $true
            = ( sP2 @ X328 ) )
          & ( $true
           != ( X328 @ X329 ) )
          & ! [X331: term] :
              ( ? [X332: term] :
                  ( ( $true
                   != ( X328 @ ( sub @ X331 @ ( push @ X332 @ id ) ) ) )
                  & ( $true
                    = ( X328 @ X332 ) ) )
              | ( ( X328 @ ( lam @ X331 ) )
                = $true ) )
          & ! [X330: term] :
              ( ( $true
               != ( var @ X330 ) )
              | ( $true
                = ( X328 @ X330 ) ) ) )
      | ( sP3 = $true )
      | ? [X325: subst > term > subst > $o] :
        ! [X326: term > $o] :
        ? [X327: term] :
          ( ( X325 @ id @ X327 @ id )
         != ( X326 @ X327 ) )
      | ( $true = sP4 )
      | ? [X335: term] :
          ( ( sub @ X335 @ id )
         != X335 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f20,plain,
    ! [X358: subst > term > subst > $o] :
      ( ( $true
        = ( sP6 @ X358 ) )
    <=> ? [X360: subst > term > term] :
          ( ! [X361: term] :
              ( ( $true
               != ( X358 @ id @ X361 @ id ) )
              | ( $true
                = ( X358 @ id @ ( X360 @ id @ X361 ) @ id ) ) )
          & ! [X362: subst,X363: term,X364: subst] :
              ( ( X360 @ ( comp @ X362 @ X364 ) @ ( sub @ X363 @ X364 ) )
              = ( sub @ ( X360 @ X362 @ X363 ) @ X364 ) )
          & ( ( X358 @ id @ ( lam @ ( X360 @ sh @ one ) ) @ id )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f21,plain,
    ( ( $true = sP7 )
  <=> ! [X356: term,X357: term > $o,X358: subst > term > subst > $o] :
        ( ( ( X357 @ ( lam @ X356 ) )
          = $true )
        | ( $true
          = ( sP6 @ X358 ) )
        | ? [X366: subst,X367: subst,X368: subst,X369: term] :
            ( ( $true
              = ( X358 @ X368 @ X369 @ ( comp @ X366 @ X367 ) ) )
            & ( $true
             != ( X358 @ ( comp @ X368 @ X366 ) @ ( sub @ X369 @ X366 ) @ X367 ) ) )
        | ? [X370: subst,X371: subst,X372: subst,X373: term] :
            ( ( ( X358 @ X371 @ X373 @ ( comp @ X370 @ X372 ) )
             != $true )
            & ( $true
              = ( X358 @ ( comp @ X371 @ X370 ) @ ( sub @ X373 @ X370 ) @ X372 ) ) )
        | ? [X359: term] :
            ( ( X358 @ id @ X359 @ id )
           != ( X357 @ X359 ) )
        | ? [X365: term] :
            ( ( $true
             != ( X357 @ ( sub @ X356 @ ( push @ X365 @ id ) ) ) )
            & ( ( X357 @ X365 )
              = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f22,plain,
    ! [X149: subst > term > subst > $o] :
      ( ( $true
        = ( sP8 @ X149 ) )
    <=> ? [X161: subst > term > term] :
          ( ! [X165: term] :
              ( ( $true
               != ( X149 @ id @ X165 @ id ) )
              | ( $true
                = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) )
          & ( $true
           != ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) )
          & ! [X162: subst,X163: subst,X164: term] :
              ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
              = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f23,plain,
    ( ( $true = sP9 )
  <=> ( ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
          ( ( $true
            = ( X151 @ ( lam @ X150 ) ) )
          | ( $true
            = ( sP8 @ X149 ) )
          | ? [X153: subst,X154: term,X155: subst,X156: subst] :
              ( ( $true
               != ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) )
              & ( $true
                = ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) ) )
          | ? [X166: term] :
              ( ( X149 @ id @ X166 @ id )
             != ( X151 @ X166 ) )
          | ? [X157: subst,X158: subst,X159: term,X160: subst] :
              ( ( $true
               != ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
              & ( $true
                = ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
          | ? [X152: term] :
              ( ( $true
               != ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) )
              & ( $true
                = ( X151 @ X152 ) ) ) )
      | ? [X148: term] :
          ( ( sub @ X148 @ id )
         != X148 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f24,plain,
    ! [X262: term > $o] :
      ( ( $true
        = ( sP10 @ X262 ) )
    <=> ? [X263: term,X264: term] :
          ( ( $true
            = ( X262 @ X263 ) )
          & ( $true
            = ( X262 @ X264 ) )
          & ( $true
           != ( X262 @ ( ap @ X263 @ X264 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f25,plain,
    ( ( $true = sP11 )
  <=> ! [X260: subst,X261: term,X262: term > $o] :
        ( ? [X266: term] :
            ( ( $true
             != ( X262 @ ( lam @ X266 ) ) )
            & ! [X267: term] :
                ( ( $true
                  = ( X262 @ ( sub @ X266 @ ( push @ X267 @ id ) ) ) )
                | ( $true
                 != ( X262 @ X267 ) ) ) )
        | ( $true
          = ( X262 @ ( sub @ X261 @ X260 ) ) )
        | ? [X265: term] :
            ( ( $true
              = ( var @ X265 ) )
            & ( $true
             != ( X262 @ ( sub @ X265 @ X260 ) ) ) )
        | ( $true
          = ( sP10 @ X262 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f26,plain,
    ( ( sP12 = $true )
  <=> ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
        ( ? [X86: subst > term > term] :
            ( ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
             != $true )
            & ! [X87: term,X88: subst,X89: subst] :
                ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
            & ! [X90: term] :
                ( ( $true
                  = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) )
                | ( $true
                 != ( X82 @ id @ X90 @ id ) ) ) )
        | ? [X85: term] :
            ( ( X83 @ X85 )
           != ( X82 @ id @ X85 @ id ) )
        | ( $true
          = ( X83 @ ( lam @ X81 ) ) )
        | ? [X84: term] :
            ( ( $true
             != ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) )
            & ( $true
              = ( X83 @ X84 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f27,plain,
    ! [X189: subst > term > subst > $o] :
      ( ( $true
        = ( sP13 @ X189 ) )
    <=> ? [X193: subst > term > term] :
          ( ! [X194: subst,X195: subst,X196: term] :
              ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
              = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
          & ( $true
           != ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) )
          & ! [X197: term] :
              ( ( ( X189 @ id @ X197 @ id )
               != $true )
              | ( $true
                = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f28,plain,
    ! [X189: subst > term > subst > $o] :
      ( ( $true
        = ( sP14 @ X189 ) )
    <=> ? [X191: term,X192: term] :
          ( ( $true
           != ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) )
          & ( $true
            = ( X189 @ id @ X192 @ id ) )
          & ( ( X189 @ id @ X191 @ id )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f29,plain,
    ( ( $true = sP15 )
  <=> ! [X189: subst > term > subst > $o,X190: term] :
        ( ? [X198: term] :
            ( ( $true
             != ( X189 @ id @ X198 @ id ) )
            & ( $true
              = ( var @ ( sub @ X198 @ id ) ) ) )
        | ? [X199: subst,X200: subst,X201: subst,X202: term] :
            ( ( $true
             != ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) )
            & ( $true
              = ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) ) )
        | ( $true
          = ( X189 @ id @ X190 @ id ) )
        | ( $true
          = ( sP14 @ X189 ) )
        | ( $true
          = ( sP13 @ X189 ) )
        | ? [X203: subst,X204: subst,X205: term,X206: subst] :
            ( ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
             != $true )
            & ( $true
              = ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f30,plain,
    ! [X524: subst > term > subst > $o] :
      ( ( ( sP16 @ X524 )
        = $true )
    <=> ? [X533: subst > term > term] :
          ( ! [X534: term] :
              ( ( $true
                = ( X524 @ id @ ( X533 @ id @ X534 ) @ id ) )
              | ( $true
               != ( X524 @ id @ X534 @ id ) ) )
          & ( $true
           != ( X524 @ id @ ( lam @ ( X533 @ sh @ one ) ) @ id ) )
          & ! [X535: subst,X536: term,X537: subst] :
              ( ( sub @ ( X533 @ X537 @ X536 ) @ X535 )
              = ( X533 @ ( comp @ X537 @ X535 ) @ ( sub @ X536 @ X535 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f31,plain,
    ( ( $true = sP17 )
  <=> ? [X515: term,X516: subst > term > subst > $o] :
        ( ! [X522: term] :
            ( ( $true
              = ( X516 @ id @ ( sub @ X515 @ ( push @ X522 @ id ) ) @ id ) )
            | ( $true
             != ( X516 @ id @ X522 @ id ) ) )
        & ( ( X516 @ id @ ( lam @ ( sub @ X515 @ ( push @ one @ sh ) ) ) @ id )
         != $true )
        & ! [X517: subst > term > term] :
            ( ( ( X516 @ id @ ( lam @ ( X517 @ sh @ one ) ) @ id )
              = $true )
            | ? [X518: term] :
                ( ( $true
                  = ( X516 @ id @ X518 @ id ) )
                & ( ( X516 @ id @ ( X517 @ id @ X518 ) @ id )
                 != $true ) )
            | ? [X519: subst,X520: term,X521: subst] :
                ( ( X517 @ ( comp @ X521 @ X519 ) @ ( sub @ X520 @ X519 ) )
               != ( sub @ ( X517 @ X521 @ X520 ) @ X519 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f32,plain,
    ( ( $true = sP18 )
  <=> ( ! [X523: term,X524: subst > term > subst > $o] :
          ( ? [X538: term] :
              ( ( $true
               != ( X524 @ id @ ( sub @ X523 @ ( push @ X538 @ id ) ) @ id ) )
              & ( $true
                = ( X524 @ id @ X538 @ id ) ) )
          | ( ( X524 @ id @ ( lam @ X523 ) @ id )
            = $true )
          | ? [X525: term,X526: subst,X527: subst,X528: subst] :
              ( ( ( X524 @ X527 @ X525 @ ( comp @ X526 @ X528 ) )
               != $true )
              & ( $true
                = ( X524 @ ( comp @ X527 @ X526 ) @ ( sub @ X525 @ X526 ) @ X528 ) ) )
          | ? [X529: term,X530: subst,X531: subst,X532: subst] :
              ( ( $true
                = ( X524 @ X532 @ X529 @ ( comp @ X530 @ X531 ) ) )
              & ( $true
               != ( X524 @ ( comp @ X532 @ X530 ) @ ( sub @ X529 @ X530 ) @ X531 ) ) )
          | ( ( sP16 @ X524 )
            = $true ) )
      | ? [X514: term] :
          ( ( sub @ X514 @ id )
         != X514 )
      | ( $true = sP17 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f33,plain,
    ! [X459: term > $o] :
      ( ( $true
        = ( sP19 @ X459 ) )
    <=> ? [X462: term,X463: term] :
          ( ( $true
            = ( X459 @ X463 ) )
          & ( ( X459 @ X462 )
            = $true )
          & ( $true
           != ( X459 @ ( ap @ X463 @ X462 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f34,plain,
    ( ( $true = sP20 )
  <=> ! [X458: term,X459: term > $o] :
        ( ( $true
          = ( sP19 @ X459 ) )
        | ( ( X459 @ X458 )
          = $true )
        | ? [X460: term] :
            ( ! [X461: term] :
                ( ( $true
                 != ( X459 @ X461 ) )
                | ( $true
                  = ( X459 @ ( sub @ X460 @ ( push @ X461 @ id ) ) ) ) )
            & ( ( X459 @ ( lam @ X460 ) )
             != $true ) )
        | ? [X464: term] :
            ( ( ( X459 @ X464 )
             != $true )
            & ( $true
              = ( var @ X464 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f35,plain,
    ( ( $true = sP21 )
  <=> ! [X375: subst > term > subst > $o,X376: term] :
        ( ( $true
          = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
        | ? [X382: term] :
            ( ( $true
              = ( X375 @ id @ X382 @ id ) )
            & ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
             != $true ) )
        | ? [X377: subst > term > term] :
            ( ! [X378: term] :
                ( ( $true
                 != ( X375 @ id @ X378 @ id ) )
                | ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                  = $true ) )
            & ! [X379: term,X380: subst,X381: subst] :
                ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
            & ( $true
             != ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f36,plain,
    ( ( $true = sP22 )
  <=> ( ? [X268: term] :
        ! [X269: subst > term > term] :
        ? [X270: subst,X271: term] :
          ( ( sub @ X268 @ ( push @ X271 @ X270 ) )
         != ( X269 @ X270 @ X271 ) )
      | ! [X273: term,X274: term > $o,X275: subst > term > subst > $o] :
          ( ? [X276: term] :
              ( ( X274 @ X276 )
             != ( X275 @ id @ X276 @ id ) )
          | ? [X277: term] :
              ( ( $true
               != ( X274 @ ( sub @ X273 @ ( push @ X277 @ id ) ) ) )
              & ( ( X274 @ X277 )
                = $true ) )
          | ( ( X274 @ ( lam @ X273 ) )
            = $true )
          | ? [X278: subst > term > term] :
              ( ( $true
               != ( X275 @ id @ ( lam @ ( X278 @ sh @ one ) ) @ id ) )
              & ! [X282: term] :
                  ( ( ( X275 @ id @ ( X278 @ id @ X282 ) @ id )
                    = $true )
                  | ( ( X275 @ id @ X282 @ id )
                   != $true ) )
              & ! [X279: subst,X280: subst,X281: term] :
                  ( ( X278 @ ( comp @ X280 @ X279 ) @ ( sub @ X281 @ X279 ) )
                  = ( sub @ ( X278 @ X280 @ X281 ) @ X279 ) ) ) )
      | ? [X272: term] :
          ( ( sub @ X272 @ id )
         != X272 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f37,plain,
    ! [X66: term > $o] :
      ( ( ( sP23 @ X66 )
        = $true )
    <=> ! [X68: term,X69: term] :
          ( ( ( X66 @ ( ap @ X68 @ X69 ) )
            = $true )
          | ( ( X66 @ X68 )
           != $true )
          | ( ( X66 @ X69 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f38,plain,
    ! [X74: term > $o] :
      ( ( $true
        = ( sP24 @ X74 ) )
    <=> ? [X78: term,X79: term] :
          ( ( $true
            = ( X74 @ X78 ) )
          & ( ( X74 @ ( ap @ X79 @ X78 ) )
           != $true )
          & ( $true
            = ( X74 @ X79 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f39,plain,
    ( ( sP25 = $true )
  <=> ! [X73: term,X74: term > $o] :
        ( ( $true
          = ( X74 @ X73 ) )
        | ? [X75: term] :
            ( ( $true
             != ( X74 @ ( lam @ X75 ) ) )
            & ! [X76: term] :
                ( ( $true
                  = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                | ( $true
                 != ( X74 @ X76 ) ) ) )
        | ( $true
          = ( sP24 @ X74 ) )
        | ? [X77: term] :
            ( ( $true
              = ( var @ X77 ) )
            & ( $true
             != ( X74 @ X77 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f40,plain,
    ( ( $true = sP26 )
  <=> ( ? [X64: term] :
          ( ( sub @ X64 @ id )
         != X64 )
      | ( sP25 = $true )
      | ? [X65: subst,X66: term > $o,X67: term] :
          ( ( $true
           != ( X66 @ ( sub @ X67 @ X65 ) ) )
          & ( ( sP23 @ X66 )
            = $true )
          & ! [X72: term] :
              ( ( ( var @ X72 )
               != $true )
              | ( $true
                = ( X66 @ ( sub @ X72 @ X65 ) ) ) )
          & ! [X70: term] :
              ( ( $true
                = ( X66 @ ( lam @ X70 ) ) )
              | ? [X71: term] :
                  ( ( $true
                    = ( X66 @ X71 ) )
                  & ( $true
                   != ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f41,plain,
    ! [X425: subst > term > subst > $o] :
      ( ( $true
        = ( sP27 @ X425 ) )
    <=> ? [X432: term,X433: term] :
          ( ( ( X425 @ id @ X433 @ id )
            = $true )
          & ( $true
           != ( X425 @ id @ ( ap @ ( sub @ X433 @ id ) @ X432 ) @ id ) )
          & ( $true
            = ( X425 @ id @ X432 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f42,plain,
    ! [X425: subst > term > subst > $o] :
      ( ( $true
        = ( sP28 @ X425 ) )
    <=> ? [X434: subst > term > term] :
          ( ( $true
           != ( X425 @ id @ ( lam @ ( X434 @ sh @ one ) ) @ id ) )
          & ! [X438: term] :
              ( ( $true
               != ( X425 @ id @ X438 @ id ) )
              | ( $true
                = ( X425 @ id @ ( X434 @ id @ X438 ) @ id ) ) )
          & ! [X435: subst,X436: term,X437: subst] :
              ( ( X434 @ ( comp @ X437 @ X435 ) @ ( sub @ X436 @ X435 ) )
              = ( sub @ ( X434 @ X437 @ X436 ) @ X435 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f43,plain,
    ! [X410: subst > term > subst > $o] :
      ( ( $true
        = ( sP29 @ X410 ) )
    <=> ! [X411: subst > term > term] :
          ( ? [X415: term] :
              ( ( ( X410 @ id @ X415 @ id )
                = $true )
              & ( ( X410 @ id @ ( X411 @ id @ X415 ) @ id )
               != $true ) )
          | ( $true
            = ( X410 @ id @ ( lam @ ( X411 @ sh @ one ) ) @ id ) )
          | ? [X412: subst,X413: subst,X414: term] :
              ( ( X411 @ ( comp @ X412 @ X413 ) @ ( sub @ X414 @ X413 ) )
             != ( sub @ ( X411 @ X412 @ X414 ) @ X413 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f44,plain,
    ! [X390: term > $o] :
      ( ( ( sP30 @ X390 )
        = $true )
    <=> ! [X393: term,X394: term] :
          ( ( $true
           != ( X390 @ X393 ) )
          | ( $true
            = ( X390 @ ( ap @ X393 @ X394 ) ) )
          | ( ( X390 @ X394 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f45,plain,
    ! [X398: subst > term > subst > $o] :
      ( ( $true
        = ( sP31 @ X398 ) )
    <=> ! [X403: term,X404: term] :
          ( ( ( X398 @ id @ X404 @ id )
           != $true )
          | ( $true
            = ( X398 @ id @ ( ap @ ( sub @ X404 @ id ) @ X403 ) @ id ) )
          | ( ( X398 @ id @ X403 @ id )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f46,plain,
    ( ( $true = sP32 )
  <=> ? [X409: term,X410: subst > term > subst > $o] :
        ( ! [X421: subst,X422: subst,X423: subst,X424: term] :
            ( ( ( X410 @ ( comp @ X422 @ X421 ) @ ( sub @ X424 @ X421 ) @ X423 )
             != $true )
            | ( ( X410 @ X422 @ X424 @ ( comp @ X421 @ X423 ) )
              = $true ) )
        & ! [X417: subst,X418: subst,X419: subst,X420: term] :
            ( ( $true
             != ( X410 @ X417 @ X420 @ ( comp @ X418 @ X419 ) ) )
            | ( $true
              = ( X410 @ ( comp @ X417 @ X418 ) @ ( sub @ X420 @ X418 ) @ X419 ) ) )
        & ! [X416: term] :
            ( ( $true
             != ( X410 @ id @ X416 @ id ) )
            | ( $true
              = ( X410 @ id @ ( sub @ X409 @ ( push @ X416 @ id ) ) @ id ) ) )
        & ( $true
         != ( X410 @ id @ ( lam @ X409 ) @ id ) )
        & ( $true
          = ( sP29 @ X410 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f47,plain,
    ( ( $true = sP33 )
  <=> ! [X425: subst > term > subst > $o,X426: term] :
        ( ? [X431: term] :
            ( ( $true
              = ( var @ ( sub @ X431 @ id ) ) )
            & ( ( X425 @ id @ X431 @ id )
             != $true ) )
        | ( $true
          = ( sP28 @ X425 ) )
        | ? [X439: subst,X440: term,X441: subst,X442: subst] :
            ( ( $true
             != ( X425 @ ( comp @ X441 @ X442 ) @ ( sub @ X440 @ X442 ) @ X439 ) )
            & ( ( X425 @ X441 @ X440 @ ( comp @ X442 @ X439 ) )
              = $true ) )
        | ( $true
          = ( sP27 @ X425 ) )
        | ( $true
          = ( X425 @ id @ X426 @ id ) )
        | ? [X427: subst,X428: subst,X429: subst,X430: term] :
            ( ( ( X425 @ ( comp @ X429 @ X428 ) @ ( sub @ X430 @ X428 ) @ X427 )
              = $true )
            & ( $true
             != ( X425 @ X429 @ X430 @ ( comp @ X428 @ X427 ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f48,plain,
    ( ( $true = sP34 )
  <=> ? [X389: term,X390: term > $o] :
        ( ( $true
         != ( X390 @ X389 ) )
        & ! [X391: term] :
            ( ( ( X390 @ ( lam @ X391 ) )
              = $true )
            | ? [X392: term] :
                ( ( ( X390 @ X392 )
                  = $true )
                & ( $true
                 != ( X390 @ ( sub @ X391 @ ( push @ X392 @ id ) ) ) ) ) )
        & ( ( sP30 @ X390 )
          = $true )
        & ! [X395: term] :
            ( ( $true
             != ( var @ X395 ) )
            | ( $true
              = ( X390 @ X395 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f49,plain,
    ( ( sP35 = $true )
  <=> ( ? [X396: term,X397: term,X398: subst > term > subst > $o] :
          ( ( $true
            = ( sP31 @ X398 ) )
          & ( $true
           != ( X398 @ id @ ( ap @ X396 @ X397 ) @ id ) )
          & ( $true
            = ( X398 @ id @ X397 @ id ) )
          & ! [X399: subst,X400: subst,X401: subst,X402: term] :
              ( ( $true
               != ( X398 @ X401 @ X402 @ ( comp @ X400 @ X399 ) ) )
              | ( $true
                = ( X398 @ ( comp @ X401 @ X400 ) @ ( sub @ X402 @ X400 ) @ X399 ) ) )
          & ! [X405: term,X406: subst,X407: subst,X408: subst] :
              ( ( $true
               != ( X398 @ ( comp @ X407 @ X408 ) @ ( sub @ X405 @ X408 ) @ X406 ) )
              | ( $true
                = ( X398 @ X407 @ X405 @ ( comp @ X408 @ X406 ) ) ) )
          & ( ( X398 @ id @ X396 @ id )
            = $true ) )
      | ( $true = sP34 )
      | ( $true = sP32 )
      | ( $true = sP33 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f50,plain,
    ( ( $true = sP36 )
  <=> ! [X450: term,X451: subst > term > subst > $o] :
        ( ( $true
          = ( X451 @ id @ ( lam @ X450 ) @ id ) )
        | ? [X452: term] :
            ( ( ( X451 @ id @ ( sub @ X450 @ ( push @ X452 @ id ) ) @ id )
             != $true )
            & ( $true
              = ( X451 @ id @ X452 @ id ) ) )
        | ? [X453: subst > term > term] :
            ( ! [X455: subst,X456: subst,X457: term] :
                ( ( X453 @ ( comp @ X455 @ X456 ) @ ( sub @ X457 @ X456 ) )
                = ( sub @ ( X453 @ X455 @ X457 ) @ X456 ) )
            & ( $true
             != ( X451 @ id @ ( lam @ ( X453 @ sh @ one ) ) @ id ) )
            & ! [X454: term] :
                ( ( $true
                 != ( X451 @ id @ X454 @ id ) )
                | ( $true
                  = ( X451 @ id @ ( X453 @ id @ X454 ) @ id ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f51,plain,
    ! [X235: subst > term > subst > $o] :
      ( ( $true
        = ( sP37 @ X235 ) )
    <=> ? [X241: term,X242: term] :
          ( ( $true
           != ( X235 @ id @ ( ap @ ( sub @ X242 @ id ) @ X241 ) @ id ) )
          & ( ( X235 @ id @ X241 @ id )
            = $true )
          & ( $true
            = ( X235 @ id @ X242 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f52,plain,
    ( ( $true = sP38 )
  <=> ! [X234: term,X235: subst > term > subst > $o,X236: term] :
        ( ? [X243: term,X244: subst,X245: subst,X246: subst] :
            ( ( $true
             != ( X235 @ X244 @ X243 @ ( comp @ X246 @ X245 ) ) )
            & ( $true
              = ( X235 @ ( comp @ X244 @ X246 ) @ ( sub @ X243 @ X246 ) @ X245 ) ) )
        | ? [X237: subst,X238: subst,X239: term,X240: subst] :
            ( ( $true
             != ( X235 @ ( comp @ X237 @ X240 ) @ ( sub @ X239 @ X240 ) @ X238 ) )
            & ( $true
              = ( X235 @ X237 @ X239 @ ( comp @ X240 @ X238 ) ) ) )
        | ( $true
          = ( sP37 @ X235 ) )
        | ( $true
          = ( X235 @ id @ ( ap @ X234 @ X236 ) @ id ) )
        | ( $true
         != ( X235 @ id @ X236 @ id ) )
        | ( $true
         != ( X235 @ id @ X234 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f53,plain,
    ! [X248: subst > term > subst > $o] :
      ( ( ( sP39 @ X248 )
        = $true )
    <=> ? [X249: subst > term > term] :
          ( ( ( X248 @ id @ ( lam @ ( X249 @ sh @ one ) ) @ id )
           != $true )
          & ! [X250: term] :
              ( ( $true
                = ( X248 @ id @ ( X249 @ id @ X250 ) @ id ) )
              | ( $true
               != ( X248 @ id @ X250 @ id ) ) )
          & ! [X251: subst,X252: term,X253: subst] :
              ( ( sub @ ( X249 @ X253 @ X252 ) @ X251 )
              = ( X249 @ ( comp @ X253 @ X251 ) @ ( sub @ X252 @ X251 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f54,plain,
    ! [X179: term > $o] :
      ( ( $true
        = ( sP40 @ X179 ) )
    <=> ? [X182: term,X183: term] :
          ( ( $true
            = ( X179 @ X183 ) )
          & ( $true
            = ( X179 @ X182 ) )
          & ( $true
           != ( X179 @ ( ap @ X183 @ X182 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f55,plain,
    ! [X173: term > $o] :
      ( ( $true
        = ( sP41 @ X173 ) )
    <=> ! [X176: term,X177: term] :
          ( ( $true
           != ( X173 @ X177 ) )
          | ( ( X173 @ ( ap @ X177 @ X176 ) )
            = $true )
          | ( $true
           != ( X173 @ X176 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f56,plain,
    ( ( $true = sP42 )
  <=> ! [X178: subst,X179: term > $o,X180: term] :
        ( ( $true
          = ( sP40 @ X179 ) )
        | ? [X184: term] :
            ( ! [X185: term] :
                ( ( $true
                  = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                | ( $true
                 != ( X179 @ X185 ) ) )
            & ( $true
             != ( X179 @ ( lam @ X184 ) ) ) )
        | ( $true
          = ( X179 @ ( sub @ X180 @ X178 ) ) )
        | ? [X181: term] :
            ( ( $true
             != ( X179 @ ( sub @ X181 @ X178 ) ) )
            & ( $true
              = ( var @ X181 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f57,plain,
    ( ( $true = sP43 )
  <=> ( ? [X169: subst,X170: term] :
          ( ( comp @ sh @ ( push @ X170 @ X169 ) )
         != X169 )
      | ? [X171: subst] :
          ( ( comp @ X171 @ id )
         != X171 )
      | ? [X167: subst,X168: term] :
          ( ( sub @ one @ ( push @ X168 @ X167 ) )
         != X168 )
      | ? [X172: term,X173: term > $o] :
          ( ! [X175: term] :
              ( ( $true
               != ( var @ X175 ) )
              | ( ( X173 @ X175 )
                = $true ) )
          & ! [X174: term] :
              ( ( ( X173 @ X174 )
               != $true )
              | ( $true
                = ( X173 @ ( lam @ X174 ) ) ) )
          & ( $true
           != ( X173 @ X172 ) )
          & ( $true
            = ( sP41 @ X173 ) ) )
      | ( $true = sP42 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f58,plain,
    ! [X41: subst > term > subst > $o] :
      ( ( $true
        = ( sP44 @ X41 ) )
    <=> ? [X45: term,X46: term] :
          ( ( $true
            = ( X41 @ id @ X46 @ id ) )
          & ( $true
           != ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) )
          & ( $true
            = ( X41 @ id @ X45 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f59,plain,
    ( ( $true = sP45 )
  <=> ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
        ( ? [X52: subst,X53: subst,X54: term,X55: subst] :
            ( ( $true
              = ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) )
            & ( $true
             != ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) ) )
        | ? [X48: term,X49: subst,X50: subst,X51: subst] :
            ( ( $true
             != ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
            & ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
              = $true ) )
        | ( $true
         != ( X43 @ X42 ) )
        | ( $true
          = ( X43 @ ( ap @ X42 @ X44 ) ) )
        | ( $true
         != ( X43 @ X44 ) )
        | ( $true
          = ( sP44 @ X41 ) )
        | ? [X47: term] :
            ( ( X43 @ X47 )
           != ( X41 @ id @ X47 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f60,plain,
    ! [X468: term > $o] :
      ( ( $true
        = ( sP46 @ X468 ) )
    <=> ! [X472: term,X473: term] :
          ( ( ( X468 @ X472 )
           != $true )
          | ( $true
            = ( X468 @ ( ap @ X472 @ X473 ) ) )
          | ( $true
           != ( X468 @ X473 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f61,plain,
    ! [X486: subst > term > subst > $o] :
      ( ( $true
        = ( sP47 @ X486 ) )
    <=> ? [X492: subst > term > term] :
          ( ! [X496: term] :
              ( ( $true
               != ( X486 @ id @ X496 @ id ) )
              | ( ( X486 @ id @ ( X492 @ id @ X496 ) @ id )
                = $true ) )
          & ( $true
           != ( X486 @ id @ ( lam @ ( X492 @ sh @ one ) ) @ id ) )
          & ! [X493: subst,X494: subst,X495: term] :
              ( ( X492 @ ( comp @ X493 @ X494 ) @ ( sub @ X495 @ X494 ) )
              = ( sub @ ( X492 @ X493 @ X495 ) @ X494 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f62,plain,
    ! [X486: subst > term > subst > $o] :
      ( ( $true
        = ( sP48 @ X486 ) )
    <=> ? [X501: term,X502: term] :
          ( ( $true
            = ( X486 @ id @ X502 @ id ) )
          & ( $true
            = ( X486 @ id @ X501 @ id ) )
          & ( $true
           != ( X486 @ id @ ( ap @ ( sub @ X502 @ id ) @ X501 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f63,plain,
    ( ( sP49 = $true )
  <=> ? [X476: term,X477: term > $o,X478: subst > term > subst > $o] :
        ( ! [X479: term] :
            ( ( $true
             != ( X477 @ X479 ) )
            | ( $true
              = ( X477 @ ( sub @ X476 @ ( push @ X479 @ id ) ) ) ) )
        & ! [X480: subst > term > term] :
            ( ( $true
              = ( X478 @ id @ ( lam @ ( X480 @ sh @ one ) ) @ id ) )
            | ? [X484: term] :
                ( ( ( X478 @ id @ ( X480 @ id @ X484 ) @ id )
                 != $true )
                & ( $true
                  = ( X478 @ id @ X484 @ id ) ) )
            | ? [X481: subst,X482: subst,X483: term] :
                ( ( sub @ ( X480 @ X481 @ X483 ) @ X482 )
               != ( X480 @ ( comp @ X481 @ X482 ) @ ( sub @ X483 @ X482 ) ) ) )
        & ( $true
         != ( X477 @ ( lam @ X476 ) ) )
        & ! [X485: term] :
            ( ( X478 @ id @ X485 @ id )
            = ( X477 @ X485 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f64,plain,
    ( ( $true = sP50 )
  <=> ! [X486: subst > term > subst > $o,X487: term] :
        ( ( $true
          = ( X486 @ id @ X487 @ id ) )
        | ( $true
          = ( sP48 @ X486 ) )
        | ( $true
          = ( sP47 @ X486 ) )
        | ? [X503: term] :
            ( ( $true
             != ( X486 @ id @ X503 @ id ) )
            & ( ( var @ ( sub @ X503 @ id ) )
              = $true ) )
        | ? [X497: subst,X498: term,X499: subst,X500: subst] :
            ( ( $true
              = ( X486 @ ( comp @ X500 @ X497 ) @ ( sub @ X498 @ X497 ) @ X499 ) )
            & ( $true
             != ( X486 @ X500 @ X498 @ ( comp @ X497 @ X499 ) ) ) )
        | ? [X488: subst,X489: term,X490: subst,X491: subst] :
            ( ( $true
             != ( X486 @ ( comp @ X490 @ X491 ) @ ( sub @ X489 @ X491 ) @ X488 ) )
            & ( $true
              = ( X486 @ X490 @ X489 @ ( comp @ X491 @ X488 ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f65,plain,
    ( ( sP51 = $true )
  <=> ( ( $true = sP50 )
      | ? [X465: subst > term > subst > $o] :
        ! [X466: term > $o] :
        ? [X467: term] :
          ( ( X465 @ id @ X467 @ id )
         != ( X466 @ X467 ) )
      | ? [X468: term > $o,X469: term] :
          ( ( ( X468 @ X469 )
           != $true )
          & ! [X474: term] :
              ( ( ( X468 @ X474 )
                = $true )
              | ( $true
               != ( var @ X474 ) ) )
          & ( $true
            = ( sP46 @ X468 ) )
          & ! [X470: term] :
              ( ? [X471: term] :
                  ( ( ( X468 @ ( sub @ X470 @ ( push @ X471 @ id ) ) )
                   != $true )
                  & ( ( X468 @ X471 )
                    = $true ) )
              | ( $true
                = ( X468 @ ( lam @ X470 ) ) ) ) )
      | ? [X475: term] :
          ( ( sub @ X475 @ id )
         != X475 )
      | ( sP49 = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f66,plain,
    ( ( $true = sP52 )
  <=> ! [X113: subst > term > subst > $o,X114: term] :
        ( ? [X115: subst > term > term] :
            ( ! [X117: subst,X118: subst,X119: term] :
                ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
            & ( $true
             != ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) )
            & ! [X116: term] :
                ( ( $true
                 != ( X113 @ id @ X116 @ id ) )
                | ( $true
                  = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) ) )
        | ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
          = $true )
        | ? [X120: term] :
            ( ( $true
              = ( X113 @ id @ X120 @ id ) )
            & ( $true
             != ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f67,plain,
    ( ( $true = sP53 )
  <=> ? [X125: term,X126: subst > term > subst > $o] :
        ( ! [X127: term] :
            ( ( $true
             != ( X126 @ id @ X127 @ id ) )
            | ( $true
              = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) ) )
        & ( $true
         != ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
        & ! [X128: subst > term > term] :
            ( ? [X132: term] :
                ( ( $true
                  = ( X126 @ id @ X132 @ id ) )
                & ( $true
                 != ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) ) )
            | ? [X129: subst,X130: subst,X131: term] :
                ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
               != ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
            | ( $true
              = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f68,plain,
    ( ( sP54 = $true )
  <=> ( ! [X133: subst > term > subst > $o,X134: term] :
          ( ( ( X133 @ id @ ( lam @ X134 ) @ id )
            = $true )
          | ? [X140: term] :
              ( ( $true
               != ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) )
              & ( $true
                = ( X133 @ id @ X140 @ id ) ) )
          | ? [X135: subst > term > term] :
              ( ! [X137: subst,X138: subst,X139: term] :
                  ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                  = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
              & ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
               != $true )
              & ! [X136: term] :
                  ( ( $true
                    = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) )
                  | ( $true
                   != ( X133 @ id @ X136 @ id ) ) ) ) )
      | ? [X124: term] :
          ( ( sub @ X124 @ id )
         != X124 )
      | ( $true = sP53 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f69,plain,
    ! [X5: term > $o] :
      ( ( $true
        = ( sP55 @ X5 ) )
    <=> ? [X8: term,X9: term] :
          ( ( $true
           != ( X5 @ ( ap @ X9 @ X8 ) ) )
          & ( $true
            = ( X5 @ X8 ) )
          & ( ( X5 @ X9 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f70,plain,
    ( ( sP56 = $true )
  <=> ( ? [X220: subst,X221: term] :
          ( ( comp @ sh @ ( push @ X221 @ X220 ) )
         != X220 )
      | ? [X222: term,X223: term] :
          ( ( X222 != X223 )
          & ( ( lam @ X223 )
            = ( lam @ X222 ) ) )
      | ! [X224: subst > term > term,X225: subst > term > term,X226: term,X227: subst] :
          ( ? [X228: subst,X229: term,X230: subst] :
              ( ( X224 @ ( comp @ X228 @ X230 ) @ ( sub @ X229 @ X230 ) )
             != ( sub @ ( X224 @ X228 @ X229 ) @ X230 ) )
          | ? [X231: subst,X232: subst,X233: term] :
              ( ( X225 @ ( comp @ X232 @ X231 ) @ ( sub @ X233 @ X231 ) )
             != ( sub @ ( X225 @ X232 @ X233 ) @ X231 ) )
          | ( ( X225 @ X227 @ X226 )
            = ( X224 @ X227 @ X226 ) )
          | ( ( lam @ ( X225 @ sh @ one ) )
           != ( lam @ ( X224 @ sh @ one ) ) ) )
      | ? [X218: subst,X219: term] :
          ( ( sub @ one @ ( push @ X219 @ X218 ) )
         != X219 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f71,plain,
    ! [X309: subst > term > subst > $o] :
      ( ( $true
        = ( sP57 @ X309 ) )
    <=> ? [X316: subst > term > term] :
          ( ( $true
           != ( X309 @ id @ ( lam @ ( X316 @ sh @ one ) ) @ id ) )
          & ! [X317: term] :
              ( ( ( X309 @ id @ X317 @ id )
               != $true )
              | ( $true
                = ( X309 @ id @ ( X316 @ id @ X317 ) @ id ) ) )
          & ! [X318: term,X319: subst,X320: subst] :
              ( ( sub @ ( X316 @ X320 @ X318 ) @ X319 )
              = ( X316 @ ( comp @ X320 @ X319 ) @ ( sub @ X318 @ X319 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f72,plain,
    ( ( sP58 = $true )
  <=> ! [X309: subst > term > subst > $o,X310: term] :
        ( ( $true
          = ( X309 @ id @ ( lam @ X310 ) @ id ) )
        | ? [X311: term] :
            ( ( $true
             != ( X309 @ id @ ( sub @ X310 @ ( push @ X311 @ id ) ) @ id ) )
            & ( ( X309 @ id @ X311 @ id )
              = $true ) )
        | ? [X312: term,X313: subst,X314: subst,X315: subst] :
            ( ( $true
             != ( X309 @ ( comp @ X315 @ X313 ) @ ( sub @ X312 @ X313 ) @ X314 ) )
            & ( $true
              = ( X309 @ X315 @ X312 @ ( comp @ X313 @ X314 ) ) ) )
        | ( $true
          = ( sP57 @ X309 ) )
        | ? [X321: subst,X322: term,X323: subst,X324: subst] :
            ( ( $true
              = ( X309 @ ( comp @ X324 @ X321 ) @ ( sub @ X322 @ X321 ) @ X323 ) )
            & ( $true
             != ( X309 @ X324 @ X322 @ ( comp @ X321 @ X323 ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f13,plain,
    ( ( pushprop_lem1_gthm = $true )
    & ( ! [X309: subst > term > subst > $o,X310: term] :
          ( ( $true
            = ( X309 @ id @ ( lam @ X310 ) @ id ) )
          | ? [X311: term] :
              ( ( $true
               != ( X309 @ id @ ( sub @ X310 @ ( push @ X311 @ id ) ) @ id ) )
              & ( ( X309 @ id @ X311 @ id )
                = $true ) )
          | ? [X312: term,X313: subst,X314: subst,X315: subst] :
              ( ( $true
               != ( X309 @ ( comp @ X315 @ X313 ) @ ( sub @ X312 @ X313 ) @ X314 ) )
              & ( $true
                = ( X309 @ X315 @ X312 @ ( comp @ X313 @ X314 ) ) ) )
          | ? [X316: subst > term > term] :
              ( ( $true
               != ( X309 @ id @ ( lam @ ( X316 @ sh @ one ) ) @ id ) )
              & ! [X317: term] :
                  ( ( ( X309 @ id @ X317 @ id )
                   != $true )
                  | ( $true
                    = ( X309 @ id @ ( X316 @ id @ X317 ) @ id ) ) )
              & ! [X318: term,X319: subst,X320: subst] :
                  ( ( sub @ ( X316 @ X320 @ X318 ) @ X319 )
                  = ( X316 @ ( comp @ X320 @ X319 ) @ ( sub @ X318 @ X319 ) ) ) )
          | ? [X321: subst,X322: term,X323: subst,X324: subst] :
              ( ( $true
                = ( X309 @ ( comp @ X324 @ X321 ) @ ( sub @ X322 @ X321 ) @ X323 ) )
              & ( $true
               != ( X309 @ X324 @ X322 @ ( comp @ X321 @ X323 ) ) ) ) )
    <=> ( hoasinduction_lem3 = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( axapp = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( X56 = X57 )
        | ( ( d2subst @ X56 )
         != ( d2subst @ X57 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( ? [X220: subst,X221: term] :
            ( ( comp @ sh @ ( push @ X221 @ X220 ) )
           != X220 )
        | ? [X222: term,X223: term] :
            ( ( X222 != X223 )
            & ( ( lam @ X223 )
              = ( lam @ X222 ) ) )
        | ! [X224: subst > term > term,X225: subst > term > term,X226: term,X227: subst] :
            ( ? [X228: subst,X229: term,X230: subst] :
                ( ( X224 @ ( comp @ X228 @ X230 ) @ ( sub @ X229 @ X230 ) )
               != ( sub @ ( X224 @ X228 @ X229 ) @ X230 ) )
            | ? [X231: subst,X232: subst,X233: term] :
                ( ( X225 @ ( comp @ X232 @ X231 ) @ ( sub @ X233 @ X231 ) )
               != ( sub @ ( X225 @ X232 @ X233 ) @ X231 ) )
            | ( ( X225 @ X227 @ X226 )
              = ( X224 @ X227 @ X226 ) )
            | ( ( lam @ ( X225 @ sh @ one ) )
             != ( lam @ ( X224 @ sh @ one ) ) ) )
        | ? [X218: subst,X219: term] :
            ( ( sub @ one @ ( push @ X219 @ X218 ) )
           != X219 ) )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ! [X5: term > $o,X6: term] :
          ( ? [X8: term,X9: term] :
              ( ( $true
               != ( X5 @ ( ap @ X9 @ X8 ) ) )
              & ( $true
                = ( X5 @ X8 ) )
              & ( ( X5 @ X9 )
                = $true ) )
          | ? [X7: term] :
              ( ( $true
                = ( X5 @ X7 ) )
              & ( ( X5 @ ( lam @ X7 ) )
               != $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ? [X10: term] :
              ( ( $true
               != ( X5 @ X10 ) )
              & ( $true
                = ( var @ X10 ) ) ) )
    <=> ( induction = $true ) )
    & ( hoasinduction_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
    <=> ( axshiftcons = $true ) )
    & ( ( substmonoid_lthm = $true )
    <=> ( ? [X61: subst] :
            ( ( comp @ X61 @ id )
           != X61 )
        | ( ! [X63: subst] :
              ( ( comp @ id @ X63 )
              = X63 )
          & ! [X62: subst] :
              ( ( comp @ X62 @ id )
              = X62 ) )
        | ? [X60: subst] :
            ( ( comp @ id @ X60 )
           != X60 ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( ! [X133: subst > term > subst > $o,X134: term] :
            ( ( ( X133 @ id @ ( lam @ X134 ) @ id )
              = $true )
            | ? [X140: term] :
                ( ( $true
                 != ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) )
                & ( $true
                  = ( X133 @ id @ X140 @ id ) ) )
            | ? [X135: subst > term > term] :
                ( ! [X137: subst,X138: subst,X139: term] :
                    ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                    = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                & ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
                 != $true )
                & ! [X136: term] :
                    ( ( $true
                      = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) )
                    | ( $true
                     != ( X133 @ id @ X136 @ id ) ) ) ) )
        | ? [X124: term] :
            ( ( sub @ X124 @ id )
           != X124 )
        | ? [X125: term,X126: subst > term > subst > $o] :
            ( ! [X127: term] :
                ( ( $true
                 != ( X126 @ id @ X127 @ id ) )
                | ( $true
                  = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) ) )
            & ( $true
             != ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
            & ! [X128: subst > term > term] :
                ( ? [X132: term] :
                    ( ( $true
                      = ( X126 @ id @ X132 @ id ) )
                    & ( $true
                     != ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) ) )
                | ? [X129: subst,X130: subst,X131: term] :
                    ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                   != ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
                | ( $true
                  = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) ) ) ) ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ? [X115: subst > term > term] :
              ( ! [X117: subst,X118: subst,X119: term] :
                  ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                  = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
              & ( $true
               != ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) )
              & ! [X116: term] :
                  ( ( $true
                   != ( X113 @ id @ X116 @ id ) )
                  | ( $true
                    = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) ) )
          | ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
            = $true )
          | ? [X120: term] :
              ( ( $true
                = ( X113 @ id @ X120 @ id ) )
              & ( $true
               != ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) ) )
    & ( ( ! [X486: subst > term > subst > $o,X487: term] :
            ( ( $true
              = ( X486 @ id @ X487 @ id ) )
            | ? [X501: term,X502: term] :
                ( ( $true
                  = ( X486 @ id @ X502 @ id ) )
                & ( $true
                  = ( X486 @ id @ X501 @ id ) )
                & ( $true
                 != ( X486 @ id @ ( ap @ ( sub @ X502 @ id ) @ X501 ) @ id ) ) )
            | ? [X492: subst > term > term] :
                ( ! [X496: term] :
                    ( ( $true
                     != ( X486 @ id @ X496 @ id ) )
                    | ( ( X486 @ id @ ( X492 @ id @ X496 ) @ id )
                      = $true ) )
                & ( $true
                 != ( X486 @ id @ ( lam @ ( X492 @ sh @ one ) ) @ id ) )
                & ! [X493: subst,X494: subst,X495: term] :
                    ( ( X492 @ ( comp @ X493 @ X494 ) @ ( sub @ X495 @ X494 ) )
                    = ( sub @ ( X492 @ X493 @ X495 ) @ X494 ) ) )
            | ? [X503: term] :
                ( ( $true
                 != ( X486 @ id @ X503 @ id ) )
                & ( ( var @ ( sub @ X503 @ id ) )
                  = $true ) )
            | ? [X497: subst,X498: term,X499: subst,X500: subst] :
                ( ( $true
                  = ( X486 @ ( comp @ X500 @ X497 ) @ ( sub @ X498 @ X497 ) @ X499 ) )
                & ( $true
                 != ( X486 @ X500 @ X498 @ ( comp @ X497 @ X499 ) ) ) )
            | ? [X488: subst,X489: term,X490: subst,X491: subst] :
                ( ( $true
                 != ( X486 @ ( comp @ X490 @ X491 ) @ ( sub @ X489 @ X491 ) @ X488 ) )
                & ( $true
                  = ( X486 @ X490 @ X489 @ ( comp @ X491 @ X488 ) ) ) ) )
        | ? [X465: subst > term > subst > $o] :
          ! [X466: term > $o] :
          ? [X467: term] :
            ( ( X465 @ id @ X467 @ id )
           != ( X466 @ X467 ) )
        | ? [X468: term > $o,X469: term] :
            ( ( ( X468 @ X469 )
             != $true )
            & ! [X474: term] :
                ( ( ( X468 @ X474 )
                  = $true )
                | ( $true
                 != ( var @ X474 ) ) )
            & ! [X472: term,X473: term] :
                ( ( ( X468 @ X472 )
                 != $true )
                | ( $true
                  = ( X468 @ ( ap @ X472 @ X473 ) ) )
                | ( $true
                 != ( X468 @ X473 ) ) )
            & ! [X470: term] :
                ( ? [X471: term] :
                    ( ( ( X468 @ ( sub @ X470 @ ( push @ X471 @ id ) ) )
                     != $true )
                    & ( ( X468 @ X471 )
                      = $true ) )
                | ( $true
                  = ( X468 @ ( lam @ X470 ) ) ) ) )
        | ? [X475: term] :
            ( ( sub @ X475 @ id )
           != X475 )
        | ? [X476: term,X477: term > $o,X478: subst > term > subst > $o] :
            ( ! [X479: term] :
                ( ( $true
                 != ( X477 @ X479 ) )
                | ( $true
                  = ( X477 @ ( sub @ X476 @ ( push @ X479 @ id ) ) ) ) )
            & ! [X480: subst > term > term] :
                ( ( $true
                  = ( X478 @ id @ ( lam @ ( X480 @ sh @ one ) ) @ id ) )
                | ? [X484: term] :
                    ( ( ( X478 @ id @ ( X480 @ id @ X484 ) @ id )
                     != $true )
                    & ( $true
                      = ( X478 @ id @ X484 @ id ) ) )
                | ? [X481: subst,X482: subst,X483: term] :
                    ( ( sub @ ( X480 @ X481 @ X483 ) @ X482 )
                   != ( X480 @ ( comp @ X481 @ X482 ) @ ( sub @ X483 @ X482 ) ) ) )
            & ( $true
             != ( X477 @ ( lam @ X476 ) ) )
            & ! [X485: term] :
                ( ( X478 @ id @ X485 @ id )
                = ( X477 @ X485 ) ) ) )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( shinj = $true )
    <=> ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
    <=> ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ? [X52: subst,X53: subst,X54: term,X55: subst] :
              ( ( $true
                = ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) )
              & ( $true
               != ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) ) )
          | ? [X48: term,X49: subst,X50: subst,X51: subst] :
              ( ( $true
               != ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
              & ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
                = $true ) )
          | ( $true
           != ( X43 @ X42 ) )
          | ( $true
            = ( X43 @ ( ap @ X42 @ X44 ) ) )
          | ( $true
           != ( X43 @ X44 ) )
          | ? [X45: term,X46: term] :
              ( ( $true
                = ( X41 @ id @ X46 @ id ) )
              & ( $true
               != ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) )
              & ( $true
                = ( X41 @ id @ X45 @ id ) ) )
          | ? [X47: term] :
              ( ( X43 @ X47 )
             != ( X41 @ id @ X47 @ id ) ) ) )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( induction2lem_gthm = $true )
    & ( ( ? [X169: subst,X170: term] :
            ( ( comp @ sh @ ( push @ X170 @ X169 ) )
           != X169 )
        | ? [X171: subst] :
            ( ( comp @ X171 @ id )
           != X171 )
        | ? [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
           != X168 )
        | ? [X172: term,X173: term > $o] :
            ( ! [X175: term] :
                ( ( $true
                 != ( var @ X175 ) )
                | ( ( X173 @ X175 )
                  = $true ) )
            & ! [X174: term] :
                ( ( ( X173 @ X174 )
                 != $true )
                | ( $true
                  = ( X173 @ ( lam @ X174 ) ) ) )
            & ( $true
             != ( X173 @ X172 ) )
            & ! [X176: term,X177: term] :
                ( ( $true
                 != ( X173 @ X177 ) )
                | ( ( X173 @ ( ap @ X177 @ X176 ) )
                  = $true )
                | ( $true
                 != ( X173 @ X176 ) ) ) )
        | ! [X178: subst,X179: term > $o,X180: term] :
            ( ? [X182: term,X183: term] :
                ( ( $true
                  = ( X179 @ X183 ) )
                & ( $true
                  = ( X179 @ X182 ) )
                & ( $true
                 != ( X179 @ ( ap @ X183 @ X182 ) ) ) )
            | ? [X184: term] :
                ( ! [X185: term] :
                    ( ( $true
                      = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                    | ( $true
                     != ( X179 @ X185 ) ) )
                & ( $true
                 != ( X179 @ ( lam @ X184 ) ) ) )
            | ( $true
              = ( X179 @ ( sub @ X180 @ X178 ) ) )
            | ? [X181: term] :
                ( ( $true
                 != ( X179 @ ( sub @ X181 @ X178 ) ) )
                & ( $true
                  = ( var @ X181 ) ) ) ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ? [X254: term,X255: term] :
              ( ( $true
                = ( X248 @ id @ X255 @ id ) )
              & ( $true
                = ( X248 @ id @ X254 @ id ) )
              & ( $true
               != ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) )
          | ? [X249: subst > term > term] :
              ( ( ( X248 @ id @ ( lam @ ( X249 @ sh @ one ) ) @ id )
               != $true )
              & ! [X250: term] :
                  ( ( $true
                    = ( X248 @ id @ ( X249 @ id @ X250 ) @ id ) )
                  | ( $true
                   != ( X248 @ id @ X250 @ id ) ) )
              & ! [X251: subst,X252: term,X253: subst] :
                  ( ( sub @ ( X249 @ X253 @ X252 ) @ X251 )
                  = ( X249 @ ( comp @ X253 @ X251 ) @ ( sub @ X252 @ X251 ) ) ) ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
              = ( X110 @ one ) )
            | ( $true
             != ( X109 @ X108 ) )
            | ? [X112: term] :
                ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
               != ( X110 @ X112 ) ) )
        | ? [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
           != X107 ) ) )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
        ? [X3: term > $o] :
        ! [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
          = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasapnotvar = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( axclos = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( X207 = X208 )
        | ( ( d2term @ X208 )
         != ( d2term @ X207 ) ) )
    & ( termmset_gthm = $true )
    & ( ( hoasinduction_lem2 = $true )
    <=> ! [X234: term,X235: subst > term > subst > $o,X236: term] :
          ( ? [X243: term,X244: subst,X245: subst,X246: subst] :
              ( ( $true
               != ( X235 @ X244 @ X243 @ ( comp @ X246 @ X245 ) ) )
              & ( $true
                = ( X235 @ ( comp @ X244 @ X246 ) @ ( sub @ X243 @ X246 ) @ X245 ) ) )
          | ? [X237: subst,X238: subst,X239: term,X240: subst] :
              ( ( $true
               != ( X235 @ ( comp @ X237 @ X240 ) @ ( sub @ X239 @ X240 ) @ X238 ) )
              & ( $true
                = ( X235 @ X237 @ X239 @ ( comp @ X240 @ X238 ) ) ) )
          | ? [X241: term,X242: term] :
              ( ( $true
               != ( X235 @ id @ ( ap @ ( sub @ X242 @ id ) @ X241 ) @ id ) )
              & ( ( X235 @ id @ X241 @ id )
                = $true )
              & ( $true
                = ( X235 @ id @ X242 @ id ) ) )
          | ( $true
            = ( X235 @ id @ ( ap @ X234 @ X236 ) @ id ) )
          | ( $true
           != ( X235 @ id @ X236 @ id ) )
          | ( $true
           != ( X235 @ id @ X234 @ id ) ) ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( ? [X505: term,X506: term,X507: term,X508: term] :
            ( ( X505 != X506 )
            & ( ( ap @ X506 @ X508 )
              = ( ap @ X505 @ X507 ) ) )
        | ! [X509: term,X510: term,X511: term,X512: term] :
            ( ( X510 = X512 )
            | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
             != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
        | ? [X504: term] :
            ( ( sub @ X504 @ id )
           != X504 ) )
    <=> ( hoasapinj1_lthm = $true ) )
    & ( ( axidl = $true )
    <=> ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X283: term] :
        ? [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
          = ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ! [X450: term,X451: subst > term > subst > $o] :
          ( ( $true
            = ( X451 @ id @ ( lam @ X450 ) @ id ) )
          | ? [X452: term] :
              ( ( ( X451 @ id @ ( sub @ X450 @ ( push @ X452 @ id ) ) @ id )
               != $true )
              & ( $true
                = ( X451 @ id @ X452 @ id ) ) )
          | ? [X453: subst > term > term] :
              ( ! [X455: subst,X456: subst,X457: term] :
                  ( ( X453 @ ( comp @ X455 @ X456 ) @ ( sub @ X457 @ X456 ) )
                  = ( sub @ ( X453 @ X455 @ X457 ) @ X456 ) )
              & ( $true
               != ( X451 @ id @ ( lam @ ( X453 @ sh @ one ) ) @ id ) )
              & ! [X454: term] :
                  ( ( $true
                   != ( X451 @ id @ X454 @ id ) )
                  | ( $true
                    = ( X451 @ id @ ( X453 @ id @ X454 ) @ id ) ) ) ) )
    <=> ( hoasinduction_lem3a = $true ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
    <=> ( hoasapinj1 = $true ) )
    & ( ( termmset_lthm = $true )
    <=> ( ! [X294: term] :
            ( ( sub @ X294 @ id )
            = X294 )
        | ? [X293: term] :
            ( ( sub @ X293 @ id )
           != X293 ) ) )
    & ( ulamvarsh = $true )
    & ( ( axidr = $true )
    <=> ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X141: term] :
        ? [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
          = ( sub @ X141 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b = $true ) )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
           != ( X27 @ X28 ) )
          | ? [X31: term] :
              ( ( X29 @ X31 )
             != ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) ) ) )
    & ( axvarshift = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lthm = $true )
    <=> ( ? [X396: term,X397: term,X398: subst > term > subst > $o] :
            ( ! [X403: term,X404: term] :
                ( ( ( X398 @ id @ X404 @ id )
                 != $true )
                | ( $true
                  = ( X398 @ id @ ( ap @ ( sub @ X404 @ id ) @ X403 ) @ id ) )
                | ( ( X398 @ id @ X403 @ id )
                 != $true ) )
            & ( $true
             != ( X398 @ id @ ( ap @ X396 @ X397 ) @ id ) )
            & ( $true
              = ( X398 @ id @ X397 @ id ) )
            & ! [X399: subst,X400: subst,X401: subst,X402: term] :
                ( ( $true
                 != ( X398 @ X401 @ X402 @ ( comp @ X400 @ X399 ) ) )
                | ( $true
                  = ( X398 @ ( comp @ X401 @ X400 ) @ ( sub @ X402 @ X400 ) @ X399 ) ) )
            & ! [X405: term,X406: subst,X407: subst,X408: subst] :
                ( ( $true
                 != ( X398 @ ( comp @ X407 @ X408 ) @ ( sub @ X405 @ X408 ) @ X406 ) )
                | ( $true
                  = ( X398 @ X407 @ X405 @ ( comp @ X408 @ X406 ) ) ) )
            & ( ( X398 @ id @ X396 @ id )
              = $true ) )
        | ? [X389: term,X390: term > $o] :
            ( ( $true
             != ( X390 @ X389 ) )
            & ! [X391: term] :
                ( ( ( X390 @ ( lam @ X391 ) )
                  = $true )
                | ? [X392: term] :
                    ( ( ( X390 @ X392 )
                      = $true )
                    & ( $true
                     != ( X390 @ ( sub @ X391 @ ( push @ X392 @ id ) ) ) ) ) )
            & ! [X393: term,X394: term] :
                ( ( $true
                 != ( X390 @ X393 ) )
                | ( $true
                  = ( X390 @ ( ap @ X393 @ X394 ) ) )
                | ( ( X390 @ X394 )
                 != $true ) )
            & ! [X395: term] :
                ( ( $true
                 != ( var @ X395 ) )
                | ( $true
                  = ( X390 @ X395 ) ) ) )
        | ? [X409: term,X410: subst > term > subst > $o] :
            ( ! [X421: subst,X422: subst,X423: subst,X424: term] :
                ( ( ( X410 @ ( comp @ X422 @ X421 ) @ ( sub @ X424 @ X421 ) @ X423 )
                 != $true )
                | ( ( X410 @ X422 @ X424 @ ( comp @ X421 @ X423 ) )
                  = $true ) )
            & ! [X417: subst,X418: subst,X419: subst,X420: term] :
                ( ( $true
                 != ( X410 @ X417 @ X420 @ ( comp @ X418 @ X419 ) ) )
                | ( $true
                  = ( X410 @ ( comp @ X417 @ X418 ) @ ( sub @ X420 @ X418 ) @ X419 ) ) )
            & ! [X416: term] :
                ( ( $true
                 != ( X410 @ id @ X416 @ id ) )
                | ( $true
                  = ( X410 @ id @ ( sub @ X409 @ ( push @ X416 @ id ) ) @ id ) ) )
            & ( $true
             != ( X410 @ id @ ( lam @ X409 ) @ id ) )
            & ! [X411: subst > term > term] :
                ( ? [X415: term] :
                    ( ( ( X410 @ id @ X415 @ id )
                      = $true )
                    & ( ( X410 @ id @ ( X411 @ id @ X415 ) @ id )
                     != $true ) )
                | ( $true
                  = ( X410 @ id @ ( lam @ ( X411 @ sh @ one ) ) @ id ) )
                | ? [X412: subst,X413: subst,X414: term] :
                    ( ( X411 @ ( comp @ X412 @ X413 ) @ ( sub @ X414 @ X413 ) )
                   != ( sub @ ( X411 @ X412 @ X414 ) @ X413 ) ) ) )
        | ! [X425: subst > term > subst > $o,X426: term] :
            ( ? [X431: term] :
                ( ( $true
                  = ( var @ ( sub @ X431 @ id ) ) )
                & ( ( X425 @ id @ X431 @ id )
                 != $true ) )
            | ? [X434: subst > term > term] :
                ( ( $true
                 != ( X425 @ id @ ( lam @ ( X434 @ sh @ one ) ) @ id ) )
                & ! [X438: term] :
                    ( ( $true
                     != ( X425 @ id @ X438 @ id ) )
                    | ( $true
                      = ( X425 @ id @ ( X434 @ id @ X438 ) @ id ) ) )
                & ! [X435: subst,X436: term,X437: subst] :
                    ( ( X434 @ ( comp @ X437 @ X435 ) @ ( sub @ X436 @ X435 ) )
                    = ( sub @ ( X434 @ X437 @ X436 ) @ X435 ) ) )
            | ? [X439: subst,X440: term,X441: subst,X442: subst] :
                ( ( $true
                 != ( X425 @ ( comp @ X441 @ X442 ) @ ( sub @ X440 @ X442 ) @ X439 ) )
                & ( ( X425 @ X441 @ X440 @ ( comp @ X442 @ X439 ) )
                  = $true ) )
            | ? [X432: term,X433: term] :
                ( ( ( X425 @ id @ X433 @ id )
                  = $true )
                & ( $true
                 != ( X425 @ id @ ( ap @ ( sub @ X433 @ id ) @ X432 ) @ id ) )
                & ( $true
                  = ( X425 @ id @ X432 @ id ) ) )
            | ( $true
              = ( X425 @ id @ X426 @ id ) )
            | ? [X427: subst,X428: subst,X429: subst,X430: term] :
                ( ( ( X425 @ ( comp @ X429 @ X428 ) @ ( sub @ X430 @ X428 ) @ X427 )
                  = $true )
                & ( $true
                 != ( X425 @ X429 @ X430 @ ( comp @ X428 @ X427 ) ) ) ) ) ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( ? [X64: term] :
            ( ( sub @ X64 @ id )
           != X64 )
        | ! [X73: term,X74: term > $o] :
            ( ( $true
              = ( X74 @ X73 ) )
            | ? [X75: term] :
                ( ( $true
                 != ( X74 @ ( lam @ X75 ) ) )
                & ! [X76: term] :
                    ( ( $true
                      = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                    | ( $true
                     != ( X74 @ X76 ) ) ) )
            | ? [X78: term,X79: term] :
                ( ( $true
                  = ( X74 @ X78 ) )
                & ( ( X74 @ ( ap @ X79 @ X78 ) )
                 != $true )
                & ( $true
                  = ( X74 @ X79 ) ) )
            | ? [X77: term] :
                ( ( $true
                  = ( var @ X77 ) )
                & ( $true
                 != ( X74 @ X77 ) ) ) )
        | ? [X65: subst,X66: term > $o,X67: term] :
            ( ( $true
             != ( X66 @ ( sub @ X67 @ X65 ) ) )
            & ! [X68: term,X69: term] :
                ( ( ( X66 @ ( ap @ X68 @ X69 ) )
                  = $true )
                | ( ( X66 @ X68 )
                 != $true )
                | ( ( X66 @ X69 )
                 != $true ) )
            & ! [X72: term] :
                ( ( ( var @ X72 )
                 != $true )
                | ( $true
                  = ( X66 @ ( sub @ X72 @ X65 ) ) ) )
            & ! [X70: term] :
                ( ( $true
                  = ( X66 @ ( lam @ X70 ) ) )
                | ? [X71: term] :
                    ( ( $true
                      = ( X66 @ X71 ) )
                    & ( $true
                     != ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) ) ) ) )
    <=> ( induction2_lthm = $true ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( substmonoid = $true )
    <=> ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) ) )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
    <=> ( axscons = $true ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( laminj = $true )
    <=> ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X443: subst,X444: term > $o,X445: term] :
        ? [X446: term > $o] :
        ! [X447: term] :
          ( ( X446 @ X447 )
          = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( ? [X268: term] :
          ! [X269: subst > term > term] :
          ? [X270: subst,X271: term] :
            ( ( sub @ X268 @ ( push @ X271 @ X270 ) )
           != ( X269 @ X270 @ X271 ) )
        | ! [X273: term,X274: term > $o,X275: subst > term > subst > $o] :
            ( ? [X276: term] :
                ( ( X274 @ X276 )
               != ( X275 @ id @ X276 @ id ) )
            | ? [X277: term] :
                ( ( $true
                 != ( X274 @ ( sub @ X273 @ ( push @ X277 @ id ) ) ) )
                & ( ( X274 @ X277 )
                  = $true ) )
            | ( ( X274 @ ( lam @ X273 ) )
              = $true )
            | ? [X278: subst > term > term] :
                ( ( $true
                 != ( X275 @ id @ ( lam @ ( X278 @ sh @ one ) ) @ id ) )
                & ! [X282: term] :
                    ( ( ( X275 @ id @ ( X278 @ id @ X282 ) @ id )
                      = $true )
                    | ( ( X275 @ id @ X282 @ id )
                     != $true ) )
                & ! [X279: subst,X280: subst,X281: term] :
                    ( ( X278 @ ( comp @ X280 @ X279 ) @ ( sub @ X281 @ X279 ) )
                    = ( sub @ ( X278 @ X280 @ X281 ) @ X279 ) ) ) )
        | ? [X272: term] :
            ( ( sub @ X272 @ id )
           != X272 ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ? [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
             != ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( axmap = $true )
    & ( ! [X186: subst > term > subst > $o] :
        ? [X187: term > $o] :
        ! [X188: term] :
          ( ( X186 @ id @ X188 @ id )
          = ( X187 @ X188 ) )
    <=> ( hoasinduction_lem0_lthm = $true ) )
    & ( hoaslamnotvar = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( pushprop_lem2v2 = $true )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ! [X375: subst > term > subst > $o,X376: term] :
          ( ( $true
            = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
          | ? [X382: term] :
              ( ( $true
                = ( X375 @ id @ X382 @ id ) )
              & ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
               != $true ) )
          | ? [X377: subst > term > term] :
              ( ! [X378: term] :
                  ( ( $true
                   != ( X375 @ id @ X378 @ id ) )
                  | ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                    = $true ) )
              & ! [X379: term,X380: subst,X381: subst] :
                  ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                  = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
              & ( $true
               != ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( lamnotvar = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ( ? [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
           != X34 )
        | ? [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
           != X32 )
        | ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
            ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
              = $true )
            | ( $true
             != ( X37 @ X36 ) ) ) )
    <=> ( pushprop_lem1_lthm = $true ) )
    & ( ( induction2 = $true )
    <=> ! [X458: term,X459: term > $o] :
          ( ? [X462: term,X463: term] :
              ( ( $true
                = ( X459 @ X463 ) )
              & ( ( X459 @ X462 )
                = $true )
              & ( $true
               != ( X459 @ ( ap @ X463 @ X462 ) ) ) )
          | ( ( X459 @ X458 )
            = $true )
          | ? [X460: term] :
              ( ! [X461: term] :
                  ( ( $true
                   != ( X459 @ X461 ) )
                  | ( $true
                    = ( X459 @ ( sub @ X460 @ ( push @ X461 @ id ) ) ) ) )
              & ( ( X459 @ ( lam @ X460 ) )
               != $true ) )
          | ? [X464: term] :
              ( ( ( X459 @ X464 )
               != $true )
              & ( $true
                = ( var @ X464 ) ) ) ) )
    & ( ( hoasinduction_lem3_lthm = $true )
    <=> ( ! [X523: term,X524: subst > term > subst > $o] :
            ( ? [X538: term] :
                ( ( $true
                 != ( X524 @ id @ ( sub @ X523 @ ( push @ X538 @ id ) ) @ id ) )
                & ( $true
                  = ( X524 @ id @ X538 @ id ) ) )
            | ( ( X524 @ id @ ( lam @ X523 ) @ id )
              = $true )
            | ? [X525: term,X526: subst,X527: subst,X528: subst] :
                ( ( ( X524 @ X527 @ X525 @ ( comp @ X526 @ X528 ) )
                 != $true )
                & ( $true
                  = ( X524 @ ( comp @ X527 @ X526 ) @ ( sub @ X525 @ X526 ) @ X528 ) ) )
            | ? [X529: term,X530: subst,X531: subst,X532: subst] :
                ( ( $true
                  = ( X524 @ X532 @ X529 @ ( comp @ X530 @ X531 ) ) )
                & ( $true
                 != ( X524 @ ( comp @ X532 @ X530 ) @ ( sub @ X529 @ X530 ) @ X531 ) ) )
            | ? [X533: subst > term > term] :
                ( ! [X534: term] :
                    ( ( $true
                      = ( X524 @ id @ ( X533 @ id @ X534 ) @ id ) )
                    | ( $true
                     != ( X524 @ id @ X534 @ id ) ) )
                & ( $true
                 != ( X524 @ id @ ( lam @ ( X533 @ sh @ one ) ) @ id ) )
                & ! [X535: subst,X536: term,X537: subst] :
                    ( ( sub @ ( X533 @ X537 @ X536 ) @ X535 )
                    = ( X533 @ ( comp @ X537 @ X535 ) @ ( sub @ X536 @ X535 ) ) ) ) )
        | ? [X514: term] :
            ( ( sub @ X514 @ id )
           != X514 )
        | ? [X515: term,X516: subst > term > subst > $o] :
            ( ! [X522: term] :
                ( ( $true
                  = ( X516 @ id @ ( sub @ X515 @ ( push @ X522 @ id ) ) @ id ) )
                | ( $true
                 != ( X516 @ id @ X522 @ id ) ) )
            & ( ( X516 @ id @ ( lam @ ( sub @ X515 @ ( push @ one @ sh ) ) ) @ id )
             != $true )
            & ! [X517: subst > term > term] :
                ( ( ( X516 @ id @ ( lam @ ( X517 @ sh @ one ) ) @ id )
                  = $true )
                | ? [X518: term] :
                    ( ( $true
                      = ( X516 @ id @ X518 @ id ) )
                    & ( ( X516 @ id @ ( X517 @ id @ X518 ) @ id )
                     != $true ) )
                | ? [X519: subst,X520: term,X521: subst] :
                    ( ( X517 @ ( comp @ X521 @ X519 ) @ ( sub @ X520 @ X519 ) )
                   != ( sub @ ( X517 @ X521 @ X520 ) @ X519 ) ) ) ) ) )
    & ( ulamvarind = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( induction2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction = $true )
    <=> ! [X189: subst > term > subst > $o,X190: term] :
          ( ? [X198: term] :
              ( ( $true
               != ( X189 @ id @ X198 @ id ) )
              & ( $true
                = ( var @ ( sub @ X198 @ id ) ) ) )
          | ? [X199: subst,X200: subst,X201: subst,X202: term] :
              ( ( $true
               != ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) )
              & ( $true
                = ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) ) )
          | ( $true
            = ( X189 @ id @ X190 @ id ) )
          | ? [X191: term,X192: term] :
              ( ( $true
               != ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) )
              & ( $true
                = ( X189 @ id @ X192 @ id ) )
              & ( ( X189 @ id @ X191 @ id )
                = $true ) )
          | ? [X193: subst > term > term] :
              ( ! [X194: subst,X195: subst,X196: term] :
                  ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                  = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
              & ( $true
               != ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) )
              & ! [X197: term] :
                  ( ( ( X189 @ id @ X197 @ id )
                   != $true )
                  | ( $true
                    = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) ) ) )
          | ? [X203: subst,X204: subst,X205: term,X206: subst] :
              ( ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
               != $true )
              & ( $true
                = ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) ) ) ) )
    & ( ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ? [X86: subst > term > term] :
              ( ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
               != $true )
              & ! [X87: term,X88: subst,X89: subst] :
                  ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                  = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
              & ! [X90: term] :
                  ( ( $true
                    = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) )
                  | ( $true
                   != ( X82 @ id @ X90 @ id ) ) ) )
          | ? [X85: term] :
              ( ( X83 @ X85 )
             != ( X82 @ id @ X85 @ id ) )
          | ( $true
            = ( X83 @ ( lam @ X81 ) ) )
          | ? [X84: term] :
              ( ( $true
               != ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) )
              & ( $true
                = ( X83 @ X84 ) ) ) )
    <=> ( hoasinduction_lem3v2a = $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X385: term] :
        ? [X386: subst > term > term] :
        ! [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
          = ( X386 @ X387 @ X388 ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( induction2lem = $true )
    <=> ! [X260: subst,X261: term,X262: term > $o] :
          ( ? [X266: term] :
              ( ( $true
               != ( X262 @ ( lam @ X266 ) ) )
              & ! [X267: term] :
                  ( ( $true
                    = ( X262 @ ( sub @ X266 @ ( push @ X267 @ id ) ) ) )
                  | ( $true
                   != ( X262 @ X267 ) ) ) )
          | ( $true
            = ( X262 @ ( sub @ X261 @ X260 ) ) )
          | ? [X265: term] :
              ( ( $true
                = ( var @ X265 ) )
              & ( $true
               != ( X262 @ ( sub @ X265 @ X260 ) ) ) )
          | ? [X263: term,X264: term] :
              ( ( $true
                = ( X262 @ X263 ) )
              & ( $true
                = ( X262 @ X264 ) )
              & ( $true
               != ( X262 @ ( ap @ X263 @ X264 ) ) ) ) ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
    <=> ( ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ( $true
              = ( X151 @ ( lam @ X150 ) ) )
            | ? [X161: subst > term > term] :
                ( ! [X165: term] :
                    ( ( $true
                     != ( X149 @ id @ X165 @ id ) )
                    | ( $true
                      = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) )
                & ( $true
                 != ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) )
                & ! [X162: subst,X163: subst,X164: term] :
                    ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                    = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) ) )
            | ? [X153: subst,X154: term,X155: subst,X156: subst] :
                ( ( $true
                 != ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) )
                & ( $true
                  = ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) ) )
            | ? [X166: term] :
                ( ( X149 @ id @ X166 @ id )
               != ( X151 @ X166 ) )
            | ? [X157: subst,X158: subst,X159: term,X160: subst] :
                ( ( $true
                 != ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
                & ( $true
                  = ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
            | ? [X152: term] :
                ( ( $true
                 != ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) )
                & ( $true
                  = ( X151 @ X152 ) ) ) )
        | ? [X148: term] :
            ( ( sub @ X148 @ id )
           != X148 ) ) )
    & ( lamnotap != $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ! [X356: term,X357: term > $o,X358: subst > term > subst > $o] :
          ( ( ( X357 @ ( lam @ X356 ) )
            = $true )
          | ? [X360: subst > term > term] :
              ( ! [X361: term] :
                  ( ( $true
                   != ( X358 @ id @ X361 @ id ) )
                  | ( $true
                    = ( X358 @ id @ ( X360 @ id @ X361 ) @ id ) ) )
              & ! [X362: subst,X363: term,X364: subst] :
                  ( ( X360 @ ( comp @ X362 @ X364 ) @ ( sub @ X363 @ X364 ) )
                  = ( sub @ ( X360 @ X362 @ X363 ) @ X364 ) )
              & ( ( X358 @ id @ ( lam @ ( X360 @ sh @ one ) ) @ id )
               != $true ) )
          | ? [X366: subst,X367: subst,X368: subst,X369: term] :
              ( ( $true
                = ( X358 @ X368 @ X369 @ ( comp @ X366 @ X367 ) ) )
              & ( $true
               != ( X358 @ ( comp @ X368 @ X366 ) @ ( sub @ X369 @ X366 ) @ X367 ) ) )
          | ? [X370: subst,X371: subst,X372: subst,X373: term] :
              ( ( ( X358 @ X371 @ X373 @ ( comp @ X370 @ X372 ) )
               != $true )
              & ( $true
                = ( X358 @ ( comp @ X371 @ X370 ) @ ( sub @ X373 @ X370 ) @ X372 ) ) )
          | ? [X359: term] :
              ( ( X358 @ id @ X359 @ id )
             != ( X357 @ X359 ) )
          | ? [X365: term] :
              ( ( $true
               != ( X357 @ ( sub @ X356 @ ( push @ X365 @ id ) ) ) )
              & ( ( X357 @ X365 )
                = $true ) ) ) )
    & ( ( ? [X328: term > $o,X329: term] :
            ( ! [X333: term,X334: term] :
                ( ( $true
                 != ( X328 @ X334 ) )
                | ( $true
                 != ( X328 @ X333 ) )
                | ( ( X328 @ ( ap @ X333 @ X334 ) )
                  = $true ) )
            & ( $true
             != ( X328 @ X329 ) )
            & ! [X331: term] :
                ( ? [X332: term] :
                    ( ( $true
                     != ( X328 @ ( sub @ X331 @ ( push @ X332 @ id ) ) ) )
                    & ( $true
                      = ( X328 @ X332 ) ) )
                | ( ( X328 @ ( lam @ X331 ) )
                  = $true ) )
            & ! [X330: term] :
                ( ( $true
                 != ( var @ X330 ) )
                | ( $true
                  = ( X328 @ X330 ) ) ) )
        | ? [X336: subst > term > subst > $o,X337: term > $o,X338: term] :
            ( ! [X344: term] :
                ( ( $true
                  = ( X337 @ ( sub @ X338 @ ( push @ X344 @ id ) ) ) )
                | ( $true
                 != ( X337 @ X344 ) ) )
            & ! [X345: term] :
                ( ( X336 @ id @ X345 @ id )
                = ( X337 @ X345 ) )
            & ( ( X337 @ ( lam @ X338 ) )
             != $true )
            & ! [X339: subst > term > term] :
                ( ? [X340: term] :
                    ( ( $true
                     != ( X336 @ id @ ( X339 @ id @ X340 ) @ id ) )
                    & ( $true
                      = ( X336 @ id @ X340 @ id ) ) )
                | ? [X341: subst,X342: subst,X343: term] :
                    ( ( sub @ ( X339 @ X341 @ X343 ) @ X342 )
                   != ( X339 @ ( comp @ X341 @ X342 ) @ ( sub @ X343 @ X342 ) ) )
                | ( $true
                  = ( X336 @ id @ ( lam @ ( X339 @ sh @ one ) ) @ id ) ) ) )
        | ? [X325: subst > term > subst > $o] :
          ! [X326: term > $o] :
          ? [X327: term] :
            ( ( X325 @ id @ X327 @ id )
           != ( X326 @ X327 ) )
        | ! [X346: term,X347: subst > term > subst > $o] :
            ( ? [X350: subst > term > term] :
                ( ! [X354: term] :
                    ( ( ( X347 @ id @ ( X350 @ id @ X354 ) @ id )
                      = $true )
                    | ( $true
                     != ( X347 @ id @ X354 @ id ) ) )
                & ( ( X347 @ id @ ( lam @ ( X350 @ sh @ one ) ) @ id )
                 != $true )
                & ! [X351: term,X352: subst,X353: subst] :
                    ( ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) )
                    = ( sub @ ( X350 @ X353 @ X351 ) @ X352 ) ) )
            | ? [X348: term,X349: term] :
                ( ( $true
                  = ( X347 @ id @ X349 @ id ) )
                & ( $true
                  = ( X347 @ id @ X348 @ id ) )
                & ( ( X347 @ id @ ( ap @ ( sub @ X348 @ id ) @ X349 ) @ id )
                 != $true ) )
            | ( ( X347 @ id @ X346 @ id )
              = $true ) )
        | ? [X335: term] :
            ( ( sub @ X335 @ id )
           != X335 ) )
    <=> ( hoasinduction_no_psi_cond_lthm = $true ) )
    & ( ! [X15: subst > term > subst > $o,X16: term] :
          ( ? [X26: term] :
              ( ( $true
               != ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) )
              & ( $true
                = ( X15 @ id @ X26 @ id ) ) )
          | ? [X17: term,X18: subst > term > term] :
              ( ! [X23: subst,X24: subst,X25: term] :
                  ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                  = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
              & ! [X20: subst,X21: subst,X22: term] :
                  ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                  = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
              & ! [X19: term] :
                  ( ( $true
                   != ( X15 @ id @ X19 @ id ) )
                  | ( $true
                    = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) ) )
              & ( $true
               != ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) ) )
    <=> ( hoasinduction_lem3aaa = $true ) )
    & ( ( termmset = $true )
    <=> ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
    <=> ( axvarcons = $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            | ( X300 = X302 ) )
        | ? [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
              = ( ap @ X296 @ X295 ) )
            & ( X295 != X298 ) ) ) )
    & ( ( hoasinduction_lem0 = $true )
    <=> ! [X121: subst > term > subst > $o] :
        ? [X122: term > $o] :
        ! [X123: term] :
          ( ( X121 @ id @ X123 @ id )
          = ( X122 @ X123 ) ) )
    & ( ( hoaslaminj = $true )
    <=> ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ? [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
             != ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ? [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
             != ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
    <=> ! [X303: term] :
        ? [X304: subst > term > term] :
        ! [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
          = ( X304 @ X305 @ X306 ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ulamvar1 != $true )
    & ( ( apinj2 = $true )
    <=> ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 ) ),
    inference(flattening,[status(thm)],[f12]) ).

thf(f12,plain,
    ( ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
    <=> ( axvarcons = $true ) )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ( $true
           != ( X27 @ X28 ) )
          | ? [X31: term] :
              ( ( X29 @ X31 )
             != ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ! [X443: subst,X444: term > $o,X445: term] :
        ? [X446: term > $o] :
        ! [X447: term] :
          ( ( X446 @ X447 )
          = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( ( axidl = $true )
    <=> ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 ) )
    & ( pushprop_lthm = $true )
    & ( axassoc = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lthm_3 = $true )
    <=> ( ! [X486: subst > term > subst > $o,X487: term] :
            ( ( $true
              = ( X486 @ id @ X487 @ id ) )
            | ? [X501: term,X502: term] :
                ( ( $true
                  = ( X486 @ id @ X502 @ id ) )
                & ( $true
                  = ( X486 @ id @ X501 @ id ) )
                & ( $true
                 != ( X486 @ id @ ( ap @ ( sub @ X502 @ id ) @ X501 ) @ id ) ) )
            | ? [X492: subst > term > term] :
                ( ! [X496: term] :
                    ( ( $true
                     != ( X486 @ id @ X496 @ id ) )
                    | ( ( X486 @ id @ ( X492 @ id @ X496 ) @ id )
                      = $true ) )
                & ( $true
                 != ( X486 @ id @ ( lam @ ( X492 @ sh @ one ) ) @ id ) )
                & ! [X493: subst,X494: subst,X495: term] :
                    ( ( X492 @ ( comp @ X493 @ X494 ) @ ( sub @ X495 @ X494 ) )
                    = ( sub @ ( X492 @ X493 @ X495 ) @ X494 ) ) )
            | ? [X503: term] :
                ( ( $true
                 != ( X486 @ id @ X503 @ id ) )
                & ( ( var @ ( sub @ X503 @ id ) )
                  = $true ) )
            | ? [X497: subst,X498: term,X499: subst,X500: subst] :
                ( ( $true
                  = ( X486 @ ( comp @ X500 @ X497 ) @ ( sub @ X498 @ X497 ) @ X499 ) )
                & ( $true
                 != ( X486 @ X500 @ X498 @ ( comp @ X497 @ X499 ) ) ) )
            | ? [X488: subst,X489: term,X490: subst,X491: subst] :
                ( ( $true
                 != ( X486 @ ( comp @ X490 @ X491 ) @ ( sub @ X489 @ X491 ) @ X488 ) )
                & ( $true
                  = ( X486 @ X490 @ X489 @ ( comp @ X491 @ X488 ) ) ) ) )
        | ? [X476: term,X477: term > $o,X478: subst > term > subst > $o] :
            ( ! [X479: term] :
                ( ( $true
                 != ( X477 @ X479 ) )
                | ( $true
                  = ( X477 @ ( sub @ X476 @ ( push @ X479 @ id ) ) ) ) )
            & ! [X480: subst > term > term] :
                ( ( $true
                  = ( X478 @ id @ ( lam @ ( X480 @ sh @ one ) ) @ id ) )
                | ? [X484: term] :
                    ( ( ( X478 @ id @ ( X480 @ id @ X484 ) @ id )
                     != $true )
                    & ( $true
                      = ( X478 @ id @ X484 @ id ) ) )
                | ? [X481: subst,X482: subst,X483: term] :
                    ( ( sub @ ( X480 @ X481 @ X483 ) @ X482 )
                   != ( X480 @ ( comp @ X481 @ X482 ) @ ( sub @ X483 @ X482 ) ) ) )
            & ( $true
             != ( X477 @ ( lam @ X476 ) ) )
            & ! [X485: term] :
                ( ( X478 @ id @ X485 @ id )
                = ( X477 @ X485 ) ) )
        | ? [X475: term] :
            ( ( sub @ X475 @ id )
           != X475 )
        | ? [X468: term > $o,X469: term] :
            ( ( ( X468 @ X469 )
             != $true )
            & ! [X474: term] :
                ( ( ( X468 @ X474 )
                  = $true )
                | ( $true
                 != ( var @ X474 ) ) )
            & ! [X472: term,X473: term] :
                ( ( ( X468 @ X472 )
                 != $true )
                | ( $true
                  = ( X468 @ ( ap @ X472 @ X473 ) ) )
                | ( $true
                 != ( X468 @ X473 ) ) )
            & ! [X470: term] :
                ( ? [X471: term] :
                    ( ( ( X468 @ ( sub @ X470 @ ( push @ X471 @ id ) ) )
                     != $true )
                    & ( ( X468 @ X471 )
                      = $true ) )
                | ( $true
                  = ( X468 @ ( lam @ X470 ) ) ) ) )
        | ? [X465: subst > term > subst > $o] :
          ! [X466: term > $o] :
          ? [X467: term] :
            ( ( X465 @ id @ X467 @ id )
           != ( X466 @ X467 ) ) ) )
    & ( ! [X450: term,X451: subst > term > subst > $o] :
          ( ( $true
            = ( X451 @ id @ ( lam @ X450 ) @ id ) )
          | ? [X452: term] :
              ( ( ( X451 @ id @ ( sub @ X450 @ ( push @ X452 @ id ) ) @ id )
               != $true )
              & ( $true
                = ( X451 @ id @ X452 @ id ) ) )
          | ? [X453: subst > term > term] :
              ( ! [X455: subst,X456: subst,X457: term] :
                  ( ( X453 @ ( comp @ X455 @ X456 ) @ ( sub @ X457 @ X456 ) )
                  = ( sub @ ( X453 @ X455 @ X457 ) @ X456 ) )
              & ( $true
               != ( X451 @ id @ ( lam @ ( X453 @ sh @ one ) ) @ id ) )
              & ! [X454: term] :
                  ( ( $true
                   != ( X451 @ id @ X454 @ id ) )
                  | ( $true
                    = ( X451 @ id @ ( X453 @ id @ X454 ) @ id ) ) ) ) )
    <=> ( hoasinduction_lem3a = $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoasapinj2_gthm = $true )
    & ( hoasapnotvar = $true )
    & ( ulamvarsh = $true )
    & ( ( hoasinduction_lem3v2_lthm = $true )
    <=> ( ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ( $true
              = ( X151 @ ( lam @ X150 ) ) )
            | ? [X161: subst > term > term] :
                ( ! [X165: term] :
                    ( ( $true
                     != ( X149 @ id @ X165 @ id ) )
                    | ( $true
                      = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) )
                & ( $true
                 != ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) )
                & ! [X162: subst,X163: subst,X164: term] :
                    ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                    = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) ) )
            | ? [X153: subst,X154: term,X155: subst,X156: subst] :
                ( ( $true
                 != ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) )
                & ( $true
                  = ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) ) )
            | ? [X166: term] :
                ( ( X149 @ id @ X166 @ id )
               != ( X151 @ X166 ) )
            | ? [X157: subst,X158: subst,X159: term,X160: subst] :
                ( ( $true
                 != ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
                & ( $true
                  = ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
            | ? [X152: term] :
                ( ( $true
                 != ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) )
                & ( $true
                  = ( X151 @ X152 ) ) ) )
        | ? [X148: term] :
            ( ( sub @ X148 @ id )
           != X148 ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axvarshift = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ( hoaslaminj = $true )
    <=> ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ? [X95: subst,X96: subst,X97: term] :
              ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
             != ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ? [X98: term,X99: subst,X100: subst] :
              ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
             != ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) ) ) )
    & ( ( ! [X224: subst > term > term,X225: subst > term > term,X226: term,X227: subst] :
            ( ? [X228: subst,X229: term,X230: subst] :
                ( ( X224 @ ( comp @ X228 @ X230 ) @ ( sub @ X229 @ X230 ) )
               != ( sub @ ( X224 @ X228 @ X229 ) @ X230 ) )
            | ? [X231: subst,X232: subst,X233: term] :
                ( ( X225 @ ( comp @ X232 @ X231 ) @ ( sub @ X233 @ X231 ) )
               != ( sub @ ( X225 @ X232 @ X233 ) @ X231 ) )
            | ( ( X225 @ X227 @ X226 )
              = ( X224 @ X227 @ X226 ) )
            | ( ( lam @ ( X225 @ sh @ one ) )
             != ( lam @ ( X224 @ sh @ one ) ) ) )
        | ? [X222: term,X223: term] :
            ( ( X222 != X223 )
            & ( ( lam @ X223 )
              = ( lam @ X222 ) ) )
        | ? [X220: subst,X221: term] :
            ( ( comp @ sh @ ( push @ X221 @ X220 ) )
           != X220 )
        | ? [X218: subst,X219: term] :
            ( ( sub @ one @ ( push @ X219 @ X218 ) )
           != X219 ) )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( termmset_gthm = $true )
    & ( axclos = $true )
    & ( ( hoasinduction = $true )
    <=> ! [X189: subst > term > subst > $o,X190: term] :
          ( ? [X198: term] :
              ( ( $true
               != ( X189 @ id @ X198 @ id ) )
              & ( $true
                = ( var @ ( sub @ X198 @ id ) ) ) )
          | ? [X199: subst,X200: subst,X201: subst,X202: term] :
              ( ( $true
               != ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) )
              & ( $true
                = ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) ) )
          | ( $true
            = ( X189 @ id @ X190 @ id ) )
          | ? [X191: term,X192: term] :
              ( ( $true
               != ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) )
              & ( $true
                = ( X189 @ id @ X192 @ id ) )
              & ( ( X189 @ id @ X191 @ id )
                = $true ) )
          | ? [X193: subst > term > term] :
              ( ! [X194: subst,X195: subst,X196: term] :
                  ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                  = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
              & ( $true
               != ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) )
              & ! [X197: term] :
                  ( ( ( X189 @ id @ X197 @ id )
                   != $true )
                  | ( $true
                    = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) ) ) )
          | ? [X203: subst,X204: subst,X205: term,X206: subst] :
              ( ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
               != $true )
              & ( $true
                = ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) ) ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( pushprop = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ! [X356: term,X357: term > $o,X358: subst > term > subst > $o] :
          ( ( ( X357 @ ( lam @ X356 ) )
            = $true )
          | ? [X360: subst > term > term] :
              ( ! [X361: term] :
                  ( ( $true
                   != ( X358 @ id @ X361 @ id ) )
                  | ( $true
                    = ( X358 @ id @ ( X360 @ id @ X361 ) @ id ) ) )
              & ! [X362: subst,X363: term,X364: subst] :
                  ( ( X360 @ ( comp @ X362 @ X364 ) @ ( sub @ X363 @ X364 ) )
                  = ( sub @ ( X360 @ X362 @ X363 ) @ X364 ) )
              & ( ( X358 @ id @ ( lam @ ( X360 @ sh @ one ) ) @ id )
               != $true ) )
          | ? [X366: subst,X367: subst,X368: subst,X369: term] :
              ( ( $true
                = ( X358 @ X368 @ X369 @ ( comp @ X366 @ X367 ) ) )
              & ( $true
               != ( X358 @ ( comp @ X368 @ X366 ) @ ( sub @ X369 @ X366 ) @ X367 ) ) )
          | ? [X370: subst,X371: subst,X372: subst,X373: term] :
              ( ( ( X358 @ X371 @ X373 @ ( comp @ X370 @ X372 ) )
               != $true )
              & ( $true
                = ( X358 @ ( comp @ X371 @ X370 ) @ ( sub @ X373 @ X370 ) @ X372 ) ) )
          | ? [X359: term] :
              ( ( X358 @ id @ X359 @ id )
             != ( X357 @ X359 ) )
          | ? [X365: term] :
              ( ( $true
               != ( X357 @ ( sub @ X356 @ ( push @ X365 @ id ) ) ) )
              & ( ( X357 @ X365 )
                = $true ) ) ) )
    & ( ( ! [X178: subst,X179: term > $o,X180: term] :
            ( ? [X182: term,X183: term] :
                ( ( $true
                  = ( X179 @ X183 ) )
                & ( $true
                  = ( X179 @ X182 ) )
                & ( $true
                 != ( X179 @ ( ap @ X183 @ X182 ) ) ) )
            | ? [X184: term] :
                ( ! [X185: term] :
                    ( ( $true
                      = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                    | ( $true
                     != ( X179 @ X185 ) ) )
                & ( $true
                 != ( X179 @ ( lam @ X184 ) ) ) )
            | ( $true
              = ( X179 @ ( sub @ X180 @ X178 ) ) )
            | ? [X181: term] :
                ( ( $true
                 != ( X179 @ ( sub @ X181 @ X178 ) ) )
                & ( $true
                  = ( var @ X181 ) ) ) )
        | ? [X172: term,X173: term > $o] :
            ( ! [X175: term] :
                ( ( $true
                 != ( var @ X175 ) )
                | ( ( X173 @ X175 )
                  = $true ) )
            & ! [X174: term] :
                ( ( ( X173 @ X174 )
                 != $true )
                | ( $true
                  = ( X173 @ ( lam @ X174 ) ) ) )
            & ( $true
             != ( X173 @ X172 ) )
            & ! [X176: term,X177: term] :
                ( ( $true
                 != ( X173 @ X177 ) )
                | ( ( X173 @ ( ap @ X177 @ X176 ) )
                  = $true )
                | ( $true
                 != ( X173 @ X176 ) ) ) )
        | ? [X171: subst] :
            ( ( comp @ X171 @ id )
           != X171 )
        | ? [X169: subst,X170: term] :
            ( ( comp @ sh @ ( push @ X170 @ X169 ) )
           != X169 )
        | ? [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
           != X168 ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( ( induction2_lthm = $true )
    <=> ( ! [X73: term,X74: term > $o] :
            ( ( $true
              = ( X74 @ X73 ) )
            | ? [X75: term] :
                ( ( $true
                 != ( X74 @ ( lam @ X75 ) ) )
                & ! [X76: term] :
                    ( ( $true
                      = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                    | ( $true
                     != ( X74 @ X76 ) ) ) )
            | ? [X78: term,X79: term] :
                ( ( $true
                  = ( X74 @ X78 ) )
                & ( ( X74 @ ( ap @ X79 @ X78 ) )
                 != $true )
                & ( $true
                  = ( X74 @ X79 ) ) )
            | ? [X77: term] :
                ( ( $true
                  = ( var @ X77 ) )
                & ( $true
                 != ( X74 @ X77 ) ) ) )
        | ? [X65: subst,X66: term > $o,X67: term] :
            ( ( $true
             != ( X66 @ ( sub @ X67 @ X65 ) ) )
            & ! [X68: term,X69: term] :
                ( ( ( X66 @ ( ap @ X68 @ X69 ) )
                  = $true )
                | ( ( X66 @ X68 )
                 != $true )
                | ( ( X66 @ X69 )
                 != $true ) )
            & ! [X72: term] :
                ( ( ( var @ X72 )
                 != $true )
                | ( $true
                  = ( X66 @ ( sub @ X72 @ X65 ) ) ) )
            & ! [X70: term] :
                ( ( $true
                  = ( X66 @ ( lam @ X70 ) ) )
                | ? [X71: term] :
                    ( ( $true
                      = ( X66 @ X71 ) )
                    & ( $true
                     != ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) ) ) )
        | ? [X64: term] :
            ( ( sub @ X64 @ id )
           != X64 ) ) )
    & ( ( hoasinduction_lem2 = $true )
    <=> ! [X234: term,X235: subst > term > subst > $o,X236: term] :
          ( ? [X243: term,X244: subst,X245: subst,X246: subst] :
              ( ( $true
               != ( X235 @ X244 @ X243 @ ( comp @ X246 @ X245 ) ) )
              & ( $true
                = ( X235 @ ( comp @ X244 @ X246 ) @ ( sub @ X243 @ X246 ) @ X245 ) ) )
          | ? [X237: subst,X238: subst,X239: term,X240: subst] :
              ( ( $true
               != ( X235 @ ( comp @ X237 @ X240 ) @ ( sub @ X239 @ X240 ) @ X238 ) )
              & ( $true
                = ( X235 @ X237 @ X239 @ ( comp @ X240 @ X238 ) ) ) )
          | ? [X241: term,X242: term] :
              ( ( $true
               != ( X235 @ id @ ( ap @ ( sub @ X242 @ id ) @ X241 ) @ id ) )
              & ( ( X235 @ id @ X241 @ id )
                = $true )
              & ( $true
                = ( X235 @ id @ X242 @ id ) ) )
          | ( $true
            = ( X235 @ id @ ( ap @ X234 @ X236 ) @ id ) )
          | ( $true
           != ( X235 @ id @ X236 @ id ) )
          | ( $true
           != ( X235 @ id @ X234 @ id ) ) ) )
    & ( axabs = $true )
    & ( ( induction2 = $true )
    <=> ! [X458: term,X459: term > $o] :
          ( ? [X462: term,X463: term] :
              ( ( $true
                = ( X459 @ X463 ) )
              & ( ( X459 @ X462 )
                = $true )
              & ( $true
               != ( X459 @ ( ap @ X463 @ X462 ) ) ) )
          | ( ( X459 @ X458 )
            = $true )
          | ? [X460: term] :
              ( ! [X461: term] :
                  ( ( $true
                   != ( X459 @ X461 ) )
                  | ( $true
                    = ( X459 @ ( sub @ X460 @ ( push @ X461 @ id ) ) ) ) )
              & ( ( X459 @ ( lam @ X460 ) )
               != $true ) )
          | ? [X464: term] :
              ( ( ( X459 @ X464 )
               != $true )
              & ( $true
                = ( var @ X464 ) ) ) ) )
    & ( ( shinj = $true )
    <=> ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) ) )
    & ( apnotvar = $true )
    & ( ! [X309: subst > term > subst > $o,X310: term] :
          ( ( $true
            = ( X309 @ id @ ( lam @ X310 ) @ id ) )
          | ? [X311: term] :
              ( ( $true
               != ( X309 @ id @ ( sub @ X310 @ ( push @ X311 @ id ) ) @ id ) )
              & ( ( X309 @ id @ X311 @ id )
                = $true ) )
          | ? [X312: term,X313: subst,X314: subst,X315: subst] :
              ( ( $true
               != ( X309 @ ( comp @ X315 @ X313 ) @ ( sub @ X312 @ X313 ) @ X314 ) )
              & ( $true
                = ( X309 @ X315 @ X312 @ ( comp @ X313 @ X314 ) ) ) )
          | ? [X316: subst > term > term] :
              ( ( $true
               != ( X309 @ id @ ( lam @ ( X316 @ sh @ one ) ) @ id ) )
              & ! [X317: term] :
                  ( ( ( X309 @ id @ X317 @ id )
                   != $true )
                  | ( $true
                    = ( X309 @ id @ ( X316 @ id @ X317 ) @ id ) ) )
              & ! [X318: term,X319: subst,X320: subst] :
                  ( ( sub @ ( X316 @ X320 @ X318 ) @ X319 )
                  = ( X316 @ ( comp @ X320 @ X319 ) @ ( sub @ X318 @ X319 ) ) ) )
          | ? [X321: subst,X322: term,X323: subst,X324: subst] :
              ( ( $true
                = ( X309 @ ( comp @ X324 @ X321 ) @ ( sub @ X322 @ X321 ) @ X323 ) )
              & ( $true
               != ( X309 @ X324 @ X322 @ ( comp @ X321 @ X323 ) ) ) ) )
    <=> ( hoasinduction_lem3 = $true ) )
    & ( hoaslamnotap_gthm = $true )
    & ( ( ! [X523: term,X524: subst > term > subst > $o] :
            ( ? [X538: term] :
                ( ( $true
                 != ( X524 @ id @ ( sub @ X523 @ ( push @ X538 @ id ) ) @ id ) )
                & ( $true
                  = ( X524 @ id @ X538 @ id ) ) )
            | ( ( X524 @ id @ ( lam @ X523 ) @ id )
              = $true )
            | ? [X525: term,X526: subst,X527: subst,X528: subst] :
                ( ( ( X524 @ X527 @ X525 @ ( comp @ X526 @ X528 ) )
                 != $true )
                & ( $true
                  = ( X524 @ ( comp @ X527 @ X526 ) @ ( sub @ X525 @ X526 ) @ X528 ) ) )
            | ? [X529: term,X530: subst,X531: subst,X532: subst] :
                ( ( $true
                  = ( X524 @ X532 @ X529 @ ( comp @ X530 @ X531 ) ) )
                & ( $true
                 != ( X524 @ ( comp @ X532 @ X530 ) @ ( sub @ X529 @ X530 ) @ X531 ) ) )
            | ? [X533: subst > term > term] :
                ( ! [X534: term] :
                    ( ( $true
                      = ( X524 @ id @ ( X533 @ id @ X534 ) @ id ) )
                    | ( $true
                     != ( X524 @ id @ X534 @ id ) ) )
                & ( $true
                 != ( X524 @ id @ ( lam @ ( X533 @ sh @ one ) ) @ id ) )
                & ! [X535: subst,X536: term,X537: subst] :
                    ( ( sub @ ( X533 @ X537 @ X536 ) @ X535 )
                    = ( X533 @ ( comp @ X537 @ X535 ) @ ( sub @ X536 @ X535 ) ) ) ) )
        | ? [X515: term,X516: subst > term > subst > $o] :
            ( ! [X522: term] :
                ( ( $true
                  = ( X516 @ id @ ( sub @ X515 @ ( push @ X522 @ id ) ) @ id ) )
                | ( $true
                 != ( X516 @ id @ X522 @ id ) ) )
            & ( ( X516 @ id @ ( lam @ ( sub @ X515 @ ( push @ one @ sh ) ) ) @ id )
             != $true )
            & ! [X517: subst > term > term] :
                ( ( ( X516 @ id @ ( lam @ ( X517 @ sh @ one ) ) @ id )
                  = $true )
                | ? [X518: term] :
                    ( ( $true
                      = ( X516 @ id @ X518 @ id ) )
                    & ( ( X516 @ id @ ( X517 @ id @ X518 ) @ id )
                     != $true ) )
                | ? [X519: subst,X520: term,X521: subst] :
                    ( ( X517 @ ( comp @ X521 @ X519 ) @ ( sub @ X520 @ X519 ) )
                   != ( sub @ ( X517 @ X521 @ X520 ) @ X519 ) ) ) )
        | ? [X514: term] :
            ( ( sub @ X514 @ id )
           != X514 ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem0 = $true )
    <=> ! [X121: subst > term > subst > $o] :
        ? [X122: term > $o] :
        ! [X123: term] :
          ( ( X121 @ id @ X123 @ id )
          = ( X122 @ X123 ) ) )
    & ( ( ! [X273: term,X274: term > $o,X275: subst > term > subst > $o] :
            ( ? [X276: term] :
                ( ( X274 @ X276 )
               != ( X275 @ id @ X276 @ id ) )
            | ? [X277: term] :
                ( ( $true
                 != ( X274 @ ( sub @ X273 @ ( push @ X277 @ id ) ) ) )
                & ( ( X274 @ X277 )
                  = $true ) )
            | ( ( X274 @ ( lam @ X273 ) )
              = $true )
            | ? [X278: subst > term > term] :
                ( ( $true
                 != ( X275 @ id @ ( lam @ ( X278 @ sh @ one ) ) @ id ) )
                & ! [X282: term] :
                    ( ( ( X275 @ id @ ( X278 @ id @ X282 ) @ id )
                      = $true )
                    | ( ( X275 @ id @ X282 @ id )
                     != $true ) )
                & ! [X279: subst,X280: subst,X281: term] :
                    ( ( X278 @ ( comp @ X280 @ X279 ) @ ( sub @ X281 @ X279 ) )
                    = ( sub @ ( X278 @ X280 @ X281 ) @ X279 ) ) ) )
        | ? [X272: term] :
            ( ( sub @ X272 @ id )
           != X272 )
        | ? [X268: term] :
          ! [X269: subst > term > term] :
          ? [X270: subst,X271: term] :
            ( ( sub @ X268 @ ( push @ X271 @ X270 ) )
           != ( X269 @ X270 @ X271 ) ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
    <=> ( axscons = $true ) )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ? [X254: term,X255: term] :
              ( ( $true
                = ( X248 @ id @ X255 @ id ) )
              & ( $true
                = ( X248 @ id @ X254 @ id ) )
              & ( $true
               != ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) )
          | ? [X249: subst > term > term] :
              ( ( ( X248 @ id @ ( lam @ ( X249 @ sh @ one ) ) @ id )
               != $true )
              & ! [X250: term] :
                  ( ( $true
                    = ( X248 @ id @ ( X249 @ id @ X250 ) @ id ) )
                  | ( $true
                   != ( X248 @ id @ X250 @ id ) ) )
              & ! [X251: subst,X252: term,X253: subst] :
                  ( ( sub @ ( X249 @ X253 @ X252 ) @ X251 )
                  = ( X249 @ ( comp @ X253 @ X251 ) @ ( sub @ X252 @ X251 ) ) ) ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( induction2_gthm = $true )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ? [X214: subst,X215: subst,X216: term] :
              ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
             != ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ? [X115: subst > term > term] :
              ( ! [X117: subst,X118: subst,X119: term] :
                  ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                  = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
              & ( $true
               != ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) )
              & ! [X116: term] :
                  ( ( $true
                   != ( X113 @ id @ X116 @ id ) )
                  | ( $true
                    = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) ) )
          | ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
            = $true )
          | ? [X120: term] :
              ( ( $true
                = ( X113 @ id @ X120 @ id ) )
              & ( $true
               != ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) ) )
    & ( ( termmset = $true )
    <=> ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ! [X346: term,X347: subst > term > subst > $o] :
            ( ? [X350: subst > term > term] :
                ( ! [X354: term] :
                    ( ( ( X347 @ id @ ( X350 @ id @ X354 ) @ id )
                      = $true )
                    | ( $true
                     != ( X347 @ id @ X354 @ id ) ) )
                & ( ( X347 @ id @ ( lam @ ( X350 @ sh @ one ) ) @ id )
                 != $true )
                & ! [X351: term,X352: subst,X353: subst] :
                    ( ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) )
                    = ( sub @ ( X350 @ X353 @ X351 ) @ X352 ) ) )
            | ? [X348: term,X349: term] :
                ( ( $true
                  = ( X347 @ id @ X349 @ id ) )
                & ( $true
                  = ( X347 @ id @ X348 @ id ) )
                & ( ( X347 @ id @ ( ap @ ( sub @ X348 @ id ) @ X349 ) @ id )
                 != $true ) )
            | ( ( X347 @ id @ X346 @ id )
              = $true ) )
        | ? [X336: subst > term > subst > $o,X337: term > $o,X338: term] :
            ( ! [X344: term] :
                ( ( $true
                  = ( X337 @ ( sub @ X338 @ ( push @ X344 @ id ) ) ) )
                | ( $true
                 != ( X337 @ X344 ) ) )
            & ! [X345: term] :
                ( ( X336 @ id @ X345 @ id )
                = ( X337 @ X345 ) )
            & ( ( X337 @ ( lam @ X338 ) )
             != $true )
            & ! [X339: subst > term > term] :
                ( ? [X340: term] :
                    ( ( $true
                     != ( X336 @ id @ ( X339 @ id @ X340 ) @ id ) )
                    & ( $true
                      = ( X336 @ id @ X340 @ id ) ) )
                | ? [X341: subst,X342: subst,X343: term] :
                    ( ( sub @ ( X339 @ X341 @ X343 ) @ X342 )
                   != ( X339 @ ( comp @ X341 @ X342 ) @ ( sub @ X343 @ X342 ) ) )
                | ( $true
                  = ( X336 @ id @ ( lam @ ( X339 @ sh @ one ) ) @ id ) ) ) )
        | ? [X335: term] :
            ( ( sub @ X335 @ id )
           != X335 )
        | ? [X328: term > $o,X329: term] :
            ( ! [X333: term,X334: term] :
                ( ( $true
                 != ( X328 @ X334 ) )
                | ( $true
                 != ( X328 @ X333 ) )
                | ( ( X328 @ ( ap @ X333 @ X334 ) )
                  = $true ) )
            & ( $true
             != ( X328 @ X329 ) )
            & ! [X331: term] :
                ( ? [X332: term] :
                    ( ( $true
                     != ( X328 @ ( sub @ X331 @ ( push @ X332 @ id ) ) ) )
                    & ( $true
                      = ( X328 @ X332 ) ) )
                | ( ( X328 @ ( lam @ X331 ) )
                  = $true ) )
            & ! [X330: term] :
                ( ( $true
                 != ( var @ X330 ) )
                | ( $true
                  = ( X328 @ X330 ) ) ) )
        | ? [X325: subst > term > subst > $o] :
          ! [X326: term > $o] :
          ? [X327: term] :
            ( ( X325 @ id @ X327 @ id )
           != ( X326 @ X327 ) ) ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( X56 = X57 )
        | ( ( d2subst @ X56 )
         != ( d2subst @ X57 ) ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( ! [X133: subst > term > subst > $o,X134: term] :
            ( ( ( X133 @ id @ ( lam @ X134 ) @ id )
              = $true )
            | ? [X140: term] :
                ( ( $true
                 != ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) )
                & ( $true
                  = ( X133 @ id @ X140 @ id ) ) )
            | ? [X135: subst > term > term] :
                ( ! [X137: subst,X138: subst,X139: term] :
                    ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                    = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                & ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
                 != $true )
                & ! [X136: term] :
                    ( ( $true
                      = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) )
                    | ( $true
                     != ( X133 @ id @ X136 @ id ) ) ) ) )
        | ? [X125: term,X126: subst > term > subst > $o] :
            ( ! [X127: term] :
                ( ( $true
                 != ( X126 @ id @ X127 @ id ) )
                | ( $true
                  = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) ) )
            & ( $true
             != ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
            & ! [X128: subst > term > term] :
                ( ? [X132: term] :
                    ( ( $true
                      = ( X126 @ id @ X132 @ id ) )
                    & ( $true
                     != ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) ) )
                | ? [X129: subst,X130: subst,X131: term] :
                    ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                   != ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
                | ( $true
                  = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) ) ) )
        | ? [X124: term] :
            ( ( sub @ X124 @ id )
           != X124 ) ) )
    & ( ulamvarind = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( substmonoid_gthm = $true )
    & ( ( laminj = $true )
    <=> ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) ) )
    & ( ulamvar1 != $true )
    & ( axapp = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( axidr = $true )
    <=> ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( pushprop_lem2v2_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( hoasinduction_lem2_gthm = $true )
    & ( lamnotvar = $true )
    & ( ( substmonoid_lthm = $true )
    <=> ( ( ! [X63: subst] :
              ( ( comp @ id @ X63 )
              = X63 )
          & ! [X62: subst] :
              ( ( comp @ X62 @ id )
              = X62 ) )
        | ? [X61: subst] :
            ( ( comp @ X61 @ id )
           != X61 )
        | ? [X60: subst] :
            ( ( comp @ id @ X60 )
           != X60 ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ? [X86: subst > term > term] :
              ( ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
               != $true )
              & ! [X87: term,X88: subst,X89: subst] :
                  ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                  = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
              & ! [X90: term] :
                  ( ( $true
                    = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) )
                  | ( $true
                   != ( X82 @ id @ X90 @ id ) ) ) )
          | ? [X85: term] :
              ( ( X83 @ X85 )
             != ( X82 @ id @ X85 @ id ) )
          | ( $true
            = ( X83 @ ( lam @ X81 ) ) )
          | ? [X84: term] :
              ( ( $true
               != ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) )
              & ( $true
                = ( X83 @ X84 ) ) ) )
    <=> ( hoasinduction_lem3v2a = $true ) )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
    <=> ( axshiftcons = $true ) )
    & ( ( pushprop_lem1_lthm = $true )
    <=> ( ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
            ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
              = $true )
            | ( $true
             != ( X37 @ X36 ) ) )
        | ? [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
           != X34 )
        | ? [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
           != X32 ) ) )
    & ( ! [X5: term > $o,X6: term] :
          ( ? [X8: term,X9: term] :
              ( ( $true
               != ( X5 @ ( ap @ X9 @ X8 ) ) )
              & ( $true
                = ( X5 @ X8 ) )
              & ( ( X5 @ X9 )
                = $true ) )
          | ? [X7: term] :
              ( ( $true
                = ( X5 @ X7 ) )
              & ( ( X5 @ ( lam @ X7 ) )
               != $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ? [X10: term] :
              ( ( $true
               != ( X5 @ X10 ) )
              & ( $true
                = ( var @ X10 ) ) ) )
    <=> ( induction = $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( substmonoid = $true )
    <=> ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) ) )
    & ( pushprop_lthm_orig = $true )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
    <=> ! [X303: term] :
        ? [X304: subst > term > term] :
        ! [X305: subst,X306: term] :
          ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
          = ( X304 @ X305 @ X306 ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
    <=> ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ? [X52: subst,X53: subst,X54: term,X55: subst] :
              ( ( $true
                = ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) )
              & ( $true
               != ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) ) )
          | ? [X48: term,X49: subst,X50: subst,X51: subst] :
              ( ( $true
               != ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
              & ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
                = $true ) )
          | ( $true
           != ( X43 @ X42 ) )
          | ( $true
            = ( X43 @ ( ap @ X42 @ X44 ) ) )
          | ( $true
           != ( X43 @ X44 ) )
          | ? [X45: term,X46: term] :
              ( ( $true
                = ( X41 @ id @ X46 @ id ) )
              & ( $true
               != ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) )
              & ( $true
                = ( X41 @ id @ X45 @ id ) ) )
          | ? [X47: term] :
              ( ( X43 @ X47 )
             != ( X41 @ id @ X47 @ id ) ) ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( apinj2 = $true )
    <=> ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) ) )
    & ( lamnotap != $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( induction2lem = $true )
    <=> ! [X260: subst,X261: term,X262: term > $o] :
          ( ? [X266: term] :
              ( ( $true
               != ( X262 @ ( lam @ X266 ) ) )
              & ! [X267: term] :
                  ( ( $true
                    = ( X262 @ ( sub @ X266 @ ( push @ X267 @ id ) ) ) )
                  | ( $true
                   != ( X262 @ X267 ) ) ) )
          | ( $true
            = ( X262 @ ( sub @ X261 @ X260 ) ) )
          | ? [X265: term] :
              ( ( $true
                = ( var @ X265 ) )
              & ( $true
               != ( X262 @ ( sub @ X265 @ X260 ) ) ) )
          | ? [X263: term,X264: term] :
              ( ( $true
                = ( X262 @ X263 ) )
              & ( $true
                = ( X262 @ X264 ) )
              & ( $true
               != ( X262 @ ( ap @ X263 @ X264 ) ) ) ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( ! [X509: term,X510: term,X511: term,X512: term] :
            ( ( X510 = X512 )
            | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
             != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) )
        | ? [X505: term,X506: term,X507: term,X508: term] :
            ( ( X505 != X506 )
            & ( ( ap @ X506 @ X508 )
              = ( ap @ X505 @ X507 ) ) )
        | ? [X504: term] :
            ( ( sub @ X504 @ id )
           != X504 ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            | ( X300 = X302 ) )
        | ? [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
              = ( ap @ X296 @ X295 ) )
            & ( X295 != X298 ) ) ) )
    & ( ! [X141: term] :
        ? [X142: subst > term > term] :
          ( ( X142 @ sh @ one )
          = ( sub @ X141 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b = $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X283: term] :
        ? [X284: subst > term > term] :
          ( ( X284 @ sh @ one )
          = ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
              = ( X110 @ one ) )
            | ( $true
             != ( X109 @ X108 ) )
            | ? [X112: term] :
                ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
               != ( X110 @ X112 ) ) )
        | ? [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
           != X107 ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_gthm = $true )
    & ( ! [X15: subst > term > subst > $o,X16: term] :
          ( ? [X26: term] :
              ( ( $true
               != ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) )
              & ( $true
                = ( X15 @ id @ X26 @ id ) ) )
          | ? [X17: term,X18: subst > term > term] :
              ( ! [X23: subst,X24: subst,X25: term] :
                  ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                  = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
              & ! [X20: subst,X21: subst,X22: term] :
                  ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                  = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
              & ! [X19: term] :
                  ( ( $true
                   != ( X15 @ id @ X19 @ id ) )
                  | ( $true
                    = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) ) )
              & ( $true
               != ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) ) )
    <=> ( hoasinduction_lem3aaa = $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( axmap = $true )
    & ( ( termmset_lthm = $true )
    <=> ( ! [X294: term] :
            ( ( sub @ X294 @ id )
            = X294 )
        | ? [X293: term] :
            ( ( sub @ X293 @ id )
           != X293 ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
        ? [X3: term > $o] :
        ! [X4: term] :
          ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
          = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
    <=> ( hoasapinj1 = $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X385: term] :
        ? [X386: subst > term > term] :
        ! [X387: subst,X388: term] :
          ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
          = ( X386 @ X387 @ X388 ) ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( ! [X186: subst > term > subst > $o] :
        ? [X187: term > $o] :
        ! [X188: term] :
          ( ( X186 @ id @ X188 @ id )
          = ( X187 @ X188 ) )
    <=> ( hoasinduction_lem0_lthm = $true ) )
    & ( hoasapnotvar_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( X207 = X208 )
        | ( ( d2term @ X208 )
         != ( d2term @ X207 ) ) )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ( hoasinduction_lthm = $true )
    <=> ( ! [X425: subst > term > subst > $o,X426: term] :
            ( ? [X431: term] :
                ( ( $true
                  = ( var @ ( sub @ X431 @ id ) ) )
                & ( ( X425 @ id @ X431 @ id )
                 != $true ) )
            | ? [X434: subst > term > term] :
                ( ( $true
                 != ( X425 @ id @ ( lam @ ( X434 @ sh @ one ) ) @ id ) )
                & ! [X438: term] :
                    ( ( $true
                     != ( X425 @ id @ X438 @ id ) )
                    | ( $true
                      = ( X425 @ id @ ( X434 @ id @ X438 ) @ id ) ) )
                & ! [X435: subst,X436: term,X437: subst] :
                    ( ( X434 @ ( comp @ X437 @ X435 ) @ ( sub @ X436 @ X435 ) )
                    = ( sub @ ( X434 @ X437 @ X436 ) @ X435 ) ) )
            | ? [X439: subst,X440: term,X441: subst,X442: subst] :
                ( ( $true
                 != ( X425 @ ( comp @ X441 @ X442 ) @ ( sub @ X440 @ X442 ) @ X439 ) )
                & ( ( X425 @ X441 @ X440 @ ( comp @ X442 @ X439 ) )
                  = $true ) )
            | ? [X432: term,X433: term] :
                ( ( ( X425 @ id @ X433 @ id )
                  = $true )
                & ( $true
                 != ( X425 @ id @ ( ap @ ( sub @ X433 @ id ) @ X432 ) @ id ) )
                & ( $true
                  = ( X425 @ id @ X432 @ id ) ) )
            | ( $true
              = ( X425 @ id @ X426 @ id ) )
            | ? [X427: subst,X428: subst,X429: subst,X430: term] :
                ( ( ( X425 @ ( comp @ X429 @ X428 ) @ ( sub @ X430 @ X428 ) @ X427 )
                  = $true )
                & ( $true
                 != ( X425 @ X429 @ X430 @ ( comp @ X428 @ X427 ) ) ) ) )
        | ? [X409: term,X410: subst > term > subst > $o] :
            ( ! [X421: subst,X422: subst,X423: subst,X424: term] :
                ( ( ( X410 @ ( comp @ X422 @ X421 ) @ ( sub @ X424 @ X421 ) @ X423 )
                 != $true )
                | ( ( X410 @ X422 @ X424 @ ( comp @ X421 @ X423 ) )
                  = $true ) )
            & ! [X417: subst,X418: subst,X419: subst,X420: term] :
                ( ( $true
                 != ( X410 @ X417 @ X420 @ ( comp @ X418 @ X419 ) ) )
                | ( $true
                  = ( X410 @ ( comp @ X417 @ X418 ) @ ( sub @ X420 @ X418 ) @ X419 ) ) )
            & ! [X416: term] :
                ( ( $true
                 != ( X410 @ id @ X416 @ id ) )
                | ( $true
                  = ( X410 @ id @ ( sub @ X409 @ ( push @ X416 @ id ) ) @ id ) ) )
            & ( $true
             != ( X410 @ id @ ( lam @ X409 ) @ id ) )
            & ! [X411: subst > term > term] :
                ( ? [X415: term] :
                    ( ( ( X410 @ id @ X415 @ id )
                      = $true )
                    & ( ( X410 @ id @ ( X411 @ id @ X415 ) @ id )
                     != $true ) )
                | ( $true
                  = ( X410 @ id @ ( lam @ ( X411 @ sh @ one ) ) @ id ) )
                | ? [X412: subst,X413: subst,X414: term] :
                    ( ( X411 @ ( comp @ X412 @ X413 ) @ ( sub @ X414 @ X413 ) )
                   != ( sub @ ( X411 @ X412 @ X414 ) @ X413 ) ) ) )
        | ? [X396: term,X397: term,X398: subst > term > subst > $o] :
            ( ! [X403: term,X404: term] :
                ( ( ( X398 @ id @ X404 @ id )
                 != $true )
                | ( $true
                  = ( X398 @ id @ ( ap @ ( sub @ X404 @ id ) @ X403 ) @ id ) )
                | ( ( X398 @ id @ X403 @ id )
                 != $true ) )
            & ( $true
             != ( X398 @ id @ ( ap @ X396 @ X397 ) @ id ) )
            & ( $true
              = ( X398 @ id @ X397 @ id ) )
            & ! [X399: subst,X400: subst,X401: subst,X402: term] :
                ( ( $true
                 != ( X398 @ X401 @ X402 @ ( comp @ X400 @ X399 ) ) )
                | ( $true
                  = ( X398 @ ( comp @ X401 @ X400 ) @ ( sub @ X402 @ X400 ) @ X399 ) ) )
            & ! [X405: term,X406: subst,X407: subst,X408: subst] :
                ( ( $true
                 != ( X398 @ ( comp @ X407 @ X408 ) @ ( sub @ X405 @ X408 ) @ X406 ) )
                | ( $true
                  = ( X398 @ X407 @ X405 @ ( comp @ X408 @ X406 ) ) ) )
            & ( ( X398 @ id @ X396 @ id )
              = $true ) )
        | ? [X389: term,X390: term > $o] :
            ( ( $true
             != ( X390 @ X389 ) )
            & ! [X391: term] :
                ( ( ( X390 @ ( lam @ X391 ) )
                  = $true )
                | ? [X392: term] :
                    ( ( ( X390 @ X392 )
                      = $true )
                    & ( $true
                     != ( X390 @ ( sub @ X391 @ ( push @ X392 @ id ) ) ) ) ) )
            & ! [X393: term,X394: term] :
                ( ( $true
                 != ( X390 @ X393 ) )
                | ( $true
                  = ( X390 @ ( ap @ X393 @ X394 ) ) )
                | ( ( X390 @ X394 )
                 != $true ) )
            & ! [X395: term] :
                ( ( $true
                 != ( var @ X395 ) )
                | ( $true
                  = ( X390 @ X395 ) ) ) ) ) )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ! [X375: subst > term > subst > $o,X376: term] :
          ( ( $true
            = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
          | ? [X382: term] :
              ( ( $true
                = ( X375 @ id @ X382 @ id ) )
              & ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
               != $true ) )
          | ? [X377: subst > term > term] :
              ( ! [X378: term] :
                  ( ( $true
                   != ( X375 @ id @ X378 @ id ) )
                  | ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                    = $true ) )
              & ! [X379: term,X380: subst,X381: subst] :
                  ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                  = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
              & ( $true
               != ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) ) ) ) ),
    inference(ennf_transformation,[status(thm)],[f11]) ).

thf(f11,plain,
    ( ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
    <=> ( axvarcons = $true ) )
    & ( ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ~ ! [X31: term] :
                ( ( X29 @ X31 )
                = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
            = ( X29 @ one ) )
          | ( $true
           != ( X27 @ X28 ) ) )
    <=> ( pushprop_lem1v2 = $true ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( pushprop_lem0 = $true )
    <=> ! [X443: subst,X444: term > $o,X445: term] :
          ~ ! [X446: term > $o] :
              ~ ! [X447: term] :
                  ( ( X446 @ X447 )
                  = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( ( axidl = $true )
    <=> ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 ) )
    & ( pushprop_lthm = $true )
    & ( axassoc = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lthm_3 = $true )
    <=> ( ! [X465: subst > term > subst > $o] :
            ~ ! [X466: term > $o] :
                ~ ! [X467: term] :
                    ( ( X465 @ id @ X467 @ id )
                    = ( X466 @ X467 ) )
       => ( ! [X468: term > $o,X469: term] :
              ( ~ ! [X470: term] :
                    ( ~ ! [X471: term] :
                          ( ( ( X468 @ ( sub @ X470 @ ( push @ X471 @ id ) ) )
                            = $true )
                          | ( ( X468 @ X471 )
                           != $true ) )
                    | ( $true
                      = ( X468 @ ( lam @ X470 ) ) ) )
              | ~ ! [X472: term,X473: term] :
                    ( ( ( X468 @ X472 )
                     != $true )
                    | ( $true
                      = ( X468 @ ( ap @ X472 @ X473 ) ) )
                    | ( $true
                     != ( X468 @ X473 ) ) )
              | ~ ! [X474: term] :
                    ( ( ( X468 @ X474 )
                      = $true )
                    | ( $true
                     != ( var @ X474 ) ) )
              | ( ( X468 @ X469 )
                = $true ) )
         => ( ! [X475: term] :
                ( ( sub @ X475 @ id )
                = X475 )
           => ( ! [X476: term,X477: term > $o,X478: subst > term > subst > $o] :
                  ( ~ ! [X485: term] :
                        ( ( X478 @ id @ X485 @ id )
                        = ( X477 @ X485 ) )
                  | ~ ! [X479: term] :
                        ( ( $true
                         != ( X477 @ X479 ) )
                        | ( $true
                          = ( X477 @ ( sub @ X476 @ ( push @ X479 @ id ) ) ) ) )
                  | ~ ! [X480: subst > term > term] :
                        ( ~ ! [X481: subst,X482: subst,X483: term] :
                              ( ( sub @ ( X480 @ X481 @ X483 ) @ X482 )
                              = ( X480 @ ( comp @ X481 @ X482 ) @ ( sub @ X483 @ X482 ) ) )
                        | ( $true
                          = ( X478 @ id @ ( lam @ ( X480 @ sh @ one ) ) @ id ) )
                        | ~ ! [X484: term] :
                              ( ( ( X478 @ id @ ( X480 @ id @ X484 ) @ id )
                                = $true )
                              | ( $true
                               != ( X478 @ id @ X484 @ id ) ) ) )
                  | ( $true
                    = ( X477 @ ( lam @ X476 ) ) ) )
             => ! [X486: subst > term > subst > $o,X487: term] :
                  ( ~ ! [X492: subst > term > term] :
                        ( ~ ! [X496: term] :
                              ( ( $true
                               != ( X486 @ id @ X496 @ id ) )
                              | ( ( X486 @ id @ ( X492 @ id @ X496 ) @ id )
                                = $true ) )
                        | ( $true
                          = ( X486 @ id @ ( lam @ ( X492 @ sh @ one ) ) @ id ) )
                        | ~ ! [X493: subst,X494: subst,X495: term] :
                              ( ( X492 @ ( comp @ X493 @ X494 ) @ ( sub @ X495 @ X494 ) )
                              = ( sub @ ( X492 @ X493 @ X495 ) @ X494 ) ) )
                  | ~ ! [X497: subst,X498: term,X499: subst,X500: subst] :
                        ( ( $true
                          = ( X486 @ X500 @ X498 @ ( comp @ X497 @ X499 ) ) )
                        | ( $true
                         != ( X486 @ ( comp @ X500 @ X497 ) @ ( sub @ X498 @ X497 ) @ X499 ) ) )
                  | ~ ! [X503: term] :
                        ( ( $true
                          = ( X486 @ id @ X503 @ id ) )
                        | ( ( var @ ( sub @ X503 @ id ) )
                         != $true ) )
                  | ~ ! [X488: subst,X489: term,X490: subst,X491: subst] :
                        ( ( $true
                          = ( X486 @ ( comp @ X490 @ X491 ) @ ( sub @ X489 @ X491 ) @ X488 ) )
                        | ( $true
                         != ( X486 @ X490 @ X489 @ ( comp @ X491 @ X488 ) ) ) )
                  | ( $true
                    = ( X486 @ id @ X487 @ id ) )
                  | ~ ! [X501: term,X502: term] :
                        ( ( $true
                         != ( X486 @ id @ X501 @ id ) )
                        | ( $true
                          = ( X486 @ id @ ( ap @ ( sub @ X502 @ id ) @ X501 ) @ id ) )
                        | ( $true
                         != ( X486 @ id @ X502 @ id ) ) ) ) ) ) ) ) )
    & ( ( hoasinduction_lem3a = $true )
    <=> ! [X450: term,X451: subst > term > subst > $o] :
          ( ( $true
            = ( X451 @ id @ ( lam @ X450 ) @ id ) )
          | ~ ! [X453: subst > term > term] :
                ( ~ ! [X454: term] :
                      ( ( $true
                       != ( X451 @ id @ X454 @ id ) )
                      | ( $true
                        = ( X451 @ id @ ( X453 @ id @ X454 ) @ id ) ) )
                | ~ ! [X455: subst,X456: subst,X457: term] :
                      ( ( X453 @ ( comp @ X455 @ X456 ) @ ( sub @ X457 @ X456 ) )
                      = ( sub @ ( X453 @ X455 @ X457 ) @ X456 ) )
                | ( $true
                  = ( X451 @ id @ ( lam @ ( X453 @ sh @ one ) ) @ id ) ) )
          | ~ ! [X452: term] :
                ( ( ( X451 @ id @ ( sub @ X450 @ ( push @ X452 @ id ) ) @ id )
                  = $true )
                | ( $true
                 != ( X451 @ id @ X452 @ id ) ) ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoasapinj2_gthm = $true )
    & ( hoasapnotvar = $true )
    & ( ulamvarsh = $true )
    & ( ( hoasinduction_lem3v2_lthm = $true )
    <=> ( ! [X148: term] :
            ( ( sub @ X148 @ id )
            = X148 )
       => ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ~ ! [X157: subst,X158: subst,X159: term,X160: subst] :
                  ( ( $true
                    = ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
                  | ( $true
                   != ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
            | ( $true
              = ( X151 @ ( lam @ X150 ) ) )
            | ~ ! [X152: term] :
                  ( ( $true
                    = ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) )
                  | ( $true
                   != ( X151 @ X152 ) ) )
            | ~ ! [X153: subst,X154: term,X155: subst,X156: subst] :
                  ( ( $true
                   != ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) )
                  | ( $true
                    = ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) ) )
            | ~ ! [X161: subst > term > term] :
                  ( ~ ! [X162: subst,X163: subst,X164: term] :
                        ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                        = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) )
                  | ( $true
                    = ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) )
                  | ~ ! [X165: term] :
                        ( ( $true
                         != ( X149 @ id @ X165 @ id ) )
                        | ( $true
                          = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) ) )
            | ~ ! [X166: term] :
                  ( ( X149 @ id @ X166 @ id )
                  = ( X151 @ X166 ) ) ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( axvarshift = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) )
          | ~ ! [X95: subst,X96: subst,X97: term] :
                ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
                = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ~ ! [X98: term,X99: subst,X100: subst] :
                ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
                = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( ( ! [X218: subst,X219: term] :
            ( ( sub @ one @ ( push @ X219 @ X218 ) )
            = X219 )
       => ( ! [X220: subst,X221: term] :
              ( ( comp @ sh @ ( push @ X221 @ X220 ) )
              = X220 )
         => ( ! [X222: term,X223: term] :
                ( ( ( lam @ X223 )
                 != ( lam @ X222 ) )
                | ( X222 = X223 ) )
           => ! [X224: subst > term > term,X225: subst > term > term,X226: term,X227: subst] :
                ( ( ( X225 @ X227 @ X226 )
                  = ( X224 @ X227 @ X226 ) )
                | ~ ! [X231: subst,X232: subst,X233: term] :
                      ( ( X225 @ ( comp @ X232 @ X231 ) @ ( sub @ X233 @ X231 ) )
                      = ( sub @ ( X225 @ X232 @ X233 ) @ X231 ) )
                | ~ ! [X228: subst,X229: term,X230: subst] :
                      ( ( X224 @ ( comp @ X228 @ X230 ) @ ( sub @ X229 @ X230 ) )
                      = ( sub @ ( X224 @ X228 @ X229 ) @ X230 ) )
                | ( ( lam @ ( X225 @ sh @ one ) )
                 != ( lam @ ( X224 @ sh @ one ) ) ) ) ) ) )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( termmset_gthm = $true )
    & ( axclos = $true )
    & ( ( hoasinduction = $true )
    <=> ! [X189: subst > term > subst > $o,X190: term] :
          ( ~ ! [X198: term] :
                ( ( $true
                  = ( X189 @ id @ X198 @ id ) )
                | ( $true
                 != ( var @ ( sub @ X198 @ id ) ) ) )
          | ~ ! [X191: term,X192: term] :
                ( ( ( X189 @ id @ X191 @ id )
                 != $true )
                | ( $true
                 != ( X189 @ id @ X192 @ id ) )
                | ( $true
                  = ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) ) )
          | ( $true
            = ( X189 @ id @ X190 @ id ) )
          | ~ ! [X199: subst,X200: subst,X201: subst,X202: term] :
                ( ( $true
                 != ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) )
                | ( $true
                  = ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) ) )
          | ~ ! [X193: subst > term > term] :
                ( ~ ! [X197: term] :
                      ( ( ( X189 @ id @ X197 @ id )
                       != $true )
                      | ( $true
                        = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) ) )
                | ~ ! [X194: subst,X195: subst,X196: term] :
                      ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                      = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
                | ( $true
                  = ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) ) )
          | ~ ! [X203: subst,X204: subst,X205: term,X206: subst] :
                ( ( $true
                 != ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) )
                | ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
                  = $true ) ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( pushprop = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ! [X356: term,X357: term > $o,X358: subst > term > subst > $o] :
          ( ~ ! [X365: term] :
                ( ( $true
                  = ( X357 @ ( sub @ X356 @ ( push @ X365 @ id ) ) ) )
                | ( ( X357 @ X365 )
                 != $true ) )
          | ~ ! [X359: term] :
                ( ( X358 @ id @ X359 @ id )
                = ( X357 @ X359 ) )
          | ( ( X357 @ ( lam @ X356 ) )
            = $true )
          | ~ ! [X360: subst > term > term] :
                ( ~ ! [X362: subst,X363: term,X364: subst] :
                      ( ( X360 @ ( comp @ X362 @ X364 ) @ ( sub @ X363 @ X364 ) )
                      = ( sub @ ( X360 @ X362 @ X363 ) @ X364 ) )
                | ~ ! [X361: term] :
                      ( ( $true
                       != ( X358 @ id @ X361 @ id ) )
                      | ( $true
                        = ( X358 @ id @ ( X360 @ id @ X361 ) @ id ) ) )
                | ( ( X358 @ id @ ( lam @ ( X360 @ sh @ one ) ) @ id )
                  = $true ) )
          | ~ ! [X370: subst,X371: subst,X372: subst,X373: term] :
                ( ( ( X358 @ X371 @ X373 @ ( comp @ X370 @ X372 ) )
                  = $true )
                | ( $true
                 != ( X358 @ ( comp @ X371 @ X370 ) @ ( sub @ X373 @ X370 ) @ X372 ) ) )
          | ~ ! [X366: subst,X367: subst,X368: subst,X369: term] :
                ( ( $true
                  = ( X358 @ ( comp @ X368 @ X366 ) @ ( sub @ X369 @ X366 ) @ X367 ) )
                | ( $true
                 != ( X358 @ X368 @ X369 @ ( comp @ X366 @ X367 ) ) ) ) ) )
    & ( ( ! [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
            = X168 )
       => ( ! [X169: subst,X170: term] :
              ( ( comp @ sh @ ( push @ X170 @ X169 ) )
              = X169 )
         => ( ! [X171: subst] :
                ( ( comp @ X171 @ id )
                = X171 )
           => ( ! [X172: term,X173: term > $o] :
                  ( ~ ! [X176: term,X177: term] :
                        ( ( $true
                         != ( X173 @ X177 ) )
                        | ( ( X173 @ ( ap @ X177 @ X176 ) )
                          = $true )
                        | ( $true
                         != ( X173 @ X176 ) ) )
                  | ~ ! [X175: term] :
                        ( ( $true
                         != ( var @ X175 ) )
                        | ( ( X173 @ X175 )
                          = $true ) )
                  | ~ ! [X174: term] :
                        ( ( ( X173 @ X174 )
                         != $true )
                        | ( $true
                          = ( X173 @ ( lam @ X174 ) ) ) )
                  | ( $true
                    = ( X173 @ X172 ) ) )
             => ! [X178: subst,X179: term > $o,X180: term] :
                  ( ~ ! [X182: term,X183: term] :
                        ( ( $true
                         != ( X179 @ X183 ) )
                        | ( $true
                          = ( X179 @ ( ap @ X183 @ X182 ) ) )
                        | ( $true
                         != ( X179 @ X182 ) ) )
                  | ( $true
                    = ( X179 @ ( sub @ X180 @ X178 ) ) )
                  | ~ ! [X181: term] :
                        ( ( $true
                         != ( var @ X181 ) )
                        | ( $true
                          = ( X179 @ ( sub @ X181 @ X178 ) ) ) )
                  | ~ ! [X184: term] :
                        ( ( $true
                          = ( X179 @ ( lam @ X184 ) ) )
                        | ~ ! [X185: term] :
                              ( ( $true
                                = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                              | ( $true
                               != ( X179 @ X185 ) ) ) ) ) ) ) ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( ( induction2_lthm = $true )
    <=> ( ! [X64: term] :
            ( ( sub @ X64 @ id )
            = X64 )
       => ( ! [X65: subst,X66: term > $o,X67: term] :
              ( ~ ! [X70: term] :
                    ( ~ ! [X71: term] :
                          ( ( $true
                           != ( X66 @ X71 ) )
                          | ( $true
                            = ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) )
                    | ( $true
                      = ( X66 @ ( lam @ X70 ) ) ) )
              | ~ ! [X68: term,X69: term] :
                    ( ( ( X66 @ ( ap @ X68 @ X69 ) )
                      = $true )
                    | ( ( X66 @ X68 )
                     != $true )
                    | ( ( X66 @ X69 )
                     != $true ) )
              | ( $true
                = ( X66 @ ( sub @ X67 @ X65 ) ) )
              | ~ ! [X72: term] :
                    ( ( ( var @ X72 )
                     != $true )
                    | ( $true
                      = ( X66 @ ( sub @ X72 @ X65 ) ) ) ) )
         => ! [X73: term,X74: term > $o] :
              ( ( $true
                = ( X74 @ X73 ) )
              | ~ ! [X77: term] :
                    ( ( $true
                      = ( X74 @ X77 ) )
                    | ( $true
                     != ( var @ X77 ) ) )
              | ~ ! [X75: term] :
                    ( ~ ! [X76: term] :
                          ( ( $true
                            = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                          | ( $true
                           != ( X74 @ X76 ) ) )
                    | ( $true
                      = ( X74 @ ( lam @ X75 ) ) ) )
              | ~ ! [X78: term,X79: term] :
                    ( ( $true
                     != ( X74 @ X79 ) )
                    | ( $true
                     != ( X74 @ X78 ) )
                    | ( ( X74 @ ( ap @ X79 @ X78 ) )
                      = $true ) ) ) ) ) )
    & ( ( hoasinduction_lem2 = $true )
    <=> ! [X234: term,X235: subst > term > subst > $o,X236: term] :
          ( ( $true
           != ( X235 @ id @ X234 @ id ) )
          | ~ ! [X241: term,X242: term] :
                ( ( $true
                 != ( X235 @ id @ X242 @ id ) )
                | ( ( X235 @ id @ X241 @ id )
                 != $true )
                | ( $true
                  = ( X235 @ id @ ( ap @ ( sub @ X242 @ id ) @ X241 ) @ id ) ) )
          | ( $true
            = ( X235 @ id @ ( ap @ X234 @ X236 ) @ id ) )
          | ~ ! [X237: subst,X238: subst,X239: term,X240: subst] :
                ( ( $true
                  = ( X235 @ ( comp @ X237 @ X240 ) @ ( sub @ X239 @ X240 ) @ X238 ) )
                | ( $true
                 != ( X235 @ X237 @ X239 @ ( comp @ X240 @ X238 ) ) ) )
          | ( $true
           != ( X235 @ id @ X236 @ id ) )
          | ~ ! [X243: term,X244: subst,X245: subst,X246: subst] :
                ( ( $true
                 != ( X235 @ ( comp @ X244 @ X246 ) @ ( sub @ X243 @ X246 ) @ X245 ) )
                | ( $true
                  = ( X235 @ X244 @ X243 @ ( comp @ X246 @ X245 ) ) ) ) ) )
    & ( axabs = $true )
    & ( ( induction2 = $true )
    <=> ! [X458: term,X459: term > $o] :
          ( ~ ! [X460: term] :
                ( ~ ! [X461: term] :
                      ( ( $true
                       != ( X459 @ X461 ) )
                      | ( $true
                        = ( X459 @ ( sub @ X460 @ ( push @ X461 @ id ) ) ) ) )
                | ( ( X459 @ ( lam @ X460 ) )
                  = $true ) )
          | ~ ! [X462: term,X463: term] :
                ( ( ( X459 @ X462 )
                 != $true )
                | ( $true
                 != ( X459 @ X463 ) )
                | ( $true
                  = ( X459 @ ( ap @ X463 @ X462 ) ) ) )
          | ~ ! [X464: term] :
                ( ( ( X459 @ X464 )
                  = $true )
                | ( $true
                 != ( var @ X464 ) ) )
          | ( ( X459 @ X458 )
            = $true ) ) )
    & ( ( shinj = $true )
    <=> ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) ) )
    & ( apnotvar = $true )
    & ( ( hoasinduction_lem3 = $true )
    <=> ! [X309: subst > term > subst > $o,X310: term] :
          ( ~ ! [X312: term,X313: subst,X314: subst,X315: subst] :
                ( ( $true
                  = ( X309 @ ( comp @ X315 @ X313 ) @ ( sub @ X312 @ X313 ) @ X314 ) )
                | ( $true
                 != ( X309 @ X315 @ X312 @ ( comp @ X313 @ X314 ) ) ) )
          | ( $true
            = ( X309 @ id @ ( lam @ X310 ) @ id ) )
          | ~ ! [X311: term] :
                ( ( $true
                  = ( X309 @ id @ ( sub @ X310 @ ( push @ X311 @ id ) ) @ id ) )
                | ( ( X309 @ id @ X311 @ id )
                 != $true ) )
          | ~ ! [X316: subst > term > term] :
                ( ( $true
                  = ( X309 @ id @ ( lam @ ( X316 @ sh @ one ) ) @ id ) )
                | ~ ! [X317: term] :
                      ( ( ( X309 @ id @ X317 @ id )
                       != $true )
                      | ( $true
                        = ( X309 @ id @ ( X316 @ id @ X317 ) @ id ) ) )
                | ~ ! [X318: term,X319: subst,X320: subst] :
                      ( ( sub @ ( X316 @ X320 @ X318 ) @ X319 )
                      = ( X316 @ ( comp @ X320 @ X319 ) @ ( sub @ X318 @ X319 ) ) ) )
          | ~ ! [X321: subst,X322: term,X323: subst,X324: subst] :
                ( ( $true
                 != ( X309 @ ( comp @ X324 @ X321 ) @ ( sub @ X322 @ X321 ) @ X323 ) )
                | ( $true
                  = ( X309 @ X324 @ X322 @ ( comp @ X321 @ X323 ) ) ) ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( ( ! [X514: term] :
            ( ( sub @ X514 @ id )
            = X514 )
       => ( ! [X515: term,X516: subst > term > subst > $o] :
              ( ~ ! [X522: term] :
                    ( ( $true
                      = ( X516 @ id @ ( sub @ X515 @ ( push @ X522 @ id ) ) @ id ) )
                    | ( $true
                     != ( X516 @ id @ X522 @ id ) ) )
              | ~ ! [X517: subst > term > term] :
                    ( ~ ! [X518: term] :
                          ( ( ( X516 @ id @ ( X517 @ id @ X518 ) @ id )
                            = $true )
                          | ( $true
                           != ( X516 @ id @ X518 @ id ) ) )
                    | ~ ! [X519: subst,X520: term,X521: subst] :
                          ( ( X517 @ ( comp @ X521 @ X519 ) @ ( sub @ X520 @ X519 ) )
                          = ( sub @ ( X517 @ X521 @ X520 ) @ X519 ) )
                    | ( ( X516 @ id @ ( lam @ ( X517 @ sh @ one ) ) @ id )
                      = $true ) )
              | ( ( X516 @ id @ ( lam @ ( sub @ X515 @ ( push @ one @ sh ) ) ) @ id )
                = $true ) )
         => ! [X523: term,X524: subst > term > subst > $o] :
              ( ~ ! [X538: term] :
                    ( ( $true
                      = ( X524 @ id @ ( sub @ X523 @ ( push @ X538 @ id ) ) @ id ) )
                    | ( $true
                     != ( X524 @ id @ X538 @ id ) ) )
              | ( ( X524 @ id @ ( lam @ X523 ) @ id )
                = $true )
              | ~ ! [X529: term,X530: subst,X531: subst,X532: subst] :
                    ( ( $true
                      = ( X524 @ ( comp @ X532 @ X530 ) @ ( sub @ X529 @ X530 ) @ X531 ) )
                    | ( $true
                     != ( X524 @ X532 @ X529 @ ( comp @ X530 @ X531 ) ) ) )
              | ~ ! [X533: subst > term > term] :
                    ( ~ ! [X534: term] :
                          ( ( $true
                            = ( X524 @ id @ ( X533 @ id @ X534 ) @ id ) )
                          | ( $true
                           != ( X524 @ id @ X534 @ id ) ) )
                    | ( $true
                      = ( X524 @ id @ ( lam @ ( X533 @ sh @ one ) ) @ id ) )
                    | ~ ! [X535: subst,X536: term,X537: subst] :
                          ( ( sub @ ( X533 @ X537 @ X536 ) @ X535 )
                          = ( X533 @ ( comp @ X537 @ X535 ) @ ( sub @ X536 @ X535 ) ) ) )
              | ~ ! [X525: term,X526: subst,X527: subst,X528: subst] :
                    ( ( $true
                     != ( X524 @ ( comp @ X527 @ X526 ) @ ( sub @ X525 @ X526 ) @ X528 ) )
                    | ( ( X524 @ X527 @ X525 @ ( comp @ X526 @ X528 ) )
                      = $true ) ) ) ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ! [X121: subst > term > subst > $o] :
          ~ ! [X122: term > $o] :
              ~ ! [X123: term] :
                  ( ( X121 @ id @ X123 @ id )
                  = ( X122 @ X123 ) )
    <=> ( hoasinduction_lem0 = $true ) )
    & ( ( ! [X268: term] :
            ~ ! [X269: subst > term > term] :
                ~ ! [X270: subst,X271: term] :
                    ( ( sub @ X268 @ ( push @ X271 @ X270 ) )
                    = ( X269 @ X270 @ X271 ) )
       => ( ! [X272: term] :
              ( ( sub @ X272 @ id )
              = X272 )
         => ! [X273: term,X274: term > $o,X275: subst > term > subst > $o] :
              ( ~ ! [X276: term] :
                    ( ( X274 @ X276 )
                    = ( X275 @ id @ X276 @ id ) )
              | ~ ! [X278: subst > term > term] :
                    ( ( $true
                      = ( X275 @ id @ ( lam @ ( X278 @ sh @ one ) ) @ id ) )
                    | ~ ! [X282: term] :
                          ( ( ( X275 @ id @ ( X278 @ id @ X282 ) @ id )
                            = $true )
                          | ( ( X275 @ id @ X282 @ id )
                           != $true ) )
                    | ~ ! [X279: subst,X280: subst,X281: term] :
                          ( ( X278 @ ( comp @ X280 @ X279 ) @ ( sub @ X281 @ X279 ) )
                          = ( sub @ ( X278 @ X280 @ X281 ) @ X279 ) ) )
              | ( ( X274 @ ( lam @ X273 ) )
                = $true )
              | ~ ! [X277: term] :
                    ( ( $true
                      = ( X274 @ ( sub @ X273 @ ( push @ X277 @ id ) ) ) )
                    | ( ( X274 @ X277 )
                     != $true ) ) ) ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
    <=> ( axscons = $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
    <=> ! [X247: term,X248: subst > term > subst > $o] :
          ( ~ ! [X249: subst > term > term] :
                ( ~ ! [X251: subst,X252: term,X253: subst] :
                      ( ( sub @ ( X249 @ X253 @ X252 ) @ X251 )
                      = ( X249 @ ( comp @ X253 @ X251 ) @ ( sub @ X252 @ X251 ) ) )
                | ( ( X248 @ id @ ( lam @ ( X249 @ sh @ one ) ) @ id )
                  = $true )
                | ~ ! [X250: term] :
                      ( ( $true
                        = ( X248 @ id @ ( X249 @ id @ X250 ) @ id ) )
                      | ( $true
                       != ( X248 @ id @ X250 @ id ) ) ) )
          | ~ ! [X254: term,X255: term] :
                ( ( $true
                 != ( X248 @ id @ X254 @ id ) )
                | ( $true
                 != ( X248 @ id @ X255 @ id ) )
                | ( $true
                  = ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) ) ) )
    & ( induction2_gthm = $true )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ~ ! [X214: subst,X215: subst,X216: term] :
                ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
                = ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
            = $true )
          | ~ ! [X120: term] :
                ( ( $true
                  = ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) )
                | ( $true
                 != ( X113 @ id @ X120 @ id ) ) )
          | ~ ! [X115: subst > term > term] :
                ( ( $true
                  = ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) )
                | ~ ! [X117: subst,X118: subst,X119: term] :
                      ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                      = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
                | ~ ! [X116: term] :
                      ( ( $true
                       != ( X113 @ id @ X116 @ id ) )
                      | ( $true
                        = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) ) ) ) )
    & ( ( termmset = $true )
    <=> ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ! [X325: subst > term > subst > $o] :
            ~ ! [X326: term > $o] :
                ~ ! [X327: term] :
                    ( ( X325 @ id @ X327 @ id )
                    = ( X326 @ X327 ) )
       => ( ! [X328: term > $o,X329: term] :
              ( ~ ! [X331: term] :
                    ( ~ ! [X332: term] :
                          ( ( $true
                           != ( X328 @ X332 ) )
                          | ( $true
                            = ( X328 @ ( sub @ X331 @ ( push @ X332 @ id ) ) ) ) )
                    | ( ( X328 @ ( lam @ X331 ) )
                      = $true ) )
              | ~ ! [X330: term] :
                    ( ( $true
                     != ( var @ X330 ) )
                    | ( $true
                      = ( X328 @ X330 ) ) )
              | ( $true
                = ( X328 @ X329 ) )
              | ~ ! [X333: term,X334: term] :
                    ( ( $true
                     != ( X328 @ X334 ) )
                    | ( $true
                     != ( X328 @ X333 ) )
                    | ( ( X328 @ ( ap @ X333 @ X334 ) )
                      = $true ) ) )
         => ( ! [X335: term] :
                ( ( sub @ X335 @ id )
                = X335 )
           => ( ! [X336: subst > term > subst > $o,X337: term > $o,X338: term] :
                  ( ~ ! [X344: term] :
                        ( ( $true
                          = ( X337 @ ( sub @ X338 @ ( push @ X344 @ id ) ) ) )
                        | ( $true
                         != ( X337 @ X344 ) ) )
                  | ~ ! [X339: subst > term > term] :
                        ( ~ ! [X341: subst,X342: subst,X343: term] :
                              ( ( sub @ ( X339 @ X341 @ X343 ) @ X342 )
                              = ( X339 @ ( comp @ X341 @ X342 ) @ ( sub @ X343 @ X342 ) ) )
                        | ~ ! [X340: term] :
                              ( ( $true
                               != ( X336 @ id @ X340 @ id ) )
                              | ( $true
                                = ( X336 @ id @ ( X339 @ id @ X340 ) @ id ) ) )
                        | ( $true
                          = ( X336 @ id @ ( lam @ ( X339 @ sh @ one ) ) @ id ) ) )
                  | ~ ! [X345: term] :
                        ( ( X336 @ id @ X345 @ id )
                        = ( X337 @ X345 ) )
                  | ( ( X337 @ ( lam @ X338 ) )
                    = $true ) )
             => ! [X346: term,X347: subst > term > subst > $o] :
                  ( ( ( X347 @ id @ X346 @ id )
                    = $true )
                  | ~ ! [X350: subst > term > term] :
                        ( ~ ! [X354: term] :
                              ( ( ( X347 @ id @ ( X350 @ id @ X354 ) @ id )
                                = $true )
                              | ( $true
                               != ( X347 @ id @ X354 @ id ) ) )
                        | ~ ! [X351: term,X352: subst,X353: subst] :
                              ( ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) )
                              = ( sub @ ( X350 @ X353 @ X351 ) @ X352 ) )
                        | ( ( X347 @ id @ ( lam @ ( X350 @ sh @ one ) ) @ id )
                          = $true ) )
                  | ~ ! [X348: term,X349: term] :
                        ( ( $true
                         != ( X347 @ id @ X348 @ id ) )
                        | ( $true
                         != ( X347 @ id @ X349 @ id ) )
                        | ( ( X347 @ id @ ( ap @ ( sub @ X348 @ id ) @ X349 ) @ id )
                          = $true ) ) ) ) ) ) ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( ( d2subst @ X56 )
          = ( d2subst @ X57 ) )
       => ( X56 = X57 ) )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 )
       => ( ! [X125: term,X126: subst > term > subst > $o] :
              ( ( $true
                = ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
              | ~ ! [X127: term] :
                    ( ( $true
                     != ( X126 @ id @ X127 @ id ) )
                    | ( $true
                      = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) ) )
              | ~ ! [X128: subst > term > term] :
                    ( ~ ! [X132: term] :
                          ( ( $true
                           != ( X126 @ id @ X132 @ id ) )
                          | ( $true
                            = ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) ) )
                    | ( $true
                      = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) )
                    | ~ ! [X129: subst,X130: subst,X131: term] :
                          ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                          = ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) ) ) )
         => ! [X133: subst > term > subst > $o,X134: term] :
              ( ~ ! [X135: subst > term > term] :
                    ( ~ ! [X137: subst,X138: subst,X139: term] :
                          ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                          = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                    | ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
                      = $true )
                    | ~ ! [X136: term] :
                          ( ( $true
                            = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) )
                          | ( $true
                           != ( X133 @ id @ X136 @ id ) ) ) )
              | ~ ! [X140: term] :
                    ( ( $true
                      = ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) )
                    | ( $true
                     != ( X133 @ id @ X140 @ id ) ) )
              | ( ( X133 @ id @ ( lam @ X134 ) @ id )
                = $true ) ) ) ) )
    & ( ulamvarind = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( substmonoid_gthm = $true )
    & ( ( laminj = $true )
    <=> ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) ) )
    & ( ulamvar1 != $true )
    & ( axapp = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( axidr = $true )
    <=> ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( pushprop_lem2v2_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( hoasinduction_lem2_gthm = $true )
    & ( lamnotvar = $true )
    & ( ( substmonoid_lthm = $true )
    <=> ( ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 )
       => ( ! [X61: subst] :
              ( ( comp @ X61 @ id )
              = X61 )
         => ( ! [X63: subst] :
                ( ( comp @ id @ X63 )
                = X63 )
            & ! [X62: subst] :
                ( ( comp @ X62 @ id )
                = X62 ) ) ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ~ ! [X84: term] :
                ( ( $true
                 != ( X83 @ X84 ) )
                | ( $true
                  = ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) ) )
          | ~ ! [X86: subst > term > term] :
                ( ~ ! [X87: term,X88: subst,X89: subst] :
                      ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                      = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
                | ~ ! [X90: term] :
                      ( ( $true
                        = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) )
                      | ( $true
                       != ( X82 @ id @ X90 @ id ) ) )
                | ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
                  = $true ) )
          | ( $true
            = ( X83 @ ( lam @ X81 ) ) )
          | ~ ! [X85: term] :
                ( ( X83 @ X85 )
                = ( X82 @ id @ X85 @ id ) ) ) )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
    <=> ( axshiftcons = $true ) )
    & ( ( pushprop_lem1_lthm = $true )
    <=> ( ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
       => ( ! [X34: subst,X35: term] :
              ( ( comp @ sh @ ( push @ X35 @ X34 ) )
              = X34 )
         => ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
              ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
                = $true )
              | ( $true
               != ( X37 @ X36 ) ) ) ) ) )
    & ( ! [X5: term > $o,X6: term] :
          ( ~ ! [X10: term] :
                ( ( $true
                 != ( var @ X10 ) )
                | ( $true
                  = ( X5 @ X10 ) ) )
          | ~ ! [X7: term] :
                ( ( $true
                 != ( X5 @ X7 ) )
                | ( ( X5 @ ( lam @ X7 ) )
                  = $true ) )
          | ( $true
            = ( X5 @ X6 ) )
          | ~ ! [X8: term,X9: term] :
                ( ( $true
                  = ( X5 @ ( ap @ X9 @ X8 ) ) )
                | ( ( X5 @ X9 )
                 != $true )
                | ( $true
                 != ( X5 @ X8 ) ) ) )
    <=> ( induction = $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( substmonoid = $true )
    <=> ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) ) )
    & ( pushprop_lthm_orig = $true )
    & ( ! [X303: term] :
          ~ ! [X304: subst > term > term] :
              ~ ! [X305: subst,X306: term] :
                  ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
                  = ( X304 @ X305 @ X306 ) )
    <=> ( hoasinduction_lem3v2_f_lthm = $true ) )
    & ( ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ( $true
            = ( X43 @ ( ap @ X42 @ X44 ) ) )
          | ~ ! [X45: term,X46: term] :
                ( ( $true
                 != ( X41 @ id @ X45 @ id ) )
                | ( $true
                  = ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) )
                | ( $true
                 != ( X41 @ id @ X46 @ id ) ) )
          | ~ ! [X47: term] :
                ( ( X43 @ X47 )
                = ( X41 @ id @ X47 @ id ) )
          | ( $true
           != ( X43 @ X44 ) )
          | ( $true
           != ( X43 @ X42 ) )
          | ~ ! [X48: term,X49: subst,X50: subst,X51: subst] :
                ( ( $true
                  = ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
                | ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
                 != $true ) )
          | ~ ! [X52: subst,X53: subst,X54: term,X55: subst] :
                ( ( $true
                 != ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) )
                | ( $true
                  = ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) ) ) )
    <=> ( hoasinduction_lem2v2 = $true ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( apinj2 = $true )
    <=> ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) ) )
    & ( lamnotap != $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( induction2lem = $true )
    <=> ! [X260: subst,X261: term,X262: term > $o] :
          ( ( $true
            = ( X262 @ ( sub @ X261 @ X260 ) ) )
          | ~ ! [X266: term] :
                ( ~ ! [X267: term] :
                      ( ( $true
                        = ( X262 @ ( sub @ X266 @ ( push @ X267 @ id ) ) ) )
                      | ( $true
                       != ( X262 @ X267 ) ) )
                | ( $true
                  = ( X262 @ ( lam @ X266 ) ) ) )
          | ~ ! [X263: term,X264: term] :
                ( ( $true
                 != ( X262 @ X264 ) )
                | ( $true
                 != ( X262 @ X263 ) )
                | ( $true
                  = ( X262 @ ( ap @ X263 @ X264 ) ) ) )
          | ~ ! [X265: term] :
                ( ( $true
                  = ( X262 @ ( sub @ X265 @ X260 ) ) )
                | ( $true
                 != ( var @ X265 ) ) ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( ! [X504: term] :
            ( ( sub @ X504 @ id )
            = X504 )
       => ( ! [X505: term,X506: term,X507: term,X508: term] :
              ( ( X505 = X506 )
              | ( ( ap @ X506 @ X508 )
               != ( ap @ X505 @ X507 ) ) )
         => ! [X509: term,X510: term,X511: term,X512: term] :
              ( ( X510 = X512 )
              | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
               != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) ) ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
             != ( ap @ X296 @ X295 ) )
            | ( X295 = X298 ) )
       => ! [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            | ( X300 = X302 ) ) ) )
    & ( ( hoasinduction_lem3b = $true )
    <=> ! [X141: term] :
          ~ ! [X142: subst > term > term] :
              ( ( X142 @ sh @ one )
             != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X283: term] :
          ~ ! [X284: subst > term > term] :
              ( ( X284 @ sh @ one )
             != ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 )
       => ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ~ ! [X112: term] :
                  ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                  = ( X110 @ X112 ) )
            | ( $true
             != ( X109 @ X108 ) )
            | ( $true
              = ( X110 @ one ) ) ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotvar_gthm = $true )
    & ( ! [X15: subst > term > subst > $o,X16: term] :
          ( ( $true
            = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) )
          | ~ ! [X17: term,X18: subst > term > term] :
                ( ( $true
                  = ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
                | ~ ! [X20: subst,X21: subst,X22: term] :
                      ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                      = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
                | ~ ! [X19: term] :
                      ( ( $true
                       != ( X15 @ id @ X19 @ id ) )
                      | ( $true
                        = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) ) )
                | ~ ! [X23: subst,X24: subst,X25: term] :
                      ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                      = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) ) )
          | ~ ! [X26: term] :
                ( ( $true
                 != ( X15 @ id @ X26 @ id ) )
                | ( $true
                  = ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) ) ) )
    <=> ( hoasinduction_lem3aaa = $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
           != ( X145 @ X146 ) )
          | ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( axmap = $true )
    & ( ( termmset_lthm = $true )
    <=> ( ! [X293: term] :
            ( ( sub @ X293 @ id )
            = X293 )
       => ! [X294: term] :
            ( ( sub @ X294 @ id )
            = X294 ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ! [X0: term,X1: term > $o,X2: subst] :
          ~ ! [X3: term > $o] :
              ~ ! [X4: term] :
                  ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
                  = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
    <=> ( hoasapinj1 = $true ) )
    & ( ! [X385: term] :
          ~ ! [X386: subst > term > term] :
              ~ ! [X387: subst,X388: term] :
                  ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
                  = ( X386 @ X387 @ X388 ) )
    <=> ( hoasinduction_lem3v2_f = $true ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
    <=> ! [X186: subst > term > subst > $o] :
          ~ ! [X187: term > $o] :
              ~ ! [X188: term] :
                  ( ( X186 @ id @ X188 @ id )
                  = ( X187 @ X188 ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( ( d2term @ X208 )
          = ( d2term @ X207 ) )
       => ( X207 = X208 ) )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ( hoasinduction_lthm = $true )
    <=> ( ! [X389: term,X390: term > $o] :
            ( ~ ! [X391: term] :
                  ( ( ( X390 @ ( lam @ X391 ) )
                    = $true )
                  | ~ ! [X392: term] :
                        ( ( $true
                          = ( X390 @ ( sub @ X391 @ ( push @ X392 @ id ) ) ) )
                        | ( ( X390 @ X392 )
                         != $true ) ) )
            | ( $true
              = ( X390 @ X389 ) )
            | ~ ! [X393: term,X394: term] :
                  ( ( $true
                   != ( X390 @ X393 ) )
                  | ( $true
                    = ( X390 @ ( ap @ X393 @ X394 ) ) )
                  | ( ( X390 @ X394 )
                   != $true ) )
            | ~ ! [X395: term] :
                  ( ( $true
                   != ( var @ X395 ) )
                  | ( $true
                    = ( X390 @ X395 ) ) ) )
       => ( ! [X396: term,X397: term,X398: subst > term > subst > $o] :
              ( ( $true
                = ( X398 @ id @ ( ap @ X396 @ X397 ) @ id ) )
              | ~ ! [X403: term,X404: term] :
                    ( ( ( X398 @ id @ X404 @ id )
                     != $true )
                    | ( $true
                      = ( X398 @ id @ ( ap @ ( sub @ X404 @ id ) @ X403 ) @ id ) )
                    | ( ( X398 @ id @ X403 @ id )
                     != $true ) )
              | ( ( X398 @ id @ X396 @ id )
               != $true )
              | ~ ! [X405: term,X406: subst,X407: subst,X408: subst] :
                    ( ( $true
                     != ( X398 @ ( comp @ X407 @ X408 ) @ ( sub @ X405 @ X408 ) @ X406 ) )
                    | ( $true
                      = ( X398 @ X407 @ X405 @ ( comp @ X408 @ X406 ) ) ) )
              | ~ ! [X399: subst,X400: subst,X401: subst,X402: term] :
                    ( ( $true
                     != ( X398 @ X401 @ X402 @ ( comp @ X400 @ X399 ) ) )
                    | ( $true
                      = ( X398 @ ( comp @ X401 @ X400 ) @ ( sub @ X402 @ X400 ) @ X399 ) ) )
              | ( $true
               != ( X398 @ id @ X397 @ id ) ) )
         => ( ! [X409: term,X410: subst > term > subst > $o] :
                ( ~ ! [X417: subst,X418: subst,X419: subst,X420: term] :
                      ( ( $true
                       != ( X410 @ X417 @ X420 @ ( comp @ X418 @ X419 ) ) )
                      | ( $true
                        = ( X410 @ ( comp @ X417 @ X418 ) @ ( sub @ X420 @ X418 ) @ X419 ) ) )
                | ( $true
                  = ( X410 @ id @ ( lam @ X409 ) @ id ) )
                | ~ ! [X411: subst > term > term] :
                      ( ~ ! [X412: subst,X413: subst,X414: term] :
                            ( ( X411 @ ( comp @ X412 @ X413 ) @ ( sub @ X414 @ X413 ) )
                            = ( sub @ ( X411 @ X412 @ X414 ) @ X413 ) )
                      | ( $true
                        = ( X410 @ id @ ( lam @ ( X411 @ sh @ one ) ) @ id ) )
                      | ~ ! [X415: term] :
                            ( ( ( X410 @ id @ ( X411 @ id @ X415 ) @ id )
                              = $true )
                            | ( ( X410 @ id @ X415 @ id )
                             != $true ) ) )
                | ~ ! [X416: term] :
                      ( ( $true
                       != ( X410 @ id @ X416 @ id ) )
                      | ( $true
                        = ( X410 @ id @ ( sub @ X409 @ ( push @ X416 @ id ) ) @ id ) ) )
                | ~ ! [X421: subst,X422: subst,X423: subst,X424: term] :
                      ( ( ( X410 @ ( comp @ X422 @ X421 ) @ ( sub @ X424 @ X421 ) @ X423 )
                       != $true )
                      | ( ( X410 @ X422 @ X424 @ ( comp @ X421 @ X423 ) )
                        = $true ) ) )
           => ! [X425: subst > term > subst > $o,X426: term] :
                ( ~ ! [X432: term,X433: term] :
                      ( ( $true
                       != ( X425 @ id @ X432 @ id ) )
                      | ( ( X425 @ id @ X433 @ id )
                       != $true )
                      | ( $true
                        = ( X425 @ id @ ( ap @ ( sub @ X433 @ id ) @ X432 ) @ id ) ) )
                | ~ ! [X427: subst,X428: subst,X429: subst,X430: term] :
                      ( ( $true
                        = ( X425 @ X429 @ X430 @ ( comp @ X428 @ X427 ) ) )
                      | ( ( X425 @ ( comp @ X429 @ X428 ) @ ( sub @ X430 @ X428 ) @ X427 )
                       != $true ) )
                | ( $true
                  = ( X425 @ id @ X426 @ id ) )
                | ~ ! [X434: subst > term > term] :
                      ( ~ ! [X438: term] :
                            ( ( $true
                             != ( X425 @ id @ X438 @ id ) )
                            | ( $true
                              = ( X425 @ id @ ( X434 @ id @ X438 ) @ id ) ) )
                      | ( $true
                        = ( X425 @ id @ ( lam @ ( X434 @ sh @ one ) ) @ id ) )
                      | ~ ! [X435: subst,X436: term,X437: subst] :
                            ( ( X434 @ ( comp @ X437 @ X435 ) @ ( sub @ X436 @ X435 ) )
                            = ( sub @ ( X434 @ X437 @ X436 ) @ X435 ) ) )
                | ~ ! [X439: subst,X440: term,X441: subst,X442: subst] :
                      ( ( $true
                        = ( X425 @ ( comp @ X441 @ X442 ) @ ( sub @ X440 @ X442 ) @ X439 ) )
                      | ( ( X425 @ X441 @ X440 @ ( comp @ X442 @ X439 ) )
                       != $true ) )
                | ~ ! [X431: term] :
                      ( ( ( X425 @ id @ X431 @ id )
                        = $true )
                      | ( $true
                       != ( var @ ( sub @ X431 @ id ) ) ) ) ) ) ) ) )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ! [X375: subst > term > subst > $o,X376: term] :
          ( ~ ! [X382: term] :
                ( ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
                  = $true )
                | ( $true
                 != ( X375 @ id @ X382 @ id ) ) )
          | ~ ! [X377: subst > term > term] :
                ( ~ ! [X378: term] :
                      ( ( $true
                       != ( X375 @ id @ X378 @ id ) )
                      | ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                        = $true ) )
                | ( $true
                  = ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) )
                | ~ ! [X379: term,X380: subst,X381: subst] :
                      ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                      = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) ) )
          | ( $true
            = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ),
    inference(flattening,[status(thm)],[f10]) ).

thf(f10,plain,
    ( ( ! [X0: term,X1: term > $o,X2: subst] :
          ~ ! [X3: term > $o] :
              ~ ! [X4: term] :
                  ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
                  = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( ! [X5: term > $o,X6: term] :
          ( ~ ! [X7: term] :
                ( ( ( X5 @ ( lam @ X7 ) )
                  = $true )
                | ( $true
                 != ( X5 @ X7 ) ) )
          | ~ ! [X8: term,X9: term] :
                ( ( $true
                 != ( X5 @ X8 ) )
                | ( $true
                  = ( X5 @ ( ap @ X9 @ X8 ) ) )
                | ( ( X5 @ X9 )
                 != $true ) )
          | ~ ! [X10: term] :
                ( ( $true
                  = ( X5 @ X10 ) )
                | ( $true
                 != ( var @ X10 ) ) )
          | ( $true
            = ( X5 @ X6 ) ) )
    <=> ( induction = $true ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
    <=> ! [X15: subst > term > subst > $o,X16: term] :
          ( ~ ! [X17: term,X18: subst > term > term] :
                ( ~ ! [X19: term] :
                      ( ( $true
                        = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) )
                      | ( $true
                       != ( X15 @ id @ X19 @ id ) ) )
                | ~ ! [X20: subst,X21: subst,X22: term] :
                      ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                      = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
                | ~ ! [X23: subst,X24: subst,X25: term] :
                      ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                      = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
                | ( $true
                  = ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) )
          | ~ ! [X26: term] :
                ( ( $true
                  = ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) )
                | ( $true
                 != ( X15 @ id @ X26 @ id ) ) ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ~ ! [X31: term] :
                ( ( X29 @ X31 )
                = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
           != ( X27 @ X28 ) )
          | ( $true
            = ( X29 @ one ) ) ) )
    & ( ( ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
       => ( ! [X34: subst,X35: term] :
              ( ( comp @ sh @ ( push @ X35 @ X34 ) )
              = X34 )
         => ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
              ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
                = $true )
              | ( $true
               != ( X37 @ X36 ) ) ) ) )
    <=> ( pushprop_lem1_lthm = $true ) )
    & ( ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ( $true
           != ( X43 @ X44 ) )
          | ~ ! [X45: term,X46: term] :
                ( ( $true
                 != ( X41 @ id @ X46 @ id ) )
                | ( $true
                 != ( X41 @ id @ X45 @ id ) )
                | ( $true
                  = ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) ) )
          | ~ ! [X47: term] :
                ( ( X43 @ X47 )
                = ( X41 @ id @ X47 @ id ) )
          | ~ ! [X48: term,X49: subst,X50: subst,X51: subst] :
                ( ( $true
                  = ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
                | ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
                 != $true ) )
          | ( $true
           != ( X43 @ X42 ) )
          | ~ ! [X52: subst,X53: subst,X54: term,X55: subst] :
                ( ( $true
                  = ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) )
                | ( $true
                 != ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) ) )
          | ( $true
            = ( X43 @ ( ap @ X42 @ X44 ) ) ) )
    <=> ( hoasinduction_lem2v2 = $true ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( ( d2subst @ X56 )
          = ( d2subst @ X57 ) )
       => ( X56 = X57 ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 )
    & ( induction2lem_gthm = $true )
    & ( lamnotap != $true )
    & ( ( substmonoid_lthm = $true )
    <=> ( ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 )
       => ( ! [X61: subst] :
              ( ( comp @ X61 @ id )
              = X61 )
         => ( ! [X63: subst] :
                ( ( comp @ id @ X63 )
                = X63 )
            & ! [X62: subst] :
                ( ( comp @ X62 @ id )
                = X62 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( induction2_lthm = $true )
    <=> ( ! [X64: term] :
            ( ( sub @ X64 @ id )
            = X64 )
       => ( ! [X65: subst,X66: term > $o,X67: term] :
              ( ~ ! [X68: term,X69: term] :
                    ( ( ( X66 @ ( ap @ X68 @ X69 ) )
                      = $true )
                    | ( ( X66 @ X68 )
                     != $true )
                    | ( ( X66 @ X69 )
                     != $true ) )
              | ~ ! [X70: term] :
                    ( ~ ! [X71: term] :
                          ( ( $true
                           != ( X66 @ X71 ) )
                          | ( $true
                            = ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) )
                    | ( $true
                      = ( X66 @ ( lam @ X70 ) ) ) )
              | ( $true
                = ( X66 @ ( sub @ X67 @ X65 ) ) )
              | ~ ! [X72: term] :
                    ( ( $true
                      = ( X66 @ ( sub @ X72 @ X65 ) ) )
                    | ( ( var @ X72 )
                     != $true ) ) )
         => ! [X73: term,X74: term > $o] :
              ( ~ ! [X75: term] :
                    ( ( $true
                      = ( X74 @ ( lam @ X75 ) ) )
                    | ~ ! [X76: term] :
                          ( ( $true
                            = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                          | ( $true
                           != ( X74 @ X76 ) ) ) )
              | ~ ! [X77: term] :
                    ( ( $true
                      = ( X74 @ X77 ) )
                    | ( $true
                     != ( var @ X77 ) ) )
              | ~ ! [X78: term,X79: term] :
                    ( ( $true
                     != ( X74 @ X78 ) )
                    | ( $true
                     != ( X74 @ X79 ) )
                    | ( ( X74 @ ( ap @ X79 @ X78 ) )
                      = $true ) )
              | ( $true
                = ( X74 @ X73 ) ) ) ) ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( axabs = $true )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ~ ! [X84: term] :
                ( ( $true
                  = ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) )
                | ( $true
                 != ( X83 @ X84 ) ) )
          | ~ ! [X85: term] :
                ( ( X83 @ X85 )
                = ( X82 @ id @ X85 @ id ) )
          | ~ ! [X86: subst > term > term] :
                ( ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
                  = $true )
                | ~ ! [X87: term,X88: subst,X89: subst] :
                      ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                      = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
                | ~ ! [X90: term] :
                      ( ( $true
                       != ( X82 @ id @ X90 @ id ) )
                      | ( $true
                        = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) ) ) )
          | ( $true
            = ( X83 @ ( lam @ X81 ) ) ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) )
          | ~ ! [X95: subst,X96: subst,X97: term] :
                ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
                = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ~ ! [X98: term,X99: subst,X100: subst] :
                ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
                = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( hoaslamnotap_lthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( lamnotvar = $true )
    & ( termmset_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 )
       => ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
             != ( X109 @ X108 ) )
            | ( $true
              = ( X110 @ one ) )
            | ~ ! [X112: term] :
                  ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                  = ( X110 @ X112 ) ) ) )
    <=> ( pushprop_lem1v2_lthm = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ~ ! [X115: subst > term > term] :
                ( ~ ! [X116: term] :
                      ( ( $true
                       != ( X113 @ id @ X116 @ id ) )
                      | ( $true
                        = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) )
                | ~ ! [X117: subst,X118: subst,X119: term] :
                      ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                      = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
                | ( $true
                  = ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) ) )
          | ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
            = $true )
          | ~ ! [X120: term] :
                ( ( $true
                 != ( X113 @ id @ X120 @ id ) )
                | ( $true
                  = ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ! [X121: subst > term > subst > $o] :
          ~ ! [X122: term > $o] :
              ~ ! [X123: term] :
                  ( ( X121 @ id @ X123 @ id )
                  = ( X122 @ X123 ) )
    <=> ( hoasinduction_lem0 = $true ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 )
       => ( ! [X125: term,X126: subst > term > subst > $o] :
              ( ~ ! [X127: term] :
                    ( ( $true
                      = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) )
                    | ( $true
                     != ( X126 @ id @ X127 @ id ) ) )
              | ( $true
                = ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
              | ~ ! [X128: subst > term > term] :
                    ( ( $true
                      = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) )
                    | ~ ! [X129: subst,X130: subst,X131: term] :
                          ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                          = ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
                    | ~ ! [X132: term] :
                          ( ( $true
                            = ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) )
                          | ( $true
                           != ( X126 @ id @ X132 @ id ) ) ) ) )
         => ! [X133: subst > term > subst > $o,X134: term] :
              ( ~ ! [X135: subst > term > term] :
                    ( ~ ! [X136: term] :
                          ( ( $true
                           != ( X133 @ id @ X136 @ id ) )
                          | ( $true
                            = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) ) )
                    | ~ ! [X137: subst,X138: subst,X139: term] :
                          ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                          = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                    | ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
                      = $true ) )
              | ~ ! [X140: term] :
                    ( ( $true
                     != ( X133 @ id @ X140 @ id ) )
                    | ( $true
                      = ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) ) )
              | ( ( X133 @ id @ ( lam @ X134 ) @ id )
                = $true ) ) ) )
    <=> ( hoasinduction_lem3a_lthm = $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( hoasinduction_lem3b = $true )
    <=> ! [X141: term] :
          ~ ! [X142: subst > term > term] :
              ( ( X142 @ sh @ one )
             != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( pushprop_lthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( axvarshift = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) )
          | ( $true
           != ( X145 @ X146 ) ) )
    <=> ( pushprop_lem1 = $true ) )
    & ( ( ! [X148: term] :
            ( ( sub @ X148 @ id )
            = X148 )
       => ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ~ ! [X152: term] :
                  ( ( $true
                   != ( X151 @ X152 ) )
                  | ( $true
                    = ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) ) )
            | ~ ! [X153: subst,X154: term,X155: subst,X156: subst] :
                  ( ( $true
                    = ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) )
                  | ( $true
                   != ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) ) )
            | ( $true
              = ( X151 @ ( lam @ X150 ) ) )
            | ~ ! [X157: subst,X158: subst,X159: term,X160: subst] :
                  ( ( $true
                    = ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
                  | ( $true
                   != ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
            | ~ ! [X161: subst > term > term] :
                  ( ~ ! [X162: subst,X163: subst,X164: term] :
                        ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                        = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) )
                  | ~ ! [X165: term] :
                        ( ( $true
                         != ( X149 @ id @ X165 @ id ) )
                        | ( $true
                          = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) )
                  | ( $true
                    = ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) ) )
            | ~ ! [X166: term] :
                  ( ( X149 @ id @ X166 @ id )
                  = ( X151 @ X166 ) ) ) )
    <=> ( hoasinduction_lem3v2_lthm = $true ) )
    & ( ( ! [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
            = X168 )
       => ( ! [X169: subst,X170: term] :
              ( ( comp @ sh @ ( push @ X170 @ X169 ) )
              = X169 )
         => ( ! [X171: subst] :
                ( ( comp @ X171 @ id )
                = X171 )
           => ( ! [X172: term,X173: term > $o] :
                  ( ~ ! [X174: term] :
                        ( ( $true
                          = ( X173 @ ( lam @ X174 ) ) )
                        | ( ( X173 @ X174 )
                         != $true ) )
                  | ( $true
                    = ( X173 @ X172 ) )
                  | ~ ! [X175: term] :
                        ( ( ( X173 @ X175 )
                          = $true )
                        | ( $true
                         != ( var @ X175 ) ) )
                  | ~ ! [X176: term,X177: term] :
                        ( ( $true
                         != ( X173 @ X176 ) )
                        | ( $true
                         != ( X173 @ X177 ) )
                        | ( ( X173 @ ( ap @ X177 @ X176 ) )
                          = $true ) ) )
             => ! [X178: subst,X179: term > $o,X180: term] :
                  ( ~ ! [X181: term] :
                        ( ( $true
                         != ( var @ X181 ) )
                        | ( $true
                          = ( X179 @ ( sub @ X181 @ X178 ) ) ) )
                  | ~ ! [X182: term,X183: term] :
                        ( ( $true
                         != ( X179 @ X182 ) )
                        | ( $true
                          = ( X179 @ ( ap @ X183 @ X182 ) ) )
                        | ( $true
                         != ( X179 @ X183 ) ) )
                  | ( $true
                    = ( X179 @ ( sub @ X180 @ X178 ) ) )
                  | ~ ! [X184: term] :
                        ( ( $true
                          = ( X179 @ ( lam @ X184 ) ) )
                        | ~ ! [X185: term] :
                              ( ( $true
                                = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                              | ( $true
                               != ( X179 @ X185 ) ) ) ) ) ) ) ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
    <=> ! [X186: subst > term > subst > $o] :
          ~ ! [X187: term > $o] :
              ~ ! [X188: term] :
                  ( ( X186 @ id @ X188 @ id )
                  = ( X187 @ X188 ) ) )
    & ( ! [X189: subst > term > subst > $o,X190: term] :
          ( ~ ! [X191: term,X192: term] :
                ( ( $true
                 != ( X189 @ id @ X192 @ id ) )
                | ( $true
                  = ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) )
                | ( ( X189 @ id @ X191 @ id )
                 != $true ) )
          | ~ ! [X193: subst > term > term] :
                ( ~ ! [X194: subst,X195: subst,X196: term] :
                      ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                      = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
                | ( $true
                  = ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) )
                | ~ ! [X197: term] :
                      ( ( $true
                        = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) )
                      | ( ( X189 @ id @ X197 @ id )
                       != $true ) ) )
          | ~ ! [X198: term] :
                ( ( $true
                  = ( X189 @ id @ X198 @ id ) )
                | ( $true
                 != ( var @ ( sub @ X198 @ id ) ) ) )
          | ( $true
            = ( X189 @ id @ X190 @ id ) )
          | ~ ! [X199: subst,X200: subst,X201: subst,X202: term] :
                ( ( $true
                  = ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) )
                | ( $true
                 != ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) ) )
          | ~ ! [X203: subst,X204: subst,X205: term,X206: subst] :
                ( ( $true
                 != ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) )
                | ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
                  = $true ) ) )
    <=> ( hoasinduction = $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ! [X207: d_term,X208: d_term] :
        ( ( ( d2term @ X208 )
          = ( d2term @ X207 ) )
       => ( X207 = X208 ) )
    & ( ( substmonoid = $true )
    <=> ( ! [X210: subst] :
            ( ( comp @ id @ X210 )
            = X210 )
        & ! [X209: subst] :
            ( ( comp @ X209 @ id )
            = X209 ) ) )
    & ( ulamvarsh = $true )
    & ( induction2_gthm = $true )
    & ( axassoc = $true )
    & ( ! [X211: term,X212: term,X213: subst > term > term] :
          ( ~ ! [X214: subst,X215: subst,X216: term] :
                ( ( X213 @ ( comp @ X214 @ X215 ) @ ( sub @ X216 @ X215 ) )
                = ( sub @ ( X213 @ X214 @ X216 ) @ X215 ) )
          | ( ( lam @ ( X213 @ sh @ one ) )
           != ( ap @ ( sub @ X212 @ id ) @ X211 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ! [X217: subst] :
          ( ( push @ ( sub @ one @ X217 ) @ ( comp @ sh @ X217 ) )
          = X217 )
    <=> ( axscons = $true ) )
    & ( ( ! [X218: subst,X219: term] :
            ( ( sub @ one @ ( push @ X219 @ X218 ) )
            = X219 )
       => ( ! [X220: subst,X221: term] :
              ( ( comp @ sh @ ( push @ X221 @ X220 ) )
              = X220 )
         => ( ! [X222: term,X223: term] :
                ( ( ( lam @ X223 )
                 != ( lam @ X222 ) )
                | ( X222 = X223 ) )
           => ! [X224: subst > term > term,X225: subst > term > term,X226: term,X227: subst] :
                ( ( ( X225 @ X227 @ X226 )
                  = ( X224 @ X227 @ X226 ) )
                | ~ ! [X231: subst,X232: subst,X233: term] :
                      ( ( X225 @ ( comp @ X232 @ X231 ) @ ( sub @ X233 @ X231 ) )
                      = ( sub @ ( X225 @ X232 @ X233 ) @ X231 ) )
                | ~ ! [X228: subst,X229: term,X230: subst] :
                      ( ( X224 @ ( comp @ X228 @ X230 ) @ ( sub @ X229 @ X230 ) )
                      = ( sub @ ( X224 @ X228 @ X229 ) @ X230 ) )
                | ( ( lam @ ( X225 @ sh @ one ) )
                 != ( lam @ ( X224 @ sh @ one ) ) ) ) ) ) )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( ( hoasinduction_lem2 = $true )
    <=> ! [X234: term,X235: subst > term > subst > $o,X236: term] :
          ( ( $true
            = ( X235 @ id @ ( ap @ X234 @ X236 ) @ id ) )
          | ~ ! [X237: subst,X238: subst,X239: term,X240: subst] :
                ( ( $true
                  = ( X235 @ ( comp @ X237 @ X240 ) @ ( sub @ X239 @ X240 ) @ X238 ) )
                | ( $true
                 != ( X235 @ X237 @ X239 @ ( comp @ X240 @ X238 ) ) ) )
          | ( $true
           != ( X235 @ id @ X236 @ id ) )
          | ~ ! [X241: term,X242: term] :
                ( ( ( X235 @ id @ X241 @ id )
                 != $true )
                | ( $true
                  = ( X235 @ id @ ( ap @ ( sub @ X242 @ id ) @ X241 ) @ id ) )
                | ( $true
                 != ( X235 @ id @ X242 @ id ) ) )
          | ( $true
           != ( X235 @ id @ X234 @ id ) )
          | ~ ! [X243: term,X244: subst,X245: subst,X246: subst] :
                ( ( $true
                 != ( X235 @ ( comp @ X244 @ X246 ) @ ( sub @ X243 @ X246 ) @ X245 ) )
                | ( $true
                  = ( X235 @ X244 @ X243 @ ( comp @ X246 @ X245 ) ) ) ) ) )
    & ( ulamvar1 != $true )
    & ( axapp = $true )
    & ( ! [X247: term,X248: subst > term > subst > $o] :
          ( ~ ! [X249: subst > term > term] :
                ( ( ( X248 @ id @ ( lam @ ( X249 @ sh @ one ) ) @ id )
                  = $true )
                | ~ ! [X250: term] :
                      ( ( $true
                       != ( X248 @ id @ X250 @ id ) )
                      | ( $true
                        = ( X248 @ id @ ( X249 @ id @ X250 ) @ id ) ) )
                | ~ ! [X251: subst,X252: term,X253: subst] :
                      ( ( sub @ ( X249 @ X253 @ X252 ) @ X251 )
                      = ( X249 @ ( comp @ X253 @ X251 ) @ ( sub @ X252 @ X251 ) ) ) )
          | ~ ! [X254: term,X255: term] :
                ( ( $true
                 != ( X248 @ id @ X254 @ id ) )
                | ( $true
                 != ( X248 @ id @ X255 @ id ) )
                | ( $true
                  = ( X248 @ id @ ( ap @ ( sub @ X255 @ id ) @ X254 ) @ id ) ) )
          | ( $true
            = ( X248 @ id @ X247 @ id ) ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( apinj2 = $true )
    <=> ! [X256: term,X257: term,X258: term,X259: term] :
          ( ( X256 = X257 )
          | ( ( ap @ X258 @ X256 )
           != ( ap @ X259 @ X257 ) ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem = $true )
    <=> ! [X260: subst,X261: term,X262: term > $o] :
          ( ~ ! [X263: term,X264: term] :
                ( ( $true
                  = ( X262 @ ( ap @ X263 @ X264 ) ) )
                | ( $true
                 != ( X262 @ X264 ) )
                | ( $true
                 != ( X262 @ X263 ) ) )
          | ~ ! [X265: term] :
                ( ( $true
                 != ( var @ X265 ) )
                | ( $true
                  = ( X262 @ ( sub @ X265 @ X260 ) ) ) )
          | ( $true
            = ( X262 @ ( sub @ X261 @ X260 ) ) )
          | ~ ! [X266: term] :
                ( ( $true
                  = ( X262 @ ( lam @ X266 ) ) )
                | ~ ! [X267: term] :
                      ( ( $true
                       != ( X262 @ X267 ) )
                      | ( $true
                        = ( X262 @ ( sub @ X266 @ ( push @ X267 @ id ) ) ) ) ) ) ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
    <=> ( ! [X268: term] :
            ~ ! [X269: subst > term > term] :
                ~ ! [X270: subst,X271: term] :
                    ( ( sub @ X268 @ ( push @ X271 @ X270 ) )
                    = ( X269 @ X270 @ X271 ) )
       => ( ! [X272: term] :
              ( ( sub @ X272 @ id )
              = X272 )
         => ! [X273: term,X274: term > $o,X275: subst > term > subst > $o] :
              ( ~ ! [X276: term] :
                    ( ( X274 @ X276 )
                    = ( X275 @ id @ X276 @ id ) )
              | ( ( X274 @ ( lam @ X273 ) )
                = $true )
              | ~ ! [X277: term] :
                    ( ( ( X274 @ X277 )
                     != $true )
                    | ( $true
                      = ( X274 @ ( sub @ X273 @ ( push @ X277 @ id ) ) ) ) )
              | ~ ! [X278: subst > term > term] :
                    ( ( $true
                      = ( X275 @ id @ ( lam @ ( X278 @ sh @ one ) ) @ id ) )
                    | ~ ! [X279: subst,X280: subst,X281: term] :
                          ( ( X278 @ ( comp @ X280 @ X279 ) @ ( sub @ X281 @ X279 ) )
                          = ( sub @ ( X278 @ X280 @ X281 ) @ X279 ) )
                    | ~ ! [X282: term] :
                          ( ( ( X275 @ id @ X282 @ id )
                           != $true )
                          | ( ( X275 @ id @ ( X278 @ id @ X282 ) @ id )
                            = $true ) ) ) ) ) ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X283: term] :
          ~ ! [X284: subst > term > term] :
              ( ( X284 @ sh @ one )
             != ( sub @ X283 @ ( push @ one @ sh ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( ! [X285: term,X286: subst] :
          ( ( comp @ sh @ ( push @ X285 @ X286 ) )
          = X286 )
    <=> ( axshiftcons = $true ) )
    & ( ! [X287: term,X288: term,X289: term,X290: term] :
          ( ( ( ap @ ( sub @ X289 @ id ) @ X288 )
           != ( ap @ ( sub @ X287 @ id ) @ X290 ) )
          | ( X287 = X289 ) )
    <=> ( hoasapinj1 = $true ) )
    & ( hoasapnotvar = $true )
    & ( ! [X291: term,X292: subst] :
          ( ( sub @ one @ ( push @ X291 @ X292 ) )
          = X291 )
    <=> ( axvarcons = $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop = $true )
    & ( ( termmset_lthm = $true )
    <=> ( ! [X293: term] :
            ( ( sub @ X293 @ id )
            = X293 )
       => ! [X294: term] :
            ( ( sub @ X294 @ id )
            = X294 ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X295: term,X296: term,X297: term,X298: term] :
            ( ( ( ap @ X297 @ X298 )
             != ( ap @ X296 @ X295 ) )
            | ( X295 = X298 ) )
       => ! [X299: term,X300: term,X301: term,X302: term] :
            ( ( ( ap @ ( sub @ X299 @ id ) @ X300 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) )
            | ( X300 = X302 ) ) ) )
    & ( ! [X303: term] :
          ~ ! [X304: subst > term > term] :
              ~ ! [X305: subst,X306: term] :
                  ( ( sub @ X303 @ ( push @ X306 @ X305 ) )
                  = ( X304 @ X305 @ X306 ) )
    <=> ( hoasinduction_lem3v2_f_lthm = $true ) )
    & ( ( laminj = $true )
    <=> ! [X307: term,X308: term] :
          ( ( ( lam @ X307 )
           != ( lam @ X308 ) )
          | ( X307 = X308 ) ) )
    & ( ( hoasinduction_lem3 = $true )
    <=> ! [X309: subst > term > subst > $o,X310: term] :
          ( ~ ! [X311: term] :
                ( ( ( X309 @ id @ X311 @ id )
                 != $true )
                | ( $true
                  = ( X309 @ id @ ( sub @ X310 @ ( push @ X311 @ id ) ) @ id ) ) )
          | ~ ! [X312: term,X313: subst,X314: subst,X315: subst] :
                ( ( $true
                 != ( X309 @ X315 @ X312 @ ( comp @ X313 @ X314 ) ) )
                | ( $true
                  = ( X309 @ ( comp @ X315 @ X313 ) @ ( sub @ X312 @ X313 ) @ X314 ) ) )
          | ~ ! [X316: subst > term > term] :
                ( ~ ! [X317: term] :
                      ( ( $true
                        = ( X309 @ id @ ( X316 @ id @ X317 ) @ id ) )
                      | ( ( X309 @ id @ X317 @ id )
                       != $true ) )
                | ( $true
                  = ( X309 @ id @ ( lam @ ( X316 @ sh @ one ) ) @ id ) )
                | ~ ! [X318: term,X319: subst,X320: subst] :
                      ( ( sub @ ( X316 @ X320 @ X318 ) @ X319 )
                      = ( X316 @ ( comp @ X320 @ X319 ) @ ( sub @ X318 @ X319 ) ) ) )
          | ( $true
            = ( X309 @ id @ ( lam @ X310 ) @ id ) )
          | ~ ! [X321: subst,X322: term,X323: subst,X324: subst] :
                ( ( $true
                  = ( X309 @ X324 @ X322 @ ( comp @ X321 @ X323 ) ) )
                | ( $true
                 != ( X309 @ ( comp @ X324 @ X321 ) @ ( sub @ X322 @ X321 ) @ X323 ) ) ) ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ! [X325: subst > term > subst > $o] :
            ~ ! [X326: term > $o] :
                ~ ! [X327: term] :
                    ( ( X325 @ id @ X327 @ id )
                    = ( X326 @ X327 ) )
       => ( ! [X328: term > $o,X329: term] :
              ( ~ ! [X330: term] :
                    ( ( $true
                     != ( var @ X330 ) )
                    | ( $true
                      = ( X328 @ X330 ) ) )
              | ~ ! [X331: term] :
                    ( ( ( X328 @ ( lam @ X331 ) )
                      = $true )
                    | ~ ! [X332: term] :
                          ( ( $true
                            = ( X328 @ ( sub @ X331 @ ( push @ X332 @ id ) ) ) )
                          | ( $true
                           != ( X328 @ X332 ) ) ) )
              | ( $true
                = ( X328 @ X329 ) )
              | ~ ! [X333: term,X334: term] :
                    ( ( $true
                     != ( X328 @ X334 ) )
                    | ( $true
                     != ( X328 @ X333 ) )
                    | ( ( X328 @ ( ap @ X333 @ X334 ) )
                      = $true ) ) )
         => ( ! [X335: term] :
                ( ( sub @ X335 @ id )
                = X335 )
           => ( ! [X336: subst > term > subst > $o,X337: term > $o,X338: term] :
                  ( ( ( X337 @ ( lam @ X338 ) )
                    = $true )
                  | ~ ! [X339: subst > term > term] :
                        ( ~ ! [X340: term] :
                              ( ( $true
                                = ( X336 @ id @ ( X339 @ id @ X340 ) @ id ) )
                              | ( $true
                               != ( X336 @ id @ X340 @ id ) ) )
                        | ~ ! [X341: subst,X342: subst,X343: term] :
                              ( ( sub @ ( X339 @ X341 @ X343 ) @ X342 )
                              = ( X339 @ ( comp @ X341 @ X342 ) @ ( sub @ X343 @ X342 ) ) )
                        | ( $true
                          = ( X336 @ id @ ( lam @ ( X339 @ sh @ one ) ) @ id ) ) )
                  | ~ ! [X344: term] :
                        ( ( $true
                          = ( X337 @ ( sub @ X338 @ ( push @ X344 @ id ) ) ) )
                        | ( $true
                         != ( X337 @ X344 ) ) )
                  | ~ ! [X345: term] :
                        ( ( X336 @ id @ X345 @ id )
                        = ( X337 @ X345 ) ) )
             => ! [X346: term,X347: subst > term > subst > $o] :
                  ( ~ ! [X348: term,X349: term] :
                        ( ( ( X347 @ id @ ( ap @ ( sub @ X348 @ id ) @ X349 ) @ id )
                          = $true )
                        | ( $true
                         != ( X347 @ id @ X349 @ id ) )
                        | ( $true
                         != ( X347 @ id @ X348 @ id ) ) )
                  | ~ ! [X350: subst > term > term] :
                        ( ~ ! [X351: term,X352: subst,X353: subst] :
                              ( ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) )
                              = ( sub @ ( X350 @ X353 @ X351 ) @ X352 ) )
                        | ~ ! [X354: term] :
                              ( ( $true
                               != ( X347 @ id @ X354 @ id ) )
                              | ( ( X347 @ id @ ( X350 @ id @ X354 ) @ id )
                                = $true ) )
                        | ( ( X347 @ id @ ( lam @ ( X350 @ sh @ one ) ) @ id )
                          = $true ) )
                  | ( ( X347 @ id @ X346 @ id )
                    = $true ) ) ) ) ) ) )
    & ( apnotvar = $true )
    & ( ( termmset = $true )
    <=> ! [X355: term] :
          ( ( sub @ X355 @ id )
          = X355 ) )
    & ( pushprop_lthm_orig = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ! [X356: term,X357: term > $o,X358: subst > term > subst > $o] :
          ( ~ ! [X359: term] :
                ( ( X358 @ id @ X359 @ id )
                = ( X357 @ X359 ) )
          | ~ ! [X360: subst > term > term] :
                ( ~ ! [X361: term] :
                      ( ( $true
                        = ( X358 @ id @ ( X360 @ id @ X361 ) @ id ) )
                      | ( $true
                       != ( X358 @ id @ X361 @ id ) ) )
                | ~ ! [X362: subst,X363: term,X364: subst] :
                      ( ( X360 @ ( comp @ X362 @ X364 ) @ ( sub @ X363 @ X364 ) )
                      = ( sub @ ( X360 @ X362 @ X363 ) @ X364 ) )
                | ( ( X358 @ id @ ( lam @ ( X360 @ sh @ one ) ) @ id )
                  = $true ) )
          | ( ( X357 @ ( lam @ X356 ) )
            = $true )
          | ~ ! [X365: term] :
                ( ( ( X357 @ X365 )
                 != $true )
                | ( $true
                  = ( X357 @ ( sub @ X356 @ ( push @ X365 @ id ) ) ) ) )
          | ~ ! [X366: subst,X367: subst,X368: subst,X369: term] :
                ( ( $true
                 != ( X358 @ X368 @ X369 @ ( comp @ X366 @ X367 ) ) )
                | ( $true
                  = ( X358 @ ( comp @ X368 @ X366 ) @ ( sub @ X369 @ X366 ) @ X367 ) ) )
          | ~ ! [X370: subst,X371: subst,X372: subst,X373: term] :
                ( ( ( X358 @ X371 @ X373 @ ( comp @ X370 @ X372 ) )
                  = $true )
                | ( $true
                 != ( X358 @ ( comp @ X371 @ X370 ) @ ( sub @ X373 @ X370 ) @ X372 ) ) ) ) )
    & ( ( axidr = $true )
    <=> ! [X374: subst] :
          ( ( comp @ X374 @ id )
          = X374 ) )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ! [X375: subst > term > subst > $o,X376: term] :
          ( ~ ! [X377: subst > term > term] :
                ( ~ ! [X378: term] :
                      ( ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                        = $true )
                      | ( $true
                       != ( X375 @ id @ X378 @ id ) ) )
                | ~ ! [X379: term,X380: subst,X381: subst] :
                      ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                      = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
                | ( $true
                  = ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
          | ~ ! [X382: term] :
                ( ( $true
                 != ( X375 @ id @ X382 @ id ) )
                | ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
                  = $true ) ) ) )
    & ( axclos = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ! [X383: subst] :
      ? [X384: d_subst] :
        ( ( d2subst @ X384 )
        = X383 )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ! [X385: term] :
          ~ ! [X386: subst > term > term] :
              ~ ! [X387: subst,X388: term] :
                  ( ( sub @ X385 @ ( push @ X388 @ X387 ) )
                  = ( X386 @ X387 @ X388 ) )
    <=> ( hoasinduction_lem3v2_f = $true ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( pushprop_lem2v2_gthm = $true )
    & ( ( ! [X389: term,X390: term > $o] :
            ( ( $true
              = ( X390 @ X389 ) )
            | ~ ! [X391: term] :
                  ( ( ( X390 @ ( lam @ X391 ) )
                    = $true )
                  | ~ ! [X392: term] :
                        ( ( ( X390 @ X392 )
                         != $true )
                        | ( $true
                          = ( X390 @ ( sub @ X391 @ ( push @ X392 @ id ) ) ) ) ) )
            | ~ ! [X393: term,X394: term] :
                  ( ( ( X390 @ X394 )
                   != $true )
                  | ( $true
                    = ( X390 @ ( ap @ X393 @ X394 ) ) )
                  | ( $true
                   != ( X390 @ X393 ) ) )
            | ~ ! [X395: term] :
                  ( ( $true
                   != ( var @ X395 ) )
                  | ( $true
                    = ( X390 @ X395 ) ) ) )
       => ( ! [X396: term,X397: term,X398: subst > term > subst > $o] :
              ( ( $true
               != ( X398 @ id @ X397 @ id ) )
              | ~ ! [X399: subst,X400: subst,X401: subst,X402: term] :
                    ( ( $true
                      = ( X398 @ ( comp @ X401 @ X400 ) @ ( sub @ X402 @ X400 ) @ X399 ) )
                    | ( $true
                     != ( X398 @ X401 @ X402 @ ( comp @ X400 @ X399 ) ) ) )
              | ~ ! [X403: term,X404: term] :
                    ( ( ( X398 @ id @ X404 @ id )
                     != $true )
                    | ( ( X398 @ id @ X403 @ id )
                     != $true )
                    | ( $true
                      = ( X398 @ id @ ( ap @ ( sub @ X404 @ id ) @ X403 ) @ id ) ) )
              | ( $true
                = ( X398 @ id @ ( ap @ X396 @ X397 ) @ id ) )
              | ( ( X398 @ id @ X396 @ id )
               != $true )
              | ~ ! [X405: term,X406: subst,X407: subst,X408: subst] :
                    ( ( $true
                      = ( X398 @ X407 @ X405 @ ( comp @ X408 @ X406 ) ) )
                    | ( $true
                     != ( X398 @ ( comp @ X407 @ X408 ) @ ( sub @ X405 @ X408 ) @ X406 ) ) ) )
         => ( ! [X409: term,X410: subst > term > subst > $o] :
                ( ~ ! [X411: subst > term > term] :
                      ( ~ ! [X412: subst,X413: subst,X414: term] :
                            ( ( X411 @ ( comp @ X412 @ X413 ) @ ( sub @ X414 @ X413 ) )
                            = ( sub @ ( X411 @ X412 @ X414 ) @ X413 ) )
                      | ~ ! [X415: term] :
                            ( ( ( X410 @ id @ X415 @ id )
                             != $true )
                            | ( ( X410 @ id @ ( X411 @ id @ X415 ) @ id )
                              = $true ) )
                      | ( $true
                        = ( X410 @ id @ ( lam @ ( X411 @ sh @ one ) ) @ id ) ) )
                | ~ ! [X416: term] :
                      ( ( $true
                        = ( X410 @ id @ ( sub @ X409 @ ( push @ X416 @ id ) ) @ id ) )
                      | ( $true
                       != ( X410 @ id @ X416 @ id ) ) )
                | ~ ! [X417: subst,X418: subst,X419: subst,X420: term] :
                      ( ( $true
                        = ( X410 @ ( comp @ X417 @ X418 ) @ ( sub @ X420 @ X418 ) @ X419 ) )
                      | ( $true
                       != ( X410 @ X417 @ X420 @ ( comp @ X418 @ X419 ) ) ) )
                | ( $true
                  = ( X410 @ id @ ( lam @ X409 ) @ id ) )
                | ~ ! [X421: subst,X422: subst,X423: subst,X424: term] :
                      ( ( ( X410 @ X422 @ X424 @ ( comp @ X421 @ X423 ) )
                        = $true )
                      | ( ( X410 @ ( comp @ X422 @ X421 ) @ ( sub @ X424 @ X421 ) @ X423 )
                       != $true ) ) )
           => ! [X425: subst > term > subst > $o,X426: term] :
                ( ( $true
                  = ( X425 @ id @ X426 @ id ) )
                | ~ ! [X427: subst,X428: subst,X429: subst,X430: term] :
                      ( ( $true
                        = ( X425 @ X429 @ X430 @ ( comp @ X428 @ X427 ) ) )
                      | ( ( X425 @ ( comp @ X429 @ X428 ) @ ( sub @ X430 @ X428 ) @ X427 )
                       != $true ) )
                | ~ ! [X431: term] :
                      ( ( ( X425 @ id @ X431 @ id )
                        = $true )
                      | ( $true
                       != ( var @ ( sub @ X431 @ id ) ) ) )
                | ~ ! [X432: term,X433: term] :
                      ( ( $true
                       != ( X425 @ id @ X432 @ id ) )
                      | ( $true
                        = ( X425 @ id @ ( ap @ ( sub @ X433 @ id ) @ X432 ) @ id ) )
                      | ( ( X425 @ id @ X433 @ id )
                       != $true ) )
                | ~ ! [X434: subst > term > term] :
                      ( ( $true
                        = ( X425 @ id @ ( lam @ ( X434 @ sh @ one ) ) @ id ) )
                      | ~ ! [X435: subst,X436: term,X437: subst] :
                            ( ( X434 @ ( comp @ X437 @ X435 ) @ ( sub @ X436 @ X435 ) )
                            = ( sub @ ( X434 @ X437 @ X436 ) @ X435 ) )
                      | ~ ! [X438: term] :
                            ( ( $true
                             != ( X425 @ id @ X438 @ id ) )
                            | ( $true
                              = ( X425 @ id @ ( X434 @ id @ X438 ) @ id ) ) ) )
                | ~ ! [X439: subst,X440: term,X441: subst,X442: subst] :
                      ( ( $true
                        = ( X425 @ ( comp @ X441 @ X442 ) @ ( sub @ X440 @ X442 ) @ X439 ) )
                      | ( ( X425 @ X441 @ X440 @ ( comp @ X442 @ X439 ) )
                       != $true ) ) ) ) ) )
    <=> ( hoasinduction_lthm = $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ( pushprop_lem0 = $true )
    <=> ! [X443: subst,X444: term > $o,X445: term] :
          ~ ! [X446: term > $o] :
              ~ ! [X447: term] :
                  ( ( X446 @ X447 )
                  = ( X444 @ ( sub @ X447 @ ( push @ X445 @ X443 ) ) ) ) )
    & ( ( shinj = $true )
    <=> ! [X448: term,X449: term] :
          ( ( ( sub @ X448 @ sh )
           != ( sub @ X449 @ sh ) )
          | ( X448 = X449 ) ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_lem3a = $true )
    <=> ! [X450: term,X451: subst > term > subst > $o] :
          ( ( $true
            = ( X451 @ id @ ( lam @ X450 ) @ id ) )
          | ~ ! [X452: term] :
                ( ( $true
                 != ( X451 @ id @ X452 @ id ) )
                | ( ( X451 @ id @ ( sub @ X450 @ ( push @ X452 @ id ) ) @ id )
                  = $true ) )
          | ~ ! [X453: subst > term > term] :
                ( ( $true
                  = ( X451 @ id @ ( lam @ ( X453 @ sh @ one ) ) @ id ) )
                | ~ ! [X454: term] :
                      ( ( $true
                       != ( X451 @ id @ X454 @ id ) )
                      | ( $true
                        = ( X451 @ id @ ( X453 @ id @ X454 ) @ id ) ) )
                | ~ ! [X455: subst,X456: subst,X457: term] :
                      ( ( X453 @ ( comp @ X455 @ X456 ) @ ( sub @ X457 @ X456 ) )
                      = ( sub @ ( X453 @ X455 @ X457 ) @ X456 ) ) ) ) )
    & ( ! [X458: term,X459: term > $o] :
          ( ( ( X459 @ X458 )
            = $true )
          | ~ ! [X460: term] :
                ( ~ ! [X461: term] :
                      ( ( $true
                       != ( X459 @ X461 ) )
                      | ( $true
                        = ( X459 @ ( sub @ X460 @ ( push @ X461 @ id ) ) ) ) )
                | ( ( X459 @ ( lam @ X460 ) )
                  = $true ) )
          | ~ ! [X462: term,X463: term] :
                ( ( ( X459 @ X462 )
                 != $true )
                | ( $true
                  = ( X459 @ ( ap @ X463 @ X462 ) ) )
                | ( $true
                 != ( X459 @ X463 ) ) )
          | ~ ! [X464: term] :
                ( ( ( X459 @ X464 )
                  = $true )
                | ( $true
                 != ( var @ X464 ) ) ) )
    <=> ( induction2 = $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
    <=> ( ! [X465: subst > term > subst > $o] :
            ~ ! [X466: term > $o] :
                ~ ! [X467: term] :
                    ( ( X465 @ id @ X467 @ id )
                    = ( X466 @ X467 ) )
       => ( ! [X468: term > $o,X469: term] :
              ( ~ ! [X470: term] :
                    ( ( $true
                      = ( X468 @ ( lam @ X470 ) ) )
                    | ~ ! [X471: term] :
                          ( ( ( X468 @ X471 )
                           != $true )
                          | ( ( X468 @ ( sub @ X470 @ ( push @ X471 @ id ) ) )
                            = $true ) ) )
              | ~ ! [X472: term,X473: term] :
                    ( ( $true
                      = ( X468 @ ( ap @ X472 @ X473 ) ) )
                    | ( ( X468 @ X472 )
                     != $true )
                    | ( $true
                     != ( X468 @ X473 ) ) )
              | ( ( X468 @ X469 )
                = $true )
              | ~ ! [X474: term] :
                    ( ( $true
                     != ( var @ X474 ) )
                    | ( ( X468 @ X474 )
                      = $true ) ) )
         => ( ! [X475: term] :
                ( ( sub @ X475 @ id )
                = X475 )
           => ( ! [X476: term,X477: term > $o,X478: subst > term > subst > $o] :
                  ( ( $true
                    = ( X477 @ ( lam @ X476 ) ) )
                  | ~ ! [X479: term] :
                        ( ( $true
                          = ( X477 @ ( sub @ X476 @ ( push @ X479 @ id ) ) ) )
                        | ( $true
                         != ( X477 @ X479 ) ) )
                  | ~ ! [X480: subst > term > term] :
                        ( ~ ! [X481: subst,X482: subst,X483: term] :
                              ( ( sub @ ( X480 @ X481 @ X483 ) @ X482 )
                              = ( X480 @ ( comp @ X481 @ X482 ) @ ( sub @ X483 @ X482 ) ) )
                        | ~ ! [X484: term] :
                              ( ( ( X478 @ id @ ( X480 @ id @ X484 ) @ id )
                                = $true )
                              | ( $true
                               != ( X478 @ id @ X484 @ id ) ) )
                        | ( $true
                          = ( X478 @ id @ ( lam @ ( X480 @ sh @ one ) ) @ id ) ) )
                  | ~ ! [X485: term] :
                        ( ( X478 @ id @ X485 @ id )
                        = ( X477 @ X485 ) ) )
             => ! [X486: subst > term > subst > $o,X487: term] :
                  ( ~ ! [X488: subst,X489: term,X490: subst,X491: subst] :
                        ( ( $true
                          = ( X486 @ ( comp @ X490 @ X491 ) @ ( sub @ X489 @ X491 ) @ X488 ) )
                        | ( $true
                         != ( X486 @ X490 @ X489 @ ( comp @ X491 @ X488 ) ) ) )
                  | ~ ! [X492: subst > term > term] :
                        ( ~ ! [X493: subst,X494: subst,X495: term] :
                              ( ( X492 @ ( comp @ X493 @ X494 ) @ ( sub @ X495 @ X494 ) )
                              = ( sub @ ( X492 @ X493 @ X495 ) @ X494 ) )
                        | ( $true
                          = ( X486 @ id @ ( lam @ ( X492 @ sh @ one ) ) @ id ) )
                        | ~ ! [X496: term] :
                              ( ( ( X486 @ id @ ( X492 @ id @ X496 ) @ id )
                                = $true )
                              | ( $true
                               != ( X486 @ id @ X496 @ id ) ) ) )
                  | ~ ! [X497: subst,X498: term,X499: subst,X500: subst] :
                        ( ( $true
                         != ( X486 @ ( comp @ X500 @ X497 ) @ ( sub @ X498 @ X497 ) @ X499 ) )
                        | ( $true
                          = ( X486 @ X500 @ X498 @ ( comp @ X497 @ X499 ) ) ) )
                  | ~ ! [X501: term,X502: term] :
                        ( ( $true
                         != ( X486 @ id @ X502 @ id ) )
                        | ( $true
                         != ( X486 @ id @ X501 @ id ) )
                        | ( $true
                          = ( X486 @ id @ ( ap @ ( sub @ X502 @ id ) @ X501 ) @ id ) ) )
                  | ~ ! [X503: term] :
                        ( ( ( var @ ( sub @ X503 @ id ) )
                         != $true )
                        | ( $true
                          = ( X486 @ id @ X503 @ id ) ) )
                  | ( $true
                    = ( X486 @ id @ X487 @ id ) ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( ! [X504: term] :
            ( ( sub @ X504 @ id )
            = X504 )
       => ( ! [X505: term,X506: term,X507: term,X508: term] :
              ( ( X505 = X506 )
              | ( ( ap @ X506 @ X508 )
               != ( ap @ X505 @ X507 ) ) )
         => ! [X509: term,X510: term,X511: term,X512: term] :
              ( ( X510 = X512 )
              | ( ( ap @ ( sub @ X510 @ id ) @ X509 )
               != ( ap @ ( sub @ X512 @ id ) @ X511 ) ) ) ) ) )
    & ! [X513: d_term] : ( d_one = X513 )
    & ( pushprop_lem2v2 = $true )
    & ( axmap = $true )
    & ( ( ! [X514: term] :
            ( ( sub @ X514 @ id )
            = X514 )
       => ( ! [X515: term,X516: subst > term > subst > $o] :
              ( ~ ! [X517: subst > term > term] :
                    ( ~ ! [X518: term] :
                          ( ( $true
                           != ( X516 @ id @ X518 @ id ) )
                          | ( ( X516 @ id @ ( X517 @ id @ X518 ) @ id )
                            = $true ) )
                    | ( ( X516 @ id @ ( lam @ ( X517 @ sh @ one ) ) @ id )
                      = $true )
                    | ~ ! [X519: subst,X520: term,X521: subst] :
                          ( ( X517 @ ( comp @ X521 @ X519 ) @ ( sub @ X520 @ X519 ) )
                          = ( sub @ ( X517 @ X521 @ X520 ) @ X519 ) ) )
              | ( ( X516 @ id @ ( lam @ ( sub @ X515 @ ( push @ one @ sh ) ) ) @ id )
                = $true )
              | ~ ! [X522: term] :
                    ( ( $true
                     != ( X516 @ id @ X522 @ id ) )
                    | ( $true
                      = ( X516 @ id @ ( sub @ X515 @ ( push @ X522 @ id ) ) @ id ) ) ) )
         => ! [X523: term,X524: subst > term > subst > $o] :
              ( ~ ! [X525: term,X526: subst,X527: subst,X528: subst] :
                    ( ( $true
                     != ( X524 @ ( comp @ X527 @ X526 ) @ ( sub @ X525 @ X526 ) @ X528 ) )
                    | ( ( X524 @ X527 @ X525 @ ( comp @ X526 @ X528 ) )
                      = $true ) )
              | ( ( X524 @ id @ ( lam @ X523 ) @ id )
                = $true )
              | ~ ! [X529: term,X530: subst,X531: subst,X532: subst] :
                    ( ( $true
                     != ( X524 @ X532 @ X529 @ ( comp @ X530 @ X531 ) ) )
                    | ( $true
                      = ( X524 @ ( comp @ X532 @ X530 ) @ ( sub @ X529 @ X530 ) @ X531 ) ) )
              | ~ ! [X533: subst > term > term] :
                    ( ~ ! [X534: term] :
                          ( ( $true
                            = ( X524 @ id @ ( X533 @ id @ X534 ) @ id ) )
                          | ( $true
                           != ( X524 @ id @ X534 @ id ) ) )
                    | ( $true
                      = ( X524 @ id @ ( lam @ ( X533 @ sh @ one ) ) @ id ) )
                    | ~ ! [X535: subst,X536: term,X537: subst] :
                          ( ( sub @ ( X533 @ X537 @ X536 ) @ X535 )
                          = ( X533 @ ( comp @ X537 @ X535 ) @ ( sub @ X536 @ X535 ) ) ) )
              | ~ ! [X538: term] :
                    ( ( $true
                     != ( X524 @ id @ X538 @ id ) )
                    | ( $true
                      = ( X524 @ id @ ( sub @ X523 @ ( push @ X538 @ id ) ) @ id ) ) ) ) ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ( axidl = $true )
    <=> ! [X539: subst] :
          ( ( comp @ id @ X539 )
          = X539 ) ) ),
    inference(rectify,[status(thm)],[f8]) ).

thf(f8,plain,
    ( ( ! [X0: term,X1: term > $o,X2: subst] :
          ~ ! [X3: term > $o] :
              ~ ! [X4: term] :
                  ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
                  = ( X3 @ X4 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( ! [X5: term > $o,X6: term] :
          ( ~ ! [X7: term] :
                ( ( ( X5 @ ( lam @ X7 ) )
                  = $true )
                | ( $true
                 != ( X5 @ X7 ) ) )
          | ~ ! [X8: term,X9: term] :
                ( ( $true
                 != ( X5 @ X8 ) )
                | ( $true
                  = ( X5 @ ( ap @ X9 @ X8 ) ) )
                | ( ( X5 @ X9 )
                 != $true ) )
          | ~ ! [X10: term] :
                ( ( $true
                  = ( X5 @ X10 ) )
                | ( $true
                 != ( var @ X10 ) ) )
          | ( $true
            = ( X5 @ X6 ) ) )
    <=> ( induction = $true ) )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> ( hoasapinj2 = $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
    <=> ! [X15: subst > term > subst > $o,X16: term] :
          ( ~ ! [X17: term,X18: subst > term > term] :
                ( ~ ! [X19: term] :
                      ( ( $true
                        = ( X15 @ id @ ( X18 @ id @ X19 ) @ id ) )
                      | ( $true
                       != ( X15 @ id @ X19 @ id ) ) )
                | ~ ! [X20: subst,X21: subst,X22: term] :
                      ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                      = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
                | ~ ! [X23: subst,X24: subst,X25: term] :
                      ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                      = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
                | ( $true
                  = ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id ) )
          | ~ ! [X26: term] :
                ( ( $true
                  = ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id ) )
                | ( $true
                 != ( X15 @ id @ X26 @ id ) ) ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ~ ! [X31: term] :
                ( ( X29 @ X31 )
                = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ( $true
           != ( X27 @ X28 ) )
          | ( $true
            = ( X29 @ one ) ) ) )
    & ( ( ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
       => ( ! [X34: subst,X35: term] :
              ( ( comp @ sh @ ( push @ X35 @ X34 ) )
              = X34 )
         => ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
              ( ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
                = $true )
              | ( $true
               != ( X37 @ X36 ) ) ) ) )
    <=> ( pushprop_lem1_lthm = $true ) )
    & ( ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ( $true
           != ( X43 @ X44 ) )
          | ~ ! [X45: term,X46: term] :
                ( ( $true
                 != ( X41 @ id @ X46 @ id ) )
                | ( $true
                 != ( X41 @ id @ X45 @ id ) )
                | ( $true
                  = ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) ) )
          | ~ ! [X47: term] :
                ( ( X43 @ X47 )
                = ( X41 @ id @ X47 @ id ) )
          | ~ ! [X48: term,X49: subst,X50: subst,X51: subst] :
                ( ( $true
                  = ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 ) )
                | ( ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) )
                 != $true ) )
          | ( $true
           != ( X43 @ X42 ) )
          | ~ ! [X52: subst,X53: subst,X54: term,X55: subst] :
                ( ( $true
                  = ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) ) )
                | ( $true
                 != ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) ) )
          | ( $true
            = ( X43 @ ( ap @ X42 @ X44 ) ) ) )
    <=> ( hoasinduction_lem2v2 = $true ) )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( ( d2subst @ X56 )
          = ( d2subst @ X57 ) )
       => ( X56 = X57 ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 )
    & ( induction2lem_gthm = $true )
    & ( lamnotap != $true )
    & ( ( substmonoid_lthm = $true )
    <=> ( ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 )
       => ( ! [X61: subst] :
              ( ( comp @ X61 @ id )
              = X61 )
         => ( ! [X63: subst] :
                ( ( comp @ id @ X63 )
                = X63 )
            & ! [X62: subst] :
                ( ( comp @ X62 @ id )
                = X62 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( induction2_lthm = $true )
    <=> ( ! [X64: term] :
            ( ( sub @ X64 @ id )
            = X64 )
       => ( ! [X65: subst,X66: term > $o,X67: term] :
              ( ~ ! [X68: term,X69: term] :
                    ( ( ( X66 @ ( ap @ X68 @ X69 ) )
                      = $true )
                    | ( ( X66 @ X68 )
                     != $true )
                    | ( ( X66 @ X69 )
                     != $true ) )
              | ~ ! [X70: term] :
                    ( ~ ! [X71: term] :
                          ( ( $true
                           != ( X66 @ X71 ) )
                          | ( $true
                            = ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) ) )
                    | ( $true
                      = ( X66 @ ( lam @ X70 ) ) ) )
              | ( $true
                = ( X66 @ ( sub @ X67 @ X65 ) ) )
              | ~ ! [X72: term] :
                    ( ( $true
                      = ( X66 @ ( sub @ X72 @ X65 ) ) )
                    | ( ( var @ X72 )
                     != $true ) ) )
         => ! [X73: term,X74: term > $o] :
              ( ~ ! [X75: term] :
                    ( ( $true
                      = ( X74 @ ( lam @ X75 ) ) )
                    | ~ ! [X76: term] :
                          ( ( $true
                            = ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) ) )
                          | ( $true
                           != ( X74 @ X76 ) ) ) )
              | ~ ! [X77: term] :
                    ( ( $true
                      = ( X74 @ X77 ) )
                    | ( $true
                     != ( var @ X77 ) ) )
              | ~ ! [X78: term,X79: term] :
                    ( ( $true
                     != ( X74 @ X78 ) )
                    | ( $true
                     != ( X74 @ X79 ) )
                    | ( ( X74 @ ( ap @ X79 @ X78 ) )
                      = $true ) )
              | ( $true
                = ( X74 @ X73 ) ) ) ) ) )
    & ( ( axvarid = $true )
    <=> ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 ) )
    & ( axabs = $true )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ~ ! [X84: term] :
                ( ( $true
                  = ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) ) )
                | ( $true
                 != ( X83 @ X84 ) ) )
          | ~ ! [X85: term] :
                ( ( X83 @ X85 )
                = ( X82 @ id @ X85 @ id ) )
          | ~ ! [X86: subst > term > term] :
                ( ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
                  = $true )
                | ~ ! [X87: term,X88: subst,X89: subst] :
                      ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                      = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
                | ~ ! [X90: term] :
                      ( ( $true
                       != ( X82 @ id @ X90 @ id ) )
                      | ( $true
                        = ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) ) ) )
          | ( $true
            = ( X83 @ ( lam @ X81 ) ) ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) )
          | ~ ! [X95: subst,X96: subst,X97: term] :
                ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
                = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ~ ! [X98: term,X99: subst,X100: subst] :
                ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
                = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( hoaslamnotap_lthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) )
          | ( X101 = X104 ) )
    <=> ( apinj1 = $true ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( lamnotvar = $true )
    & ( termmset_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 )
       => ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ( $true
             != ( X109 @ X108 ) )
            | ( $true
              = ( X110 @ one ) )
            | ~ ! [X112: term] :
                  ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                  = ( X110 @ X112 ) ) ) )
    <=> ( pushprop_lem1v2_lthm = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ~ ! [X115: subst > term > term] :
                ( ~ ! [X116: term] :
                      ( ( $true
                       != ( X113 @ id @ X116 @ id ) )
                      | ( $true
                        = ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) ) )
                | ~ ! [X117: subst,X118: subst,X119: term] :
                      ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                      = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
                | ( $true
                  = ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) ) )
          | ( ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
            = $true )
          | ~ ! [X120: term] :
                ( ( $true
                 != ( X113 @ id @ X120 @ id ) )
                | ( $true
                  = ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ! [X121: subst > term > subst > $o] :
          ~ ! [X122: term > $o] :
              ~ ! [X123: term] :
                  ( ( X121 @ id @ X123 @ id )
                  = ( X122 @ X123 ) )
    <=> ( hoasinduction_lem0 = $true ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 )
       => ( ! [X125: term,X126: subst > term > subst > $o] :
              ( ~ ! [X127: term] :
                    ( ( $true
                      = ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id ) )
                    | ( $true
                     != ( X126 @ id @ X127 @ id ) ) )
              | ( $true
                = ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id ) )
              | ~ ! [X128: subst > term > term] :
                    ( ( $true
                      = ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id ) )
                    | ~ ! [X129: subst,X130: subst,X131: term] :
                          ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                          = ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
                    | ~ ! [X132: term] :
                          ( ( $true
                            = ( X126 @ id @ ( X128 @ id @ X132 ) @ id ) )
                          | ( $true
                           != ( X126 @ id @ X132 @ id ) ) ) ) )
         => ! [X133: subst > term > subst > $o,X134: term] :
              ( ~ ! [X135: subst > term > term] :
                    ( ~ ! [X136: term] :
                          ( ( $true
                           != ( X133 @ id @ X136 @ id ) )
                          | ( $true
                            = ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) ) )
                    | ~ ! [X137: subst,X138: subst,X139: term] :
                          ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                          = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                    | ( ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id )
                      = $true ) )
              | ~ ! [X140: term] :
                    ( ( $true
                     != ( X133 @ id @ X140 @ id ) )
                    | ( $true
                      = ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) ) )
              | ( ( X133 @ id @ ( lam @ X134 ) @ id )
                = $true ) ) ) )
    <=> ( hoasinduction_lem3a_lthm = $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( hoasinduction_lem3b = $true )
    <=> ! [X141: term] :
          ~ ! [X142: subst > term > term] :
              ( ( X142 @ sh @ one )
             != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( pushprop_lthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( axvarshift = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( $true
            = ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) ) )
          | ( $true
           != ( X145 @ X146 ) ) )
    <=> ( pushprop_lem1 = $true ) )
    & ( ( ! [X148: term] :
            ( ( sub @ X148 @ id )
            = X148 )
       => ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ~ ! [X152: term] :
                  ( ( $true
                   != ( X151 @ X152 ) )
                  | ( $true
                    = ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) ) )
            | ~ ! [X153: subst,X154: term,X155: subst,X156: subst] :
                  ( ( $true
                    = ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) ) )
                  | ( $true
                   != ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) ) )
            | ( $true
              = ( X151 @ ( lam @ X150 ) ) )
            | ~ ! [X157: subst,X158: subst,X159: term,X160: subst] :
                  ( ( $true
                    = ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 ) )
                  | ( $true
                   != ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) ) )
            | ~ ! [X161: subst > term > term] :
                  ( ~ ! [X162: subst,X163: subst,X164: term] :
                        ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                        = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) )
                  | ~ ! [X165: term] :
                        ( ( $true
                         != ( X149 @ id @ X165 @ id ) )
                        | ( $true
                          = ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) ) )
                  | ( $true
                    = ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) ) )
            | ~ ! [X166: term] :
                  ( ( X149 @ id @ X166 @ id )
                  = ( X151 @ X166 ) ) ) )
    <=> ( hoasinduction_lem3v2_lthm = $true ) )
    & ( ( ! [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
            = X168 )
       => ( ! [X169: subst,X170: term] :
              ( ( comp @ sh @ ( push @ X170 @ X169 ) )
              = X169 )
         => ( ! [X171: subst] :
                ( ( comp @ X171 @ id )
                = X171 )
           => ( ! [X172: term,X173: term > $o] :
                  ( ~ ! [X174: term] :
                        ( ( $true
                          = ( X173 @ ( lam @ X174 ) ) )
                        | ( ( X173 @ X174 )
                         != $true ) )
                  | ( $true
                    = ( X173 @ X172 ) )
                  | ~ ! [X175: term] :
                        ( ( ( X173 @ X175 )
                          = $true )
                        | ( $true
                         != ( var @ X175 ) ) )
                  | ~ ! [X176: term,X177: term] :
                        ( ( $true
                         != ( X173 @ X176 ) )
                        | ( $true
                         != ( X173 @ X177 ) )
                        | ( ( X173 @ ( ap @ X177 @ X176 ) )
                          = $true ) ) )
             => ! [X178: subst,X179: term > $o,X180: term] :
                  ( ~ ! [X181: term] :
                        ( ( $true
                         != ( var @ X181 ) )
                        | ( $true
                          = ( X179 @ ( sub @ X181 @ X178 ) ) ) )
                  | ~ ! [X182: term,X183: term] :
                        ( ( $true
                         != ( X179 @ X182 ) )
                        | ( $true
                          = ( X179 @ ( ap @ X183 @ X182 ) ) )
                        | ( $true
                         != ( X179 @ X183 ) ) )
                  | ( $true
                    = ( X179 @ ( sub @ X180 @ X178 ) ) )
                  | ~ ! [X184: term] :
                        ( ( $true
                          = ( X179 @ ( lam @ X184 ) ) )
                        | ~ ! [X185: term] :
                              ( ( $true
                                = ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) ) )
                              | ( $true
                               != ( X179 @ X185 ) ) ) ) ) ) ) ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
    <=> ! [X186: subst > term > subst > $o] :
          ~ ! [X187: term > $o] :
              ~ ! [X188: term] :
                  ( ( X186 @ id @ X188 @ id )
                  = ( X187 @ X188 ) ) )
    & ( ! [X189: subst > term > subst > $o,X190: term] :
          ( ~ ! [X191: term,X192: term] :
                ( ( $true
                 != ( X189 @ id @ X192 @ id ) )
                | ( $true
                  = ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id ) )
                | ( ( X189 @ id @ X191 @ id )
                 != $true ) )
          | ~ ! [X193: subst > term > term] :
                ( ~ ! [X194: subst,X195: subst,X196: term] :
                      ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                      = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
                | ( $true
                  = ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id ) )
                | ~ ! [X197: term] :
                      ( ( $true
                        = ( X189 @ id @ ( X193 @ id @ X197 ) @ id ) )
                      | ( ( X189 @ id @ X197 @ id )
                       != $true ) ) )
          | ~ ! [X198: term] :
                ( ( $true
                  = ( X189 @ id @ X198 @ id ) )
                | ( $true
                 != ( var @ ( sub @ X198 @ id ) ) ) )
          | ( $true
            = ( X189 @ id @ X190 @ id ) )
          | ~ ! [X199: subst,X200: subst,X201: subst,X202: term] :
                ( ( $true
                  = ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 ) )
                | ( $true
                 != ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) ) )
          | ~ ! [X203: subst,X204: subst,X205: term,X206: subst] :
                ( ( $true
                 != ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 ) )
                | ( ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) )
                  = $true ) ) )
    <=> ( hoasinduction = $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ! [X209: d_term,X210: d_term] :
        ( ( ( d2term @ X210 )
          = ( d2term @ X209 ) )
       => ( X209 = X210 ) )
    & ( ( substmonoid = $true )
    <=> ( ! [X211: subst] :
            ( ( comp @ X211 @ id )
            = X211 )
        & ! [X212: subst] :
            ( ( comp @ id @ X212 )
            = X212 ) ) )
    & ( ulamvarsh = $true )
    & ( induction2_gthm = $true )
    & ( axassoc = $true )
    & ( ! [X213: term,X214: term,X215: subst > term > term] :
          ( ( ( lam @ ( X215 @ sh @ one ) )
           != ( ap @ ( sub @ X214 @ id ) @ X213 ) )
          | ~ ! [X216: subst,X217: subst,X218: term] :
                ( ( X215 @ ( comp @ X216 @ X217 ) @ ( sub @ X218 @ X217 ) )
                = ( sub @ ( X215 @ X216 @ X218 ) @ X217 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( axscons = $true )
    <=> ! [X219: subst] :
          ( ( push @ ( sub @ one @ X219 ) @ ( comp @ sh @ X219 ) )
          = X219 ) )
    & ( ( ! [X220: subst,X221: term] :
            ( ( sub @ one @ ( push @ X221 @ X220 ) )
            = X221 )
       => ( ! [X222: subst,X223: term] :
              ( ( comp @ sh @ ( push @ X223 @ X222 ) )
              = X222 )
         => ( ! [X224: term,X225: term] :
                ( ( ( lam @ X224 )
                 != ( lam @ X225 ) )
                | ( X224 = X225 ) )
           => ! [X226: subst > term > term,X227: subst > term > term,X228: term,X229: subst] :
                ( ( ( X227 @ X229 @ X228 )
                  = ( X226 @ X229 @ X228 ) )
                | ~ ! [X230: subst,X231: term,X232: subst] :
                      ( ( X226 @ ( comp @ X230 @ X232 ) @ ( sub @ X231 @ X232 ) )
                      = ( sub @ ( X226 @ X230 @ X231 ) @ X232 ) )
                | ~ ! [X233: subst,X234: subst,X235: term] :
                      ( ( sub @ ( X227 @ X234 @ X235 ) @ X233 )
                      = ( X227 @ ( comp @ X234 @ X233 ) @ ( sub @ X235 @ X233 ) ) )
                | ( ( lam @ ( X226 @ sh @ one ) )
                 != ( lam @ ( X227 @ sh @ one ) ) ) ) ) ) )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( ( hoasinduction_lem2 = $true )
    <=> ! [X236: term,X237: subst > term > subst > $o,X238: term] :
          ( ( ( X237 @ id @ ( ap @ X236 @ X238 ) @ id )
            = $true )
          | ~ ! [X239: subst,X240: subst,X241: term,X242: subst] :
                ( ( ( X237 @ ( comp @ X239 @ X242 ) @ ( sub @ X241 @ X242 ) @ X240 )
                  = $true )
                | ( $true
                 != ( X237 @ X239 @ X241 @ ( comp @ X242 @ X240 ) ) ) )
          | ( $true
           != ( X237 @ id @ X238 @ id ) )
          | ~ ! [X243: term,X244: term] :
                ( ( $true
                 != ( X237 @ id @ X243 @ id ) )
                | ( $true
                  = ( X237 @ id @ ( ap @ ( sub @ X244 @ id ) @ X243 ) @ id ) )
                | ( $true
                 != ( X237 @ id @ X244 @ id ) ) )
          | ( $true
           != ( X237 @ id @ X236 @ id ) )
          | ~ ! [X245: term,X246: subst,X247: subst,X248: subst] :
                ( ( ( X237 @ ( comp @ X246 @ X248 ) @ ( sub @ X245 @ X248 ) @ X247 )
                 != $true )
                | ( $true
                  = ( X237 @ X246 @ X245 @ ( comp @ X248 @ X247 ) ) ) ) ) )
    & ( ulamvar1 != $true )
    & ( axapp = $true )
    & ( ! [X249: term,X250: subst > term > subst > $o] :
          ( ~ ! [X251: subst > term > term] :
                ( ( $true
                  = ( X250 @ id @ ( lam @ ( X251 @ sh @ one ) ) @ id ) )
                | ~ ! [X252: term] :
                      ( ( $true
                       != ( X250 @ id @ X252 @ id ) )
                      | ( $true
                        = ( X250 @ id @ ( X251 @ id @ X252 ) @ id ) ) )
                | ~ ! [X253: subst,X254: term,X255: subst] :
                      ( ( sub @ ( X251 @ X255 @ X254 ) @ X253 )
                      = ( X251 @ ( comp @ X255 @ X253 ) @ ( sub @ X254 @ X253 ) ) ) )
          | ~ ! [X256: term,X257: term] :
                ( ( $true
                 != ( X250 @ id @ X256 @ id ) )
                | ( $true
                 != ( X250 @ id @ X257 @ id ) )
                | ( $true
                  = ( X250 @ id @ ( ap @ ( sub @ X257 @ id ) @ X256 ) @ id ) ) )
          | ( $true
            = ( X250 @ id @ X249 @ id ) ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ! [X258: term,X259: term,X260: term,X261: term] :
          ( ( ( ap @ X261 @ X259 )
           != ( ap @ X260 @ X258 ) )
          | ( X258 = X259 ) )
    <=> ( apinj2 = $true ) )
    & ( hoaslamnotvar = $true )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem = $true )
    <=> ! [X262: subst,X263: term,X264: term > $o] :
          ( ~ ! [X265: term,X266: term] :
                ( ( $true
                  = ( X264 @ ( ap @ X265 @ X266 ) ) )
                | ( $true
                 != ( X264 @ X266 ) )
                | ( $true
                 != ( X264 @ X265 ) ) )
          | ~ ! [X267: term] :
                ( ( $true
                 != ( var @ X267 ) )
                | ( $true
                  = ( X264 @ ( sub @ X267 @ X262 ) ) ) )
          | ( $true
            = ( X264 @ ( sub @ X263 @ X262 ) ) )
          | ~ ! [X268: term] :
                ( ( ( X264 @ ( lam @ X268 ) )
                  = $true )
                | ~ ! [X269: term] :
                      ( ( ( X264 @ X269 )
                       != $true )
                      | ( $true
                        = ( X264 @ ( sub @ X268 @ ( push @ X269 @ id ) ) ) ) ) ) ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
    <=> ( ! [X270: term] :
            ~ ! [X271: subst > term > term] :
                ~ ! [X272: subst,X273: term] :
                    ( ( X271 @ X272 @ X273 )
                    = ( sub @ X270 @ ( push @ X273 @ X272 ) ) )
       => ( ! [X274: term] :
              ( ( sub @ X274 @ id )
              = X274 )
         => ! [X275: term,X276: term > $o,X277: subst > term > subst > $o] :
              ( ~ ! [X278: term] :
                    ( ( X277 @ id @ X278 @ id )
                    = ( X276 @ X278 ) )
              | ( $true
                = ( X276 @ ( lam @ X275 ) ) )
              | ~ ! [X279: term] :
                    ( ( $true
                     != ( X276 @ X279 ) )
                    | ( $true
                      = ( X276 @ ( sub @ X275 @ ( push @ X279 @ id ) ) ) ) )
              | ~ ! [X280: subst > term > term] :
                    ( ( ( X277 @ id @ ( lam @ ( X280 @ sh @ one ) ) @ id )
                      = $true )
                    | ~ ! [X281: subst,X282: subst,X283: term] :
                          ( ( sub @ ( X280 @ X282 @ X283 ) @ X281 )
                          = ( X280 @ ( comp @ X282 @ X281 ) @ ( sub @ X283 @ X281 ) ) )
                    | ~ ! [X284: term] :
                          ( ( $true
                           != ( X277 @ id @ X284 @ id ) )
                          | ( $true
                            = ( X277 @ id @ ( X280 @ id @ X284 ) @ id ) ) ) ) ) ) ) )
    & ( ! [X285: term] :
          ~ ! [X286: subst > term > term] :
              ( ( X286 @ sh @ one )
             != ( sub @ X285 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b_lthm = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( axshiftcons = $true )
    <=> ! [X287: term,X288: subst] :
          ( ( comp @ sh @ ( push @ X287 @ X288 ) )
          = X288 ) )
    & ( ( hoasapinj1 = $true )
    <=> ! [X289: term,X290: term,X291: term,X292: term] :
          ( ( ( ap @ ( sub @ X291 @ id ) @ X290 )
           != ( ap @ ( sub @ X289 @ id ) @ X292 ) )
          | ( X289 = X291 ) ) )
    & ( hoasapnotvar = $true )
    & ( ( axvarcons = $true )
    <=> ! [X293: term,X294: subst] :
          ( ( sub @ one @ ( push @ X293 @ X294 ) )
          = X293 ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop = $true )
    & ( ( ! [X295: term] :
            ( ( sub @ X295 @ id )
            = X295 )
       => ! [X296: term] :
            ( ( sub @ X296 @ id )
            = X296 ) )
    <=> ( termmset_lthm = $true ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( ! [X297: term,X298: term,X299: term,X300: term] :
            ( ( X297 = X300 )
            | ( ( ap @ X298 @ X297 )
             != ( ap @ X299 @ X300 ) ) )
       => ! [X301: term,X302: term,X303: term,X304: term] :
            ( ( X302 = X304 )
            | ( ( ap @ ( sub @ X303 @ id ) @ X304 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) ) ) ) )
    & ( ! [X305: term] :
          ~ ! [X306: subst > term > term] :
              ~ ! [X307: subst,X308: term] :
                  ( ( X306 @ X307 @ X308 )
                  = ( sub @ X305 @ ( push @ X308 @ X307 ) ) )
    <=> ( hoasinduction_lem3v2_f_lthm = $true ) )
    & ( ( laminj = $true )
    <=> ! [X309: term,X310: term] :
          ( ( ( lam @ X309 )
           != ( lam @ X310 ) )
          | ( X309 = X310 ) ) )
    & ( ( hoasinduction_lem3 = $true )
    <=> ! [X311: subst > term > subst > $o,X312: term] :
          ( ~ ! [X313: term] :
                ( ( $true
                 != ( X311 @ id @ X313 @ id ) )
                | ( ( X311 @ id @ ( sub @ X312 @ ( push @ X313 @ id ) ) @ id )
                  = $true ) )
          | ~ ! [X314: term,X315: subst,X316: subst,X317: subst] :
                ( ( $true
                 != ( X311 @ X317 @ X314 @ ( comp @ X315 @ X316 ) ) )
                | ( $true
                  = ( X311 @ ( comp @ X317 @ X315 ) @ ( sub @ X314 @ X315 ) @ X316 ) ) )
          | ~ ! [X318: subst > term > term] :
                ( ~ ! [X319: term] :
                      ( ( $true
                        = ( X311 @ id @ ( X318 @ id @ X319 ) @ id ) )
                      | ( ( X311 @ id @ X319 @ id )
                       != $true ) )
                | ( $true
                  = ( X311 @ id @ ( lam @ ( X318 @ sh @ one ) ) @ id ) )
                | ~ ! [X320: term,X321: subst,X322: subst] :
                      ( ( sub @ ( X318 @ X322 @ X320 ) @ X321 )
                      = ( X318 @ ( comp @ X322 @ X321 ) @ ( sub @ X320 @ X321 ) ) ) )
          | ( $true
            = ( X311 @ id @ ( lam @ X312 ) @ id ) )
          | ~ ! [X323: subst,X324: term,X325: subst,X326: subst] :
                ( ( ( X311 @ X326 @ X324 @ ( comp @ X323 @ X325 ) )
                  = $true )
                | ( $true
                 != ( X311 @ ( comp @ X326 @ X323 ) @ ( sub @ X324 @ X323 ) @ X325 ) ) ) ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ! [X327: subst > term > subst > $o] :
            ~ ! [X328: term > $o] :
                ~ ! [X329: term] :
                    ( ( X327 @ id @ X329 @ id )
                    = ( X328 @ X329 ) )
       => ( ! [X330: term > $o,X331: term] :
              ( ~ ! [X332: term] :
                    ( ( $true
                     != ( var @ X332 ) )
                    | ( $true
                      = ( X330 @ X332 ) ) )
              | ~ ! [X333: term] :
                    ( ( $true
                      = ( X330 @ ( lam @ X333 ) ) )
                    | ~ ! [X334: term] :
                          ( ( $true
                            = ( X330 @ ( sub @ X333 @ ( push @ X334 @ id ) ) ) )
                          | ( $true
                           != ( X330 @ X334 ) ) ) )
              | ( $true
                = ( X330 @ X331 ) )
              | ~ ! [X335: term,X336: term] :
                    ( ( $true
                     != ( X330 @ X336 ) )
                    | ( $true
                     != ( X330 @ X335 ) )
                    | ( $true
                      = ( X330 @ ( ap @ X335 @ X336 ) ) ) ) )
         => ( ! [X337: term] :
                ( ( sub @ X337 @ id )
                = X337 )
           => ( ! [X338: subst > term > subst > $o,X339: term > $o,X340: term] :
                  ( ( $true
                    = ( X339 @ ( lam @ X340 ) ) )
                  | ~ ! [X341: subst > term > term] :
                        ( ~ ! [X342: term] :
                              ( ( $true
                                = ( X338 @ id @ ( X341 @ id @ X342 ) @ id ) )
                              | ( ( X338 @ id @ X342 @ id )
                               != $true ) )
                        | ~ ! [X343: subst,X344: subst,X345: term] :
                              ( ( sub @ ( X341 @ X343 @ X345 ) @ X344 )
                              = ( X341 @ ( comp @ X343 @ X344 ) @ ( sub @ X345 @ X344 ) ) )
                        | ( ( X338 @ id @ ( lam @ ( X341 @ sh @ one ) ) @ id )
                          = $true ) )
                  | ~ ! [X346: term] :
                        ( ( $true
                          = ( X339 @ ( sub @ X340 @ ( push @ X346 @ id ) ) ) )
                        | ( $true
                         != ( X339 @ X346 ) ) )
                  | ~ ! [X347: term] :
                        ( ( X339 @ X347 )
                        = ( X338 @ id @ X347 @ id ) ) )
             => ! [X348: term,X349: subst > term > subst > $o] :
                  ( ~ ! [X350: term,X351: term] :
                        ( ( $true
                          = ( X349 @ id @ ( ap @ ( sub @ X350 @ id ) @ X351 ) @ id ) )
                        | ( $true
                         != ( X349 @ id @ X351 @ id ) )
                        | ( $true
                         != ( X349 @ id @ X350 @ id ) ) )
                  | ~ ! [X352: subst > term > term] :
                        ( ~ ! [X353: term,X354: subst,X355: subst] :
                              ( ( sub @ ( X352 @ X355 @ X353 ) @ X354 )
                              = ( X352 @ ( comp @ X355 @ X354 ) @ ( sub @ X353 @ X354 ) ) )
                        | ~ ! [X356: term] :
                              ( ( $true
                               != ( X349 @ id @ X356 @ id ) )
                              | ( $true
                                = ( X349 @ id @ ( X352 @ id @ X356 ) @ id ) ) )
                        | ( $true
                          = ( X349 @ id @ ( lam @ ( X352 @ sh @ one ) ) @ id ) ) )
                  | ( $true
                    = ( X349 @ id @ X348 @ id ) ) ) ) ) ) ) )
    & ( apnotvar = $true )
    & ( ( termmset = $true )
    <=> ! [X357: term] :
          ( ( sub @ X357 @ id )
          = X357 ) )
    & ( pushprop_lthm_orig = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_lem3v2 = $true )
    <=> ! [X358: term,X359: term > $o,X360: subst > term > subst > $o] :
          ( ~ ! [X361: term] :
                ( ( X359 @ X361 )
                = ( X360 @ id @ X361 @ id ) )
          | ~ ! [X362: subst > term > term] :
                ( ~ ! [X363: term] :
                      ( ( $true
                        = ( X360 @ id @ ( X362 @ id @ X363 ) @ id ) )
                      | ( $true
                       != ( X360 @ id @ X363 @ id ) ) )
                | ~ ! [X364: subst,X365: term,X366: subst] :
                      ( ( X362 @ ( comp @ X364 @ X366 ) @ ( sub @ X365 @ X366 ) )
                      = ( sub @ ( X362 @ X364 @ X365 ) @ X366 ) )
                | ( $true
                  = ( X360 @ id @ ( lam @ ( X362 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X359 @ ( lam @ X358 ) ) )
          | ~ ! [X367: term] :
                ( ( ( X359 @ X367 )
                 != $true )
                | ( $true
                  = ( X359 @ ( sub @ X358 @ ( push @ X367 @ id ) ) ) ) )
          | ~ ! [X368: subst,X369: subst,X370: subst,X371: term] :
                ( ( $true
                 != ( X360 @ X370 @ X371 @ ( comp @ X368 @ X369 ) ) )
                | ( $true
                  = ( X360 @ ( comp @ X370 @ X368 ) @ ( sub @ X371 @ X368 ) @ X369 ) ) )
          | ~ ! [X372: subst,X373: subst,X374: subst,X375: term] :
                ( ( ( X360 @ X373 @ X375 @ ( comp @ X372 @ X374 ) )
                  = $true )
                | ( ( X360 @ ( comp @ X373 @ X372 ) @ ( sub @ X375 @ X372 ) @ X374 )
                 != $true ) ) ) )
    & ( ! [X376: subst] :
          ( ( comp @ X376 @ id )
          = X376 )
    <=> ( axidr = $true ) )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ! [X377: subst > term > subst > $o,X378: term] :
          ( ~ ! [X379: subst > term > term] :
                ( ~ ! [X380: term] :
                      ( ( $true
                        = ( X377 @ id @ ( X379 @ id @ X380 ) @ id ) )
                      | ( $true
                       != ( X377 @ id @ X380 @ id ) ) )
                | ~ ! [X381: term,X382: subst,X383: subst] :
                      ( ( sub @ ( X379 @ X382 @ X381 ) @ X383 )
                      = ( X379 @ ( comp @ X382 @ X383 ) @ ( sub @ X381 @ X383 ) ) )
                | ( $true
                  = ( X377 @ id @ ( lam @ ( X379 @ sh @ one ) ) @ id ) ) )
          | ( $true
            = ( X377 @ id @ ( lam @ ( sub @ X378 @ ( push @ one @ sh ) ) ) @ id ) )
          | ~ ! [X384: term] :
                ( ( $true
                 != ( X377 @ id @ X384 @ id ) )
                | ( $true
                  = ( X377 @ id @ ( sub @ X378 @ ( push @ X384 @ id ) ) @ id ) ) ) ) )
    & ( axclos = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( pushprop_gthm = $true )
    & ! [X385: subst] :
      ? [X386: d_subst] :
        ( ( d2subst @ X386 )
        = X385 )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X387: term] :
          ~ ! [X388: subst > term > term] :
              ~ ! [X389: subst,X390: term] :
                  ( ( X388 @ X389 @ X390 )
                  = ( sub @ X387 @ ( push @ X390 @ X389 ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( pushprop_lem2v2_gthm = $true )
    & ( ( ! [X391: term,X392: term > $o] :
            ( ( $true
              = ( X392 @ X391 ) )
            | ~ ! [X393: term] :
                  ( ( ( X392 @ ( lam @ X393 ) )
                    = $true )
                  | ~ ! [X394: term] :
                        ( ( $true
                         != ( X392 @ X394 ) )
                        | ( $true
                          = ( X392 @ ( sub @ X393 @ ( push @ X394 @ id ) ) ) ) ) )
            | ~ ! [X395: term,X396: term] :
                  ( ( $true
                   != ( X392 @ X396 ) )
                  | ( $true
                    = ( X392 @ ( ap @ X395 @ X396 ) ) )
                  | ( $true
                   != ( X392 @ X395 ) ) )
            | ~ ! [X397: term] :
                  ( ( $true
                   != ( var @ X397 ) )
                  | ( $true
                    = ( X392 @ X397 ) ) ) )
       => ( ! [X398: term,X399: term,X400: subst > term > subst > $o] :
              ( ( ( X400 @ id @ X399 @ id )
               != $true )
              | ~ ! [X401: subst,X402: subst,X403: subst,X404: term] :
                    ( ( $true
                      = ( X400 @ ( comp @ X403 @ X402 ) @ ( sub @ X404 @ X402 ) @ X401 ) )
                    | ( $true
                     != ( X400 @ X403 @ X404 @ ( comp @ X402 @ X401 ) ) ) )
              | ~ ! [X405: term,X406: term] :
                    ( ( $true
                     != ( X400 @ id @ X406 @ id ) )
                    | ( $true
                     != ( X400 @ id @ X405 @ id ) )
                    | ( $true
                      = ( X400 @ id @ ( ap @ ( sub @ X406 @ id ) @ X405 ) @ id ) ) )
              | ( $true
                = ( X400 @ id @ ( ap @ X398 @ X399 ) @ id ) )
              | ( $true
               != ( X400 @ id @ X398 @ id ) )
              | ~ ! [X407: term,X408: subst,X409: subst,X410: subst] :
                    ( ( $true
                      = ( X400 @ X409 @ X407 @ ( comp @ X410 @ X408 ) ) )
                    | ( $true
                     != ( X400 @ ( comp @ X409 @ X410 ) @ ( sub @ X407 @ X410 ) @ X408 ) ) ) )
         => ( ! [X411: term,X412: subst > term > subst > $o] :
                ( ~ ! [X413: subst > term > term] :
                      ( ~ ! [X414: subst,X415: subst,X416: term] :
                            ( ( X413 @ ( comp @ X414 @ X415 ) @ ( sub @ X416 @ X415 ) )
                            = ( sub @ ( X413 @ X414 @ X416 ) @ X415 ) )
                      | ~ ! [X417: term] :
                            ( ( ( X412 @ id @ X417 @ id )
                             != $true )
                            | ( $true
                              = ( X412 @ id @ ( X413 @ id @ X417 ) @ id ) ) )
                      | ( $true
                        = ( X412 @ id @ ( lam @ ( X413 @ sh @ one ) ) @ id ) ) )
                | ~ ! [X418: term] :
                      ( ( $true
                        = ( X412 @ id @ ( sub @ X411 @ ( push @ X418 @ id ) ) @ id ) )
                      | ( $true
                       != ( X412 @ id @ X418 @ id ) ) )
                | ~ ! [X419: subst,X420: subst,X421: subst,X422: term] :
                      ( ( $true
                        = ( X412 @ ( comp @ X419 @ X420 ) @ ( sub @ X422 @ X420 ) @ X421 ) )
                      | ( $true
                       != ( X412 @ X419 @ X422 @ ( comp @ X420 @ X421 ) ) ) )
                | ( $true
                  = ( X412 @ id @ ( lam @ X411 ) @ id ) )
                | ~ ! [X423: subst,X424: subst,X425: subst,X426: term] :
                      ( ( $true
                        = ( X412 @ X424 @ X426 @ ( comp @ X423 @ X425 ) ) )
                      | ( $true
                       != ( X412 @ ( comp @ X424 @ X423 ) @ ( sub @ X426 @ X423 ) @ X425 ) ) ) )
           => ! [X427: subst > term > subst > $o,X428: term] :
                ( ( $true
                  = ( X427 @ id @ X428 @ id ) )
                | ~ ! [X429: subst,X430: subst,X431: subst,X432: term] :
                      ( ( $true
                        = ( X427 @ X431 @ X432 @ ( comp @ X430 @ X429 ) ) )
                      | ( ( X427 @ ( comp @ X431 @ X430 ) @ ( sub @ X432 @ X430 ) @ X429 )
                       != $true ) )
                | ~ ! [X433: term] :
                      ( ( $true
                        = ( X427 @ id @ X433 @ id ) )
                      | ( ( var @ ( sub @ X433 @ id ) )
                       != $true ) )
                | ~ ! [X434: term,X435: term] :
                      ( ( $true
                       != ( X427 @ id @ X434 @ id ) )
                      | ( $true
                        = ( X427 @ id @ ( ap @ ( sub @ X435 @ id ) @ X434 ) @ id ) )
                      | ( $true
                       != ( X427 @ id @ X435 @ id ) ) )
                | ~ ! [X436: subst > term > term] :
                      ( ( $true
                        = ( X427 @ id @ ( lam @ ( X436 @ sh @ one ) ) @ id ) )
                      | ~ ! [X437: subst,X438: term,X439: subst] :
                            ( ( X436 @ ( comp @ X439 @ X437 ) @ ( sub @ X438 @ X437 ) )
                            = ( sub @ ( X436 @ X439 @ X438 ) @ X437 ) )
                      | ~ ! [X440: term] :
                            ( ( $true
                             != ( X427 @ id @ X440 @ id ) )
                            | ( $true
                              = ( X427 @ id @ ( X436 @ id @ X440 ) @ id ) ) ) )
                | ~ ! [X441: subst,X442: term,X443: subst,X444: subst] :
                      ( ( $true
                        = ( X427 @ ( comp @ X443 @ X444 ) @ ( sub @ X442 @ X444 ) @ X441 ) )
                      | ( $true
                       != ( X427 @ X443 @ X442 @ ( comp @ X444 @ X441 ) ) ) ) ) ) ) )
    <=> ( hoasinduction_lthm = $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ! [X448: subst,X449: term > $o,X450: term] :
          ~ ! [X451: term > $o] :
              ~ ! [X452: term] :
                  ( ( X451 @ X452 )
                  = ( X449 @ ( sub @ X452 @ ( push @ X450 @ X448 ) ) ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( ! [X453: term,X454: term] :
          ( ( ( sub @ X453 @ sh )
           != ( sub @ X454 @ sh ) )
          | ( X453 = X454 ) )
    <=> ( shinj = $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_lem3a = $true )
    <=> ! [X460: term,X461: subst > term > subst > $o] :
          ( ( $true
            = ( X461 @ id @ ( lam @ X460 ) @ id ) )
          | ~ ! [X462: term] :
                ( ( $true
                 != ( X461 @ id @ X462 @ id ) )
                | ( $true
                  = ( X461 @ id @ ( sub @ X460 @ ( push @ X462 @ id ) ) @ id ) ) )
          | ~ ! [X463: subst > term > term] :
                ( ( $true
                  = ( X461 @ id @ ( lam @ ( X463 @ sh @ one ) ) @ id ) )
                | ~ ! [X464: term] :
                      ( ( $true
                       != ( X461 @ id @ X464 @ id ) )
                      | ( $true
                        = ( X461 @ id @ ( X463 @ id @ X464 ) @ id ) ) )
                | ~ ! [X465: subst,X466: subst,X467: term] :
                      ( ( X463 @ ( comp @ X465 @ X466 ) @ ( sub @ X467 @ X466 ) )
                      = ( sub @ ( X463 @ X465 @ X467 ) @ X466 ) ) ) ) )
    & ( ! [X468: term,X469: term > $o] :
          ( ( $true
            = ( X469 @ X468 ) )
          | ~ ! [X470: term] :
                ( ~ ! [X471: term] :
                      ( ( $true
                       != ( X469 @ X471 ) )
                      | ( $true
                        = ( X469 @ ( sub @ X470 @ ( push @ X471 @ id ) ) ) ) )
                | ( ( X469 @ ( lam @ X470 ) )
                  = $true ) )
          | ~ ! [X472: term,X473: term] :
                ( ( $true
                 != ( X469 @ X472 ) )
                | ( ( X469 @ ( ap @ X473 @ X472 ) )
                  = $true )
                | ( $true
                 != ( X469 @ X473 ) ) )
          | ~ ! [X474: term] :
                ( ( $true
                  = ( X469 @ X474 ) )
                | ( $true
                 != ( var @ X474 ) ) ) )
    <=> ( induction2 = $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
    <=> ( ! [X475: subst > term > subst > $o] :
            ~ ! [X476: term > $o] :
                ~ ! [X477: term] :
                    ( ( X475 @ id @ X477 @ id )
                    = ( X476 @ X477 ) )
       => ( ! [X478: term > $o,X479: term] :
              ( ~ ! [X480: term] :
                    ( ( $true
                      = ( X478 @ ( lam @ X480 ) ) )
                    | ~ ! [X481: term] :
                          ( ( $true
                           != ( X478 @ X481 ) )
                          | ( $true
                            = ( X478 @ ( sub @ X480 @ ( push @ X481 @ id ) ) ) ) ) )
              | ~ ! [X482: term,X483: term] :
                    ( ( $true
                      = ( X478 @ ( ap @ X482 @ X483 ) ) )
                    | ( $true
                     != ( X478 @ X482 ) )
                    | ( $true
                     != ( X478 @ X483 ) ) )
              | ( $true
                = ( X478 @ X479 ) )
              | ~ ! [X484: term] :
                    ( ( $true
                     != ( var @ X484 ) )
                    | ( $true
                      = ( X478 @ X484 ) ) ) )
         => ( ! [X485: term] :
                ( ( sub @ X485 @ id )
                = X485 )
           => ( ! [X486: term,X487: term > $o,X488: subst > term > subst > $o] :
                  ( ( $true
                    = ( X487 @ ( lam @ X486 ) ) )
                  | ~ ! [X489: term] :
                        ( ( $true
                          = ( X487 @ ( sub @ X486 @ ( push @ X489 @ id ) ) ) )
                        | ( $true
                         != ( X487 @ X489 ) ) )
                  | ~ ! [X490: subst > term > term] :
                        ( ~ ! [X491: subst,X492: subst,X493: term] :
                              ( ( sub @ ( X490 @ X491 @ X493 ) @ X492 )
                              = ( X490 @ ( comp @ X491 @ X492 ) @ ( sub @ X493 @ X492 ) ) )
                        | ~ ! [X494: term] :
                              ( ( $true
                                = ( X488 @ id @ ( X490 @ id @ X494 ) @ id ) )
                              | ( ( X488 @ id @ X494 @ id )
                               != $true ) )
                        | ( ( X488 @ id @ ( lam @ ( X490 @ sh @ one ) ) @ id )
                          = $true ) )
                  | ~ ! [X495: term] :
                        ( ( X487 @ X495 )
                        = ( X488 @ id @ X495 @ id ) ) )
             => ! [X496: subst > term > subst > $o,X497: term] :
                  ( ~ ! [X498: subst,X499: term,X500: subst,X501: subst] :
                        ( ( $true
                          = ( X496 @ ( comp @ X500 @ X501 ) @ ( sub @ X499 @ X501 ) @ X498 ) )
                        | ( $true
                         != ( X496 @ X500 @ X499 @ ( comp @ X501 @ X498 ) ) ) )
                  | ~ ! [X502: subst > term > term] :
                        ( ~ ! [X503: subst,X504: subst,X505: term] :
                              ( ( X502 @ ( comp @ X503 @ X504 ) @ ( sub @ X505 @ X504 ) )
                              = ( sub @ ( X502 @ X503 @ X505 ) @ X504 ) )
                        | ( $true
                          = ( X496 @ id @ ( lam @ ( X502 @ sh @ one ) ) @ id ) )
                        | ~ ! [X506: term] :
                              ( ( $true
                                = ( X496 @ id @ ( X502 @ id @ X506 ) @ id ) )
                              | ( ( X496 @ id @ X506 @ id )
                               != $true ) ) )
                  | ~ ! [X507: subst,X508: term,X509: subst,X510: subst] :
                        ( ( $true
                         != ( X496 @ ( comp @ X510 @ X507 ) @ ( sub @ X508 @ X507 ) @ X509 ) )
                        | ( $true
                          = ( X496 @ X510 @ X508 @ ( comp @ X507 @ X509 ) ) ) )
                  | ~ ! [X511: term,X512: term] :
                        ( ( $true
                         != ( X496 @ id @ X512 @ id ) )
                        | ( $true
                         != ( X496 @ id @ X511 @ id ) )
                        | ( $true
                          = ( X496 @ id @ ( ap @ ( sub @ X512 @ id ) @ X511 ) @ id ) ) )
                  | ~ ! [X513: term] :
                        ( ( ( var @ ( sub @ X513 @ id ) )
                         != $true )
                        | ( $true
                          = ( X496 @ id @ X513 @ id ) ) )
                  | ( ( X496 @ id @ X497 @ id )
                    = $true ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( ! [X514: term] :
            ( ( sub @ X514 @ id )
            = X514 )
       => ( ! [X515: term,X516: term,X517: term,X518: term] :
              ( ( X515 = X516 )
              | ( ( ap @ X515 @ X517 )
               != ( ap @ X516 @ X518 ) ) )
         => ! [X519: term,X520: term,X521: term,X522: term] :
              ( ( X520 = X522 )
              | ( ( ap @ ( sub @ X522 @ id ) @ X521 )
               != ( ap @ ( sub @ X520 @ id ) @ X519 ) ) ) ) ) )
    & ! [X523: d_term] : ( d_one = X523 )
    & ( pushprop_lem2v2 = $true )
    & ( axmap = $true )
    & ( ( ! [X524: term] :
            ( ( sub @ X524 @ id )
            = X524 )
       => ( ! [X525: term,X526: subst > term > subst > $o] :
              ( ~ ! [X527: subst > term > term] :
                    ( ~ ! [X528: term] :
                          ( ( $true
                           != ( X526 @ id @ X528 @ id ) )
                          | ( ( X526 @ id @ ( X527 @ id @ X528 ) @ id )
                            = $true ) )
                    | ( $true
                      = ( X526 @ id @ ( lam @ ( X527 @ sh @ one ) ) @ id ) )
                    | ~ ! [X529: subst,X530: term,X531: subst] :
                          ( ( X527 @ ( comp @ X531 @ X529 ) @ ( sub @ X530 @ X529 ) )
                          = ( sub @ ( X527 @ X531 @ X530 ) @ X529 ) ) )
              | ( $true
                = ( X526 @ id @ ( lam @ ( sub @ X525 @ ( push @ one @ sh ) ) ) @ id ) )
              | ~ ! [X532: term] :
                    ( ( $true
                     != ( X526 @ id @ X532 @ id ) )
                    | ( $true
                      = ( X526 @ id @ ( sub @ X525 @ ( push @ X532 @ id ) ) @ id ) ) ) )
         => ! [X533: term,X534: subst > term > subst > $o] :
              ( ~ ! [X535: term,X536: subst,X537: subst,X538: subst] :
                    ( ( $true
                     != ( X534 @ ( comp @ X537 @ X536 ) @ ( sub @ X535 @ X536 ) @ X538 ) )
                    | ( $true
                      = ( X534 @ X537 @ X535 @ ( comp @ X536 @ X538 ) ) ) )
              | ( ( X534 @ id @ ( lam @ X533 ) @ id )
                = $true )
              | ~ ! [X539: term,X540: subst,X541: subst,X542: subst] :
                    ( ( ( X534 @ X542 @ X539 @ ( comp @ X540 @ X541 ) )
                     != $true )
                    | ( ( X534 @ ( comp @ X542 @ X540 ) @ ( sub @ X539 @ X540 ) @ X541 )
                      = $true ) )
              | ~ ! [X543: subst > term > term] :
                    ( ~ ! [X544: term] :
                          ( ( $true
                            = ( X534 @ id @ ( X543 @ id @ X544 ) @ id ) )
                          | ( $true
                           != ( X534 @ id @ X544 @ id ) ) )
                    | ( $true
                      = ( X534 @ id @ ( lam @ ( X543 @ sh @ one ) ) @ id ) )
                    | ~ ! [X545: subst,X546: term,X547: subst] :
                          ( ( sub @ ( X543 @ X547 @ X546 ) @ X545 )
                          = ( X543 @ ( comp @ X547 @ X545 ) @ ( sub @ X546 @ X545 ) ) ) )
              | ~ ! [X548: term] :
                    ( ( $true
                     != ( X534 @ id @ X548 @ id ) )
                    | ( $true
                      = ( X534 @ id @ ( sub @ X533 @ ( push @ X548 @ id ) ) @ id ) ) ) ) ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ( axidl = $true )
    <=> ! [X549: subst] :
          ( ( comp @ id @ X549 )
          = X549 ) ) ),
    inference(fool_elimination,[status(thm)],[f7]) ).

thf(f7,plain,
    ( ( ! [X0: term,X1: term > $o,X2: subst] :
          ~ ! [X3: term > $o] :
              ~ ! [X4: term] :
                  ( ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) )
                  = ( X3 @ X4 ) )
    <=> pushprop_lem0_lthm )
    & hoasinduction_lem2v2_gthm
    & pushprop_lem3v2
    & ( ! [X5: term > $o,X6: term] :
          ( ~ ! [X7: term] :
                ( ( X5 @ ( lam @ X7 ) )
                | ~ ( X5 @ X7 ) )
          | ~ ! [X8: term,X9: term] :
                ( ~ ( X5 @ X8 )
                | ( X5 @ ( ap @ X9 @ X8 ) )
                | ~ ( X5 @ X9 ) )
          | ~ ! [X10: term] :
                ( ( X5 @ X10 )
                | ~ ( var @ X10 ) )
          | ( X5 @ X6 ) )
    <=> induction )
    & ( ! [X11: term,X12: term,X13: term,X14: term] :
          ( ( ( ap @ ( sub @ X14 @ id ) @ X12 )
           != ( ap @ ( sub @ X13 @ id ) @ X11 ) )
          | ( X11 = X12 ) )
    <=> hoasapinj2 )
    & ( hoasinduction_lem3aaa
    <=> ! [X15: subst > term > subst > $o,X16: term] :
          ( ~ ! [X17: term,X18: subst > term > term] :
                ( ~ ! [X19: term] :
                      ( ( X15 @ id @ ( X18 @ id @ X19 ) @ id )
                      | ~ ( X15 @ id @ X19 @ id ) )
                | ~ ! [X20: subst,X21: subst,X22: term] :
                      ( ( sub @ ( sub @ X17 @ ( push @ X22 @ X21 ) ) @ X20 )
                      = ( sub @ ( X18 @ X21 @ X22 ) @ X20 ) )
                | ~ ! [X23: subst,X24: subst,X25: term] :
                      ( ( X18 @ ( comp @ X23 @ X24 ) @ ( sub @ X25 @ X24 ) )
                      = ( sub @ X17 @ ( push @ ( sub @ X25 @ X24 ) @ ( comp @ X23 @ X24 ) ) ) )
                | ( X15 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
          | ( X15 @ id @ ( lam @ ( sub @ X16 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X26: term] :
                ( ( X15 @ id @ ( sub @ X16 @ ( push @ X26 @ id ) ) @ id )
                | ~ ( X15 @ id @ X26 @ id ) ) ) )
    & hoasapinj2_gthm
    & ( pushprop_lem1v2
    <=> ! [X27: term > $o,X28: term,X29: term > $o,X30: subst] :
          ( ~ ! [X31: term] :
                ( ( X29 @ X31 )
                = ( X27 @ ( sub @ X31 @ ( push @ X28 @ X30 ) ) ) )
          | ~ ( X27 @ X28 )
          | ( X29 @ one ) ) )
    & ( ( ! [X32: term,X33: subst] :
            ( ( sub @ one @ ( push @ X32 @ X33 ) )
            = X32 )
       => ( ! [X34: subst,X35: term] :
              ( ( comp @ sh @ ( push @ X35 @ X34 ) )
              = X34 )
         => ! [X36: term,X37: term > $o,X38: term,X39: term > $o,X40: subst] :
              ( ( X39 @ ( sub @ X36 @ ( push @ X38 @ X40 ) ) )
              | ~ ( X37 @ X36 ) ) ) )
    <=> pushprop_lem1_lthm )
    & ( ! [X41: subst > term > subst > $o,X42: term,X43: term > $o,X44: term] :
          ( ~ ( X43 @ X44 )
          | ~ ! [X45: term,X46: term] :
                ( ~ ( X41 @ id @ X46 @ id )
                | ~ ( X41 @ id @ X45 @ id )
                | ( X41 @ id @ ( ap @ ( sub @ X46 @ id ) @ X45 ) @ id ) )
          | ~ ! [X47: term] :
                ( ( X43 @ X47 )
                = ( X41 @ id @ X47 @ id ) )
          | ~ ! [X48: term,X49: subst,X50: subst,X51: subst] :
                ( ( X41 @ ( comp @ X50 @ X49 ) @ ( sub @ X48 @ X49 ) @ X51 )
                | ~ ( X41 @ X50 @ X48 @ ( comp @ X49 @ X51 ) ) )
          | ~ ( X43 @ X42 )
          | ~ ! [X52: subst,X53: subst,X54: term,X55: subst] :
                ( ( X41 @ X53 @ X54 @ ( comp @ X52 @ X55 ) )
                | ~ ( X41 @ ( comp @ X53 @ X52 ) @ ( sub @ X54 @ X52 ) @ X55 ) )
          | ( X43 @ ( ap @ X42 @ X44 ) ) )
    <=> hoasinduction_lem2v2 )
    & ! [X56: d_subst,X57: d_subst] :
        ( ( ( d2subst @ X56 )
          = ( d2subst @ X57 ) )
       => ( X56 = X57 ) )
    & ~ ( var @ ( d2term @ d_one ) )
    & pushprop_lem1v2_gthm
    & ! [X58: term] :
      ? [X59: d_term] :
        ( ( d2term @ X59 )
        = X58 )
    & induction2lem_gthm
    & ~ lamnotap
    & ( substmonoid_lthm
    <=> ( ! [X60: subst] :
            ( ( comp @ id @ X60 )
            = X60 )
       => ( ! [X61: subst] :
              ( ( comp @ X61 @ id )
              = X61 )
         => ( ! [X62: subst] :
                ( ( comp @ X62 @ id )
                = X62 )
            & ! [X63: subst] :
                ( ( comp @ id @ X63 )
                = X63 ) ) ) ) )
    & ulamvarind
    & ( induction2_lthm
    <=> ( ! [X64: term] :
            ( ( sub @ X64 @ id )
            = X64 )
       => ( ! [X65: subst,X66: term > $o,X67: term] :
              ( ~ ! [X68: term,X69: term] :
                    ( ( X66 @ ( ap @ X68 @ X69 ) )
                    | ~ ( X66 @ X68 )
                    | ~ ( X66 @ X69 ) )
              | ~ ! [X70: term] :
                    ( ~ ! [X71: term] :
                          ( ~ ( X66 @ X71 )
                          | ( X66 @ ( sub @ X70 @ ( push @ X71 @ id ) ) ) )
                    | ( X66 @ ( lam @ X70 ) ) )
              | ( X66 @ ( sub @ X67 @ X65 ) )
              | ~ ! [X72: term] :
                    ( ( X66 @ ( sub @ X72 @ X65 ) )
                    | ~ ( var @ X72 ) ) )
         => ! [X73: term,X74: term > $o] :
              ( ~ ! [X75: term] :
                    ( ( X74 @ ( lam @ X75 ) )
                    | ~ ! [X76: term] :
                          ( ( X74 @ ( sub @ X75 @ ( push @ X76 @ id ) ) )
                          | ~ ( X74 @ X76 ) ) )
              | ~ ! [X77: term] :
                    ( ( X74 @ X77 )
                    | ~ ( var @ X77 ) )
              | ~ ! [X78: term,X79: term] :
                    ( ~ ( X74 @ X78 )
                    | ~ ( X74 @ X79 )
                    | ( X74 @ ( ap @ X79 @ X78 ) ) )
              | ( X74 @ X73 ) ) ) ) )
    & ( ! [X80: term] :
          ( ( sub @ X80 @ id )
          = X80 )
    <=> axvarid )
    & axabs
    & ( hoasinduction_lem3v2a
    <=> ! [X81: term,X82: subst > term > subst > $o,X83: term > $o] :
          ( ~ ! [X84: term] :
                ( ( X83 @ ( sub @ X81 @ ( push @ X84 @ id ) ) )
                | ~ ( X83 @ X84 ) )
          | ~ ! [X85: term] :
                ( ( X83 @ X85 )
                = ( X82 @ id @ X85 @ id ) )
          | ~ ! [X86: subst > term > term] :
                ( ( X82 @ id @ ( lam @ ( X86 @ sh @ one ) ) @ id )
                | ~ ! [X87: term,X88: subst,X89: subst] :
                      ( ( X86 @ ( comp @ X88 @ X89 ) @ ( sub @ X87 @ X89 ) )
                      = ( sub @ ( X86 @ X88 @ X87 ) @ X89 ) )
                | ~ ! [X90: term] :
                      ( ~ ( X82 @ id @ X90 @ id )
                      | ( X82 @ id @ ( X86 @ id @ X90 ) @ id ) ) )
          | ( X83 @ ( lam @ X81 ) ) ) )
    & hoasinduction_lem2_lthm
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & hoasinduction_lem1_lthm
    & ( ! [X91: subst > term > term,X92: subst > term > term,X93: subst,X94: term] :
          ( ( ( lam @ ( X92 @ sh @ one ) )
           != ( lam @ ( X91 @ sh @ one ) ) )
          | ~ ! [X95: subst,X96: subst,X97: term] :
                ( ( sub @ ( X92 @ X96 @ X97 ) @ X95 )
                = ( X92 @ ( comp @ X96 @ X95 ) @ ( sub @ X97 @ X95 ) ) )
          | ( ( X91 @ X93 @ X94 )
            = ( X92 @ X93 @ X94 ) )
          | ~ ! [X98: term,X99: subst,X100: subst] :
                ( ( X91 @ ( comp @ X99 @ X100 ) @ ( sub @ X98 @ X100 ) )
                = ( sub @ ( X91 @ X99 @ X98 ) @ X100 ) ) )
    <=> hoaslaminj )
    & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
    & hoaslamnotap_lthm
    & pushprop_lem0_gthm
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X101: term,X102: term,X103: term,X104: term] :
          ( ( X101 = X104 )
          | ( ( ap @ X104 @ X103 )
           != ( ap @ X101 @ X102 ) ) )
    <=> apinj1 )
    & hoasinduction_lem2_gthm
    & lamnotvar
    & termmset_gthm
    & hoasinduction_lem3v2_gthm
    & ! [X105: d_subst] : ( d_id = X105 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( ! [X106: subst,X107: term] :
            ( ( sub @ one @ ( push @ X107 @ X106 ) )
            = X107 )
       => ! [X108: term,X109: term > $o,X110: term > $o,X111: subst] :
            ( ~ ( X109 @ X108 )
            | ( X110 @ one )
            | ~ ! [X112: term] :
                  ( ( X109 @ ( sub @ X112 @ ( push @ X108 @ X111 ) ) )
                  = ( X110 @ X112 ) ) ) )
    <=> pushprop_lem1v2_lthm )
    & ( hoasinduction_lem3aa_lthm
    <=> ! [X113: subst > term > subst > $o,X114: term] :
          ( ~ ! [X115: subst > term > term] :
                ( ~ ! [X116: term] :
                      ( ~ ( X113 @ id @ X116 @ id )
                      | ( X113 @ id @ ( X115 @ id @ X116 ) @ id ) )
                | ~ ! [X117: subst,X118: subst,X119: term] :
                      ( ( X115 @ ( comp @ X118 @ X117 ) @ ( sub @ X119 @ X117 ) )
                      = ( sub @ ( X115 @ X118 @ X119 ) @ X117 ) )
                | ( X113 @ id @ ( lam @ ( X115 @ sh @ one ) ) @ id ) )
          | ( X113 @ id @ ( lam @ ( sub @ X114 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X120: term] :
                ( ~ ( X113 @ id @ X120 @ id )
                | ( X113 @ id @ ( sub @ X114 @ ( push @ X120 @ id ) ) @ id ) ) ) )
    & hoaslamnotvar_gthm
    & ( hoasinduction_lem0
    <=> ! [X121: subst > term > subst > $o] :
          ~ ! [X122: term > $o] :
              ~ ! [X123: term] :
                  ( ( X121 @ id @ X123 @ id )
                  = ( X122 @ X123 ) ) )
    & hoasinduction_lem1v2
    & ( ( ! [X124: term] :
            ( ( sub @ X124 @ id )
            = X124 )
       => ( ! [X125: term,X126: subst > term > subst > $o] :
              ( ~ ! [X127: term] :
                    ( ( X126 @ id @ ( sub @ X125 @ ( push @ X127 @ id ) ) @ id )
                    | ~ ( X126 @ id @ X127 @ id ) )
              | ( X126 @ id @ ( lam @ ( sub @ X125 @ ( push @ one @ sh ) ) ) @ id )
              | ~ ! [X128: subst > term > term] :
                    ( ( X126 @ id @ ( lam @ ( X128 @ sh @ one ) ) @ id )
                    | ~ ! [X129: subst,X130: subst,X131: term] :
                          ( ( X128 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
                          = ( sub @ ( X128 @ X129 @ X131 ) @ X130 ) )
                    | ~ ! [X132: term] :
                          ( ( X126 @ id @ ( X128 @ id @ X132 ) @ id )
                          | ~ ( X126 @ id @ X132 @ id ) ) ) )
         => ! [X133: subst > term > subst > $o,X134: term] :
              ( ~ ! [X135: subst > term > term] :
                    ( ~ ! [X136: term] :
                          ( ~ ( X133 @ id @ X136 @ id )
                          | ( X133 @ id @ ( X135 @ id @ X136 ) @ id ) )
                    | ~ ! [X137: subst,X138: subst,X139: term] :
                          ( ( sub @ ( X135 @ X138 @ X139 ) @ X137 )
                          = ( X135 @ ( comp @ X138 @ X137 ) @ ( sub @ X139 @ X137 ) ) )
                    | ( X133 @ id @ ( lam @ ( X135 @ sh @ one ) ) @ id ) )
              | ~ ! [X140: term] :
                    ( ~ ( X133 @ id @ X140 @ id )
                    | ( X133 @ id @ ( sub @ X134 @ ( push @ X140 @ id ) ) @ id ) )
              | ( X133 @ id @ ( lam @ X134 ) @ id ) ) ) )
    <=> hoasinduction_lem3a_lthm )
    & hoasapinj1_gthm
    & hoaslamnotvar_lthm
    & hoasapnotvar_lthm
    & ( hoasinduction_lem3b
    <=> ! [X141: term] :
          ~ ! [X142: subst > term > term] :
              ( ( X142 @ sh @ one )
             != ( sub @ X141 @ ( push @ one @ sh ) ) ) )
    & hoaslaminj_gthm
    & pushprop_lthm
    & pushprop_lem3v2_lthm
    & axvarshift
    & hoaslamnotap_gthm
    & ( ! [X143: term > $o,X144: subst,X145: term > $o,X146: term,X147: term] :
          ( ( X143 @ ( sub @ X146 @ ( push @ X147 @ X144 ) ) )
          | ~ ( X145 @ X146 ) )
    <=> pushprop_lem1 )
    & ( ( ! [X148: term] :
            ( ( sub @ X148 @ id )
            = X148 )
       => ! [X149: subst > term > subst > $o,X150: term,X151: term > $o] :
            ( ~ ! [X152: term] :
                  ( ~ ( X151 @ X152 )
                  | ( X151 @ ( sub @ X150 @ ( push @ X152 @ id ) ) ) )
            | ~ ! [X153: subst,X154: term,X155: subst,X156: subst] :
                  ( ( X149 @ X156 @ X154 @ ( comp @ X153 @ X155 ) )
                  | ~ ( X149 @ ( comp @ X156 @ X153 ) @ ( sub @ X154 @ X153 ) @ X155 ) )
            | ( X151 @ ( lam @ X150 ) )
            | ~ ! [X157: subst,X158: subst,X159: term,X160: subst] :
                  ( ( X149 @ ( comp @ X157 @ X160 ) @ ( sub @ X159 @ X160 ) @ X158 )
                  | ~ ( X149 @ X157 @ X159 @ ( comp @ X160 @ X158 ) ) )
            | ~ ! [X161: subst > term > term] :
                  ( ~ ! [X162: subst,X163: subst,X164: term] :
                        ( ( X161 @ ( comp @ X163 @ X162 ) @ ( sub @ X164 @ X162 ) )
                        = ( sub @ ( X161 @ X163 @ X164 ) @ X162 ) )
                  | ~ ! [X165: term] :
                        ( ~ ( X149 @ id @ X165 @ id )
                        | ( X149 @ id @ ( X161 @ id @ X165 ) @ id ) )
                  | ( X149 @ id @ ( lam @ ( X161 @ sh @ one ) ) @ id ) )
            | ~ ! [X166: term] :
                  ( ( X149 @ id @ X166 @ id )
                  = ( X151 @ X166 ) ) ) )
    <=> hoasinduction_lem3v2_lthm )
    & ( ( ! [X167: subst,X168: term] :
            ( ( sub @ one @ ( push @ X168 @ X167 ) )
            = X168 )
       => ( ! [X169: subst,X170: term] :
              ( ( comp @ sh @ ( push @ X170 @ X169 ) )
              = X169 )
         => ( ! [X171: subst] :
                ( ( comp @ X171 @ id )
                = X171 )
           => ( ! [X172: term,X173: term > $o] :
                  ( ~ ! [X174: term] :
                        ( ( X173 @ ( lam @ X174 ) )
                        | ~ ( X173 @ X174 ) )
                  | ( X173 @ X172 )
                  | ~ ! [X175: term] :
                        ( ( X173 @ X175 )
                        | ~ ( var @ X175 ) )
                  | ~ ! [X176: term,X177: term] :
                        ( ~ ( X173 @ X176 )
                        | ~ ( X173 @ X177 )
                        | ( X173 @ ( ap @ X177 @ X176 ) ) ) )
             => ! [X178: subst,X179: term > $o,X180: term] :
                  ( ~ ! [X181: term] :
                        ( ~ ( var @ X181 )
                        | ( X179 @ ( sub @ X181 @ X178 ) ) )
                  | ~ ! [X182: term,X183: term] :
                        ( ~ ( X179 @ X182 )
                        | ( X179 @ ( ap @ X183 @ X182 ) )
                        | ~ ( X179 @ X183 ) )
                  | ( X179 @ ( sub @ X180 @ X178 ) )
                  | ~ ! [X184: term] :
                        ( ( X179 @ ( lam @ X184 ) )
                        | ~ ! [X185: term] :
                              ( ( X179 @ ( sub @ X184 @ ( push @ X185 @ id ) ) )
                              | ~ ( X179 @ X185 ) ) ) ) ) ) ) )
    <=> induction2lem_lthm )
    & ( hoasinduction_lem0_lthm
    <=> ! [X186: subst > term > subst > $o] :
          ~ ! [X187: term > $o] :
              ~ ! [X188: term] :
                  ( ( X186 @ id @ X188 @ id )
                  = ( X187 @ X188 ) ) )
    & ( ! [X189: subst > term > subst > $o,X190: term] :
          ( ~ ! [X191: term,X192: term] :
                ( ~ ( X189 @ id @ X192 @ id )
                | ( X189 @ id @ ( ap @ ( sub @ X192 @ id ) @ X191 ) @ id )
                | ~ ( X189 @ id @ X191 @ id ) )
          | ~ ! [X193: subst > term > term] :
                ( ~ ! [X194: subst,X195: subst,X196: term] :
                      ( ( X193 @ ( comp @ X195 @ X194 ) @ ( sub @ X196 @ X194 ) )
                      = ( sub @ ( X193 @ X195 @ X196 ) @ X194 ) )
                | ( X189 @ id @ ( lam @ ( X193 @ sh @ one ) ) @ id )
                | ~ ! [X197: term] :
                      ( ( X189 @ id @ ( X193 @ id @ X197 ) @ id )
                      | ~ ( X189 @ id @ X197 @ id ) ) )
          | ~ ! [X198: term] :
                ( ( X189 @ id @ X198 @ id )
                | ~ ( var @ ( sub @ X198 @ id ) ) )
          | ( X189 @ id @ X190 @ id )
          | ~ ! [X199: subst,X200: subst,X201: subst,X202: term] :
                ( ( X189 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) @ X199 )
                | ~ ( X189 @ X201 @ X202 @ ( comp @ X200 @ X199 ) ) )
          | ~ ! [X203: subst,X204: subst,X205: term,X206: subst] :
                ( ~ ( X189 @ ( comp @ X204 @ X203 ) @ ( sub @ X205 @ X203 ) @ X206 )
                | ( X189 @ X204 @ X205 @ ( comp @ X203 @ X206 ) ) ) )
    <=> hoasinduction )
    & ( hoaslam
      = ( ^ [X207: subst,X208: subst > term > term] : ( d2term @ d_one ) ) )
    & pushprop_lem2v2_lthm
    & ! [X209: d_term,X210: d_term] :
        ( ( ( d2term @ X210 )
          = ( d2term @ X209 ) )
       => ( X209 = X210 ) )
    & ( substmonoid
    <=> ( ! [X211: subst] :
            ( ( comp @ X211 @ id )
            = X211 )
        & ! [X212: subst] :
            ( ( comp @ id @ X212 )
            = X212 ) ) )
    & ulamvarsh
    & induction2_gthm
    & axassoc
    & ( ! [X213: term,X214: term,X215: subst > term > term] :
          ( ( ( lam @ ( X215 @ sh @ one ) )
           != ( ap @ ( sub @ X214 @ id ) @ X213 ) )
          | ~ ! [X216: subst,X217: subst,X218: term] :
                ( ( X215 @ ( comp @ X216 @ X217 ) @ ( sub @ X218 @ X217 ) )
                = ( sub @ ( X215 @ X216 @ X218 ) @ X217 ) ) )
    <=> hoaslamnotap )
    & hoasinduction_lem3a_gthm
    & ( axscons
    <=> ! [X219: subst] :
          ( ( push @ ( sub @ one @ X219 ) @ ( comp @ sh @ X219 ) )
          = X219 ) )
    & ( ( ! [X220: subst,X221: term] :
            ( ( sub @ one @ ( push @ X221 @ X220 ) )
            = X221 )
       => ( ! [X222: subst,X223: term] :
              ( ( comp @ sh @ ( push @ X223 @ X222 ) )
              = X222 )
         => ( ! [X224: term,X225: term] :
                ( ( ( lam @ X224 )
                 != ( lam @ X225 ) )
                | ( X224 = X225 ) )
           => ! [X226: subst > term > term,X227: subst > term > term,X228: term,X229: subst] :
                ( ( ( X227 @ X229 @ X228 )
                  = ( X226 @ X229 @ X228 ) )
                | ~ ! [X230: subst,X231: term,X232: subst] :
                      ( ( X226 @ ( comp @ X230 @ X232 ) @ ( sub @ X231 @ X232 ) )
                      = ( sub @ ( X226 @ X230 @ X231 ) @ X232 ) )
                | ~ ! [X233: subst,X234: subst,X235: term] :
                      ( ( sub @ ( X227 @ X234 @ X235 ) @ X233 )
                      = ( X227 @ ( comp @ X234 @ X233 ) @ ( sub @ X235 @ X233 ) ) )
                | ( ( lam @ ( X226 @ sh @ one ) )
                 != ( lam @ ( X227 @ sh @ one ) ) ) ) ) ) )
    <=> hoaslaminj_lthm )
    & ( hoasinduction_lem2
    <=> ! [X236: term,X237: subst > term > subst > $o,X238: term] :
          ( ( X237 @ id @ ( ap @ X236 @ X238 ) @ id )
          | ~ ! [X239: subst,X240: subst,X241: term,X242: subst] :
                ( ( X237 @ ( comp @ X239 @ X242 ) @ ( sub @ X241 @ X242 ) @ X240 )
                | ~ ( X237 @ X239 @ X241 @ ( comp @ X242 @ X240 ) ) )
          | ~ ( X237 @ id @ X238 @ id )
          | ~ ! [X243: term,X244: term] :
                ( ~ ( X237 @ id @ X243 @ id )
                | ( X237 @ id @ ( ap @ ( sub @ X244 @ id ) @ X243 ) @ id )
                | ~ ( X237 @ id @ X244 @ id ) )
          | ~ ( X237 @ id @ X236 @ id )
          | ~ ! [X245: term,X246: subst,X247: subst,X248: subst] :
                ( ~ ( X237 @ ( comp @ X246 @ X248 ) @ ( sub @ X245 @ X248 ) @ X247 )
                | ( X237 @ X246 @ X245 @ ( comp @ X248 @ X247 ) ) ) ) )
    & ~ ulamvar1
    & axapp
    & ( ! [X249: term,X250: subst > term > subst > $o] :
          ( ~ ! [X251: subst > term > term] :
                ( ( X250 @ id @ ( lam @ ( X251 @ sh @ one ) ) @ id )
                | ~ ! [X252: term] :
                      ( ~ ( X250 @ id @ X252 @ id )
                      | ( X250 @ id @ ( X251 @ id @ X252 ) @ id ) )
                | ~ ! [X253: subst,X254: term,X255: subst] :
                      ( ( sub @ ( X251 @ X255 @ X254 ) @ X253 )
                      = ( X251 @ ( comp @ X255 @ X253 ) @ ( sub @ X254 @ X253 ) ) ) )
          | ~ ! [X256: term,X257: term] :
                ( ~ ( X250 @ id @ X256 @ id )
                | ~ ( X250 @ id @ X257 @ id )
                | ( X250 @ id @ ( ap @ ( sub @ X257 @ id ) @ X256 ) @ id ) )
          | ( X250 @ id @ X249 @ id ) )
    <=> hoasinduction_no_psi_cond )
    & hoasinduction_gthm
    & hoasinduction_lem3b_gthm
    & ( ! [X258: term,X259: term,X260: term,X261: term] :
          ( ( ( ap @ X261 @ X259 )
           != ( ap @ X260 @ X258 ) )
          | ( X258 = X259 ) )
    <=> apinj2 )
    & hoaslamnotvar
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( induction2lem
    <=> ! [X262: subst,X263: term,X264: term > $o] :
          ( ~ ! [X265: term,X266: term] :
                ( ( X264 @ ( ap @ X265 @ X266 ) )
                | ~ ( X264 @ X266 )
                | ~ ( X264 @ X265 ) )
          | ~ ! [X267: term] :
                ( ~ ( var @ X267 )
                | ( X264 @ ( sub @ X267 @ X262 ) ) )
          | ( X264 @ ( sub @ X263 @ X262 ) )
          | ~ ! [X268: term] :
                ( ( X264 @ ( lam @ X268 ) )
                | ~ ! [X269: term] :
                      ( ~ ( X264 @ X269 )
                      | ( X264 @ ( sub @ X268 @ ( push @ X269 @ id ) ) ) ) ) ) )
    & ( hoasinduction_lem3v2a_lthm
    <=> ( ! [X270: term] :
            ~ ! [X271: subst > term > term] :
                ~ ! [X272: subst,X273: term] :
                    ( ( X271 @ X272 @ X273 )
                    = ( sub @ X270 @ ( push @ X273 @ X272 ) ) )
       => ( ! [X274: term] :
              ( ( sub @ X274 @ id )
              = X274 )
         => ! [X275: term,X276: term > $o,X277: subst > term > subst > $o] :
              ( ~ ! [X278: term] :
                    ( ( X277 @ id @ X278 @ id )
                    = ( X276 @ X278 ) )
              | ( X276 @ ( lam @ X275 ) )
              | ~ ! [X279: term] :
                    ( ~ ( X276 @ X279 )
                    | ( X276 @ ( sub @ X275 @ ( push @ X279 @ id ) ) ) )
              | ~ ! [X280: subst > term > term] :
                    ( ( X277 @ id @ ( lam @ ( X280 @ sh @ one ) ) @ id )
                    | ~ ! [X281: subst,X282: subst,X283: term] :
                          ( ( sub @ ( X280 @ X282 @ X283 ) @ X281 )
                          = ( X280 @ ( comp @ X282 @ X281 ) @ ( sub @ X283 @ X281 ) ) )
                    | ~ ! [X284: term] :
                          ( ~ ( X277 @ id @ X284 @ id )
                          | ( X277 @ id @ ( X280 @ id @ X284 ) @ id ) ) ) ) ) ) )
    & ( ! [X285: term] :
          ~ ! [X286: subst > term > term] :
              ( ( X286 @ sh @ one )
             != ( sub @ X285 @ ( push @ one @ sh ) ) )
    <=> hoasinduction_lem3b_lthm )
    & hoasinduction_lem1
    & ( axshiftcons
    <=> ! [X287: term,X288: subst] :
          ( ( comp @ sh @ ( push @ X287 @ X288 ) )
          = X288 ) )
    & ( hoasapinj1
    <=> ! [X289: term,X290: term,X291: term,X292: term] :
          ( ( ( ap @ ( sub @ X291 @ id ) @ X290 )
           != ( ap @ ( sub @ X289 @ id ) @ X292 ) )
          | ( X289 = X291 ) ) )
    & hoasapnotvar
    & ( axvarcons
    <=> ! [X293: term,X294: subst] :
          ( ( sub @ one @ ( push @ X293 @ X294 ) )
          = X293 ) )
    & ( ( d2subst @ d_id )
      = id )
    & pushprop
    & ( ( ! [X295: term] :
            ( ( sub @ X295 @ id )
            = X295 )
       => ! [X296: term] :
            ( ( sub @ X296 @ id )
            = X296 ) )
    <=> termmset_lthm )
    & hoasinduction_lem1v2_gthm
    & ( hoasapinj2_lthm
    <=> ( ! [X297: term,X298: term,X299: term,X300: term] :
            ( ( X297 = X300 )
            | ( ( ap @ X298 @ X297 )
             != ( ap @ X299 @ X300 ) ) )
       => ! [X301: term,X302: term,X303: term,X304: term] :
            ( ( X302 = X304 )
            | ( ( ap @ ( sub @ X303 @ id ) @ X304 )
             != ( ap @ ( sub @ X301 @ id ) @ X302 ) ) ) ) )
    & ( ! [X305: term] :
          ~ ! [X306: subst > term > term] :
              ~ ! [X307: subst,X308: term] :
                  ( ( X306 @ X307 @ X308 )
                  = ( sub @ X305 @ ( push @ X308 @ X307 ) ) )
    <=> hoasinduction_lem3v2_f_lthm )
    & ( laminj
    <=> ! [X309: term,X310: term] :
          ( ( ( lam @ X309 )
           != ( lam @ X310 ) )
          | ( X309 = X310 ) ) )
    & ( hoasinduction_lem3
    <=> ! [X311: subst > term > subst > $o,X312: term] :
          ( ~ ! [X313: term] :
                ( ~ ( X311 @ id @ X313 @ id )
                | ( X311 @ id @ ( sub @ X312 @ ( push @ X313 @ id ) ) @ id ) )
          | ~ ! [X314: term,X315: subst,X316: subst,X317: subst] :
                ( ~ ( X311 @ X317 @ X314 @ ( comp @ X315 @ X316 ) )
                | ( X311 @ ( comp @ X317 @ X315 ) @ ( sub @ X314 @ X315 ) @ X316 ) )
          | ~ ! [X318: subst > term > term] :
                ( ~ ! [X319: term] :
                      ( ( X311 @ id @ ( X318 @ id @ X319 ) @ id )
                      | ~ ( X311 @ id @ X319 @ id ) )
                | ( X311 @ id @ ( lam @ ( X318 @ sh @ one ) ) @ id )
                | ~ ! [X320: term,X321: subst,X322: subst] :
                      ( ( sub @ ( X318 @ X322 @ X320 ) @ X321 )
                      = ( X318 @ ( comp @ X322 @ X321 ) @ ( sub @ X320 @ X321 ) ) ) )
          | ( X311 @ id @ ( lam @ X312 ) @ id )
          | ~ ! [X323: subst,X324: term,X325: subst,X326: subst] :
                ( ( X311 @ X326 @ X324 @ ( comp @ X323 @ X325 ) )
                | ~ ( X311 @ ( comp @ X326 @ X323 ) @ ( sub @ X324 @ X323 ) @ X325 ) ) ) )
    & ( hoasinduction_no_psi_cond_lthm
    <=> ( ! [X327: subst > term > subst > $o] :
            ~ ! [X328: term > $o] :
                ~ ! [X329: term] :
                    ( ( X327 @ id @ X329 @ id )
                    = ( X328 @ X329 ) )
       => ( ! [X330: term > $o,X331: term] :
              ( ~ ! [X332: term] :
                    ( ~ ( var @ X332 )
                    | ( X330 @ X332 ) )
              | ~ ! [X333: term] :
                    ( ( X330 @ ( lam @ X333 ) )
                    | ~ ! [X334: term] :
                          ( ( X330 @ ( sub @ X333 @ ( push @ X334 @ id ) ) )
                          | ~ ( X330 @ X334 ) ) )
              | ( X330 @ X331 )
              | ~ ! [X335: term,X336: term] :
                    ( ~ ( X330 @ X336 )
                    | ~ ( X330 @ X335 )
                    | ( X330 @ ( ap @ X335 @ X336 ) ) ) )
         => ( ! [X337: term] :
                ( ( sub @ X337 @ id )
                = X337 )
           => ( ! [X338: subst > term > subst > $o,X339: term > $o,X340: term] :
                  ( ( X339 @ ( lam @ X340 ) )
                  | ~ ! [X341: subst > term > term] :
                        ( ~ ! [X342: term] :
                              ( ( X338 @ id @ ( X341 @ id @ X342 ) @ id )
                              | ~ ( X338 @ id @ X342 @ id ) )
                        | ~ ! [X343: subst,X344: subst,X345: term] :
                              ( ( sub @ ( X341 @ X343 @ X345 ) @ X344 )
                              = ( X341 @ ( comp @ X343 @ X344 ) @ ( sub @ X345 @ X344 ) ) )
                        | ( X338 @ id @ ( lam @ ( X341 @ sh @ one ) ) @ id ) )
                  | ~ ! [X346: term] :
                        ( ( X339 @ ( sub @ X340 @ ( push @ X346 @ id ) ) )
                        | ~ ( X339 @ X346 ) )
                  | ~ ! [X347: term] :
                        ( ( X339 @ X347 )
                        = ( X338 @ id @ X347 @ id ) ) )
             => ! [X348: term,X349: subst > term > subst > $o] :
                  ( ~ ! [X350: term,X351: term] :
                        ( ( X349 @ id @ ( ap @ ( sub @ X350 @ id ) @ X351 ) @ id )
                        | ~ ( X349 @ id @ X351 @ id )
                        | ~ ( X349 @ id @ X350 @ id ) )
                  | ~ ! [X352: subst > term > term] :
                        ( ~ ! [X353: term,X354: subst,X355: subst] :
                              ( ( sub @ ( X352 @ X355 @ X353 ) @ X354 )
                              = ( X352 @ ( comp @ X355 @ X354 ) @ ( sub @ X353 @ X354 ) ) )
                        | ~ ! [X356: term] :
                              ( ~ ( X349 @ id @ X356 @ id )
                              | ( X349 @ id @ ( X352 @ id @ X356 ) @ id ) )
                        | ( X349 @ id @ ( lam @ ( X352 @ sh @ one ) ) @ id ) )
                  | ( X349 @ id @ X348 @ id ) ) ) ) ) ) )
    & apnotvar
    & ( termmset
    <=> ! [X357: term] :
          ( ( sub @ X357 @ id )
          = X357 ) )
    & pushprop_lthm_orig
    & hoasinduction_lem1_gthm
    & ( hoasinduction_lem3v2
    <=> ! [X358: term,X359: term > $o,X360: subst > term > subst > $o] :
          ( ~ ! [X361: term] :
                ( ( X359 @ X361 )
                = ( X360 @ id @ X361 @ id ) )
          | ~ ! [X362: subst > term > term] :
                ( ~ ! [X363: term] :
                      ( ( X360 @ id @ ( X362 @ id @ X363 ) @ id )
                      | ~ ( X360 @ id @ X363 @ id ) )
                | ~ ! [X364: subst,X365: term,X366: subst] :
                      ( ( X362 @ ( comp @ X364 @ X366 ) @ ( sub @ X365 @ X366 ) )
                      = ( sub @ ( X362 @ X364 @ X365 ) @ X366 ) )
                | ( X360 @ id @ ( lam @ ( X362 @ sh @ one ) ) @ id ) )
          | ( X359 @ ( lam @ X358 ) )
          | ~ ! [X367: term] :
                ( ~ ( X359 @ X367 )
                | ( X359 @ ( sub @ X358 @ ( push @ X367 @ id ) ) ) )
          | ~ ! [X368: subst,X369: subst,X370: subst,X371: term] :
                ( ~ ( X360 @ X370 @ X371 @ ( comp @ X368 @ X369 ) )
                | ( X360 @ ( comp @ X370 @ X368 ) @ ( sub @ X371 @ X368 ) @ X369 ) )
          | ~ ! [X372: subst,X373: subst,X374: subst,X375: term] :
                ( ( X360 @ X373 @ X375 @ ( comp @ X372 @ X374 ) )
                | ~ ( X360 @ ( comp @ X373 @ X372 ) @ ( sub @ X375 @ X372 ) @ X374 ) ) ) )
    & ( ! [X376: subst] :
          ( ( comp @ X376 @ id )
          = X376 )
    <=> axidr )
    & ( hoasinduction_lem3aa
    <=> ! [X377: subst > term > subst > $o,X378: term] :
          ( ~ ! [X379: subst > term > term] :
                ( ~ ! [X380: term] :
                      ( ( X377 @ id @ ( X379 @ id @ X380 ) @ id )
                      | ~ ( X377 @ id @ X380 @ id ) )
                | ~ ! [X381: term,X382: subst,X383: subst] :
                      ( ( sub @ ( X379 @ X382 @ X381 ) @ X383 )
                      = ( X379 @ ( comp @ X382 @ X383 ) @ ( sub @ X381 @ X383 ) ) )
                | ( X377 @ id @ ( lam @ ( X379 @ sh @ one ) ) @ id ) )
          | ( X377 @ id @ ( lam @ ( sub @ X378 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X384: term] :
                ( ~ ( X377 @ id @ X384 @ id )
                | ( X377 @ id @ ( sub @ X378 @ ( push @ X384 @ id ) ) @ id ) ) ) )
    & axclos
    & pushprop_lem1_gthm
    & pushprop_gthm
    & ! [X385: subst] :
      ? [X386: d_subst] :
        ( ( d2subst @ X386 )
        = X385 )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & hoasinduction_lem3_gthm
    & ( hoasinduction_lem3v2_f
    <=> ! [X387: term] :
          ~ ! [X388: subst > term > term] :
              ~ ! [X389: subst,X390: term] :
                  ( ( X388 @ X389 @ X390 )
                  = ( sub @ X387 @ ( push @ X390 @ X389 ) ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & pushprop_lem2v2_gthm
    & ( ( ! [X391: term,X392: term > $o] :
            ( ( X392 @ X391 )
            | ~ ! [X393: term] :
                  ( ( X392 @ ( lam @ X393 ) )
                  | ~ ! [X394: term] :
                        ( ~ ( X392 @ X394 )
                        | ( X392 @ ( sub @ X393 @ ( push @ X394 @ id ) ) ) ) )
            | ~ ! [X395: term,X396: term] :
                  ( ~ ( X392 @ X396 )
                  | ( X392 @ ( ap @ X395 @ X396 ) )
                  | ~ ( X392 @ X395 ) )
            | ~ ! [X397: term] :
                  ( ~ ( var @ X397 )
                  | ( X392 @ X397 ) ) )
       => ( ! [X398: term,X399: term,X400: subst > term > subst > $o] :
              ( ~ ( X400 @ id @ X399 @ id )
              | ~ ! [X401: subst,X402: subst,X403: subst,X404: term] :
                    ( ( X400 @ ( comp @ X403 @ X402 ) @ ( sub @ X404 @ X402 ) @ X401 )
                    | ~ ( X400 @ X403 @ X404 @ ( comp @ X402 @ X401 ) ) )
              | ~ ! [X405: term,X406: term] :
                    ( ~ ( X400 @ id @ X406 @ id )
                    | ~ ( X400 @ id @ X405 @ id )
                    | ( X400 @ id @ ( ap @ ( sub @ X406 @ id ) @ X405 ) @ id ) )
              | ( X400 @ id @ ( ap @ X398 @ X399 ) @ id )
              | ~ ( X400 @ id @ X398 @ id )
              | ~ ! [X407: term,X408: subst,X409: subst,X410: subst] :
                    ( ( X400 @ X409 @ X407 @ ( comp @ X410 @ X408 ) )
                    | ~ ( X400 @ ( comp @ X409 @ X410 ) @ ( sub @ X407 @ X410 ) @ X408 ) ) )
         => ( ! [X411: term,X412: subst > term > subst > $o] :
                ( ~ ! [X413: subst > term > term] :
                      ( ~ ! [X414: subst,X415: subst,X416: term] :
                            ( ( X413 @ ( comp @ X414 @ X415 ) @ ( sub @ X416 @ X415 ) )
                            = ( sub @ ( X413 @ X414 @ X416 ) @ X415 ) )
                      | ~ ! [X417: term] :
                            ( ~ ( X412 @ id @ X417 @ id )
                            | ( X412 @ id @ ( X413 @ id @ X417 ) @ id ) )
                      | ( X412 @ id @ ( lam @ ( X413 @ sh @ one ) ) @ id ) )
                | ~ ! [X418: term] :
                      ( ( X412 @ id @ ( sub @ X411 @ ( push @ X418 @ id ) ) @ id )
                      | ~ ( X412 @ id @ X418 @ id ) )
                | ~ ! [X419: subst,X420: subst,X421: subst,X422: term] :
                      ( ( X412 @ ( comp @ X419 @ X420 ) @ ( sub @ X422 @ X420 ) @ X421 )
                      | ~ ( X412 @ X419 @ X422 @ ( comp @ X420 @ X421 ) ) )
                | ( X412 @ id @ ( lam @ X411 ) @ id )
                | ~ ! [X423: subst,X424: subst,X425: subst,X426: term] :
                      ( ( X412 @ X424 @ X426 @ ( comp @ X423 @ X425 ) )
                      | ~ ( X412 @ ( comp @ X424 @ X423 ) @ ( sub @ X426 @ X423 ) @ X425 ) ) )
           => ! [X427: subst > term > subst > $o,X428: term] :
                ( ( X427 @ id @ X428 @ id )
                | ~ ! [X429: subst,X430: subst,X431: subst,X432: term] :
                      ( ( X427 @ X431 @ X432 @ ( comp @ X430 @ X429 ) )
                      | ~ ( X427 @ ( comp @ X431 @ X430 ) @ ( sub @ X432 @ X430 ) @ X429 ) )
                | ~ ! [X433: term] :
                      ( ( X427 @ id @ X433 @ id )
                      | ~ ( var @ ( sub @ X433 @ id ) ) )
                | ~ ! [X434: term,X435: term] :
                      ( ~ ( X427 @ id @ X434 @ id )
                      | ( X427 @ id @ ( ap @ ( sub @ X435 @ id ) @ X434 ) @ id )
                      | ~ ( X427 @ id @ X435 @ id ) )
                | ~ ! [X436: subst > term > term] :
                      ( ( X427 @ id @ ( lam @ ( X436 @ sh @ one ) ) @ id )
                      | ~ ! [X437: subst,X438: term,X439: subst] :
                            ( ( X436 @ ( comp @ X439 @ X437 ) @ ( sub @ X438 @ X437 ) )
                            = ( sub @ ( X436 @ X439 @ X438 ) @ X437 ) )
                      | ~ ! [X440: term] :
                            ( ~ ( X427 @ id @ X440 @ id )
                            | ( X427 @ id @ ( X436 @ id @ X440 ) @ id ) ) )
                | ~ ! [X441: subst,X442: term,X443: subst,X444: subst] :
                      ( ( X427 @ ( comp @ X443 @ X444 ) @ ( sub @ X442 @ X444 ) @ X441 )
                      | ~ ( X427 @ X443 @ X442 @ ( comp @ X444 @ X441 ) ) ) ) ) ) )
    <=> hoasinduction_lthm )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [X445: subst > term > subst > $o,X446: term > $o] :
          ! [X447: term] :
            ( ( X446 @ X447 )
            = ( X445 @ id @ X447 @ id ) ) ) )
    & ( ! [X448: subst,X449: term > $o,X450: term] :
          ~ ! [X451: term > $o] :
              ~ ! [X452: term] :
                  ( ( X451 @ X452 )
                  = ( X449 @ ( sub @ X452 @ ( push @ X450 @ X448 ) ) ) )
    <=> pushprop_lem0 )
    & ( ! [X453: term,X454: term] :
          ( ( ( sub @ X453 @ sh )
           != ( sub @ X454 @ sh ) )
          | ( X453 = X454 ) )
    <=> shinj )
    & ( ( ^ [X455: term,X456: subst,X457: term > $o,X458: term > $o] :
          ! [X459: term] :
            ( ( X458 @ X459 )
            = ( X457 @ ( sub @ X459 @ ( push @ X455 @ X456 ) ) ) ) )
      = pushprop_p_and_p_prime )
    & substmonoid_gthm
    & ( hoasinduction_lem3a
    <=> ! [X460: term,X461: subst > term > subst > $o] :
          ( ( X461 @ id @ ( lam @ X460 ) @ id )
          | ~ ! [X462: term] :
                ( ~ ( X461 @ id @ X462 @ id )
                | ( X461 @ id @ ( sub @ X460 @ ( push @ X462 @ id ) ) @ id ) )
          | ~ ! [X463: subst > term > term] :
                ( ( X461 @ id @ ( lam @ ( X463 @ sh @ one ) ) @ id )
                | ~ ! [X464: term] :
                      ( ~ ( X461 @ id @ X464 @ id )
                      | ( X461 @ id @ ( X463 @ id @ X464 ) @ id ) )
                | ~ ! [X465: subst,X466: subst,X467: term] :
                      ( ( X463 @ ( comp @ X465 @ X466 ) @ ( sub @ X467 @ X466 ) )
                      = ( sub @ ( X463 @ X465 @ X467 ) @ X466 ) ) ) ) )
    & ( ! [X468: term,X469: term > $o] :
          ( ( X469 @ X468 )
          | ~ ! [X470: term] :
                ( ~ ! [X471: term] :
                      ( ~ ( X469 @ X471 )
                      | ( X469 @ ( sub @ X470 @ ( push @ X471 @ id ) ) ) )
                | ( X469 @ ( lam @ X470 ) ) )
          | ~ ! [X472: term,X473: term] :
                ( ~ ( X469 @ X472 )
                | ( X469 @ ( ap @ X473 @ X472 ) )
                | ~ ( X469 @ X473 ) )
          | ~ ! [X474: term] :
                ( ( X469 @ X474 )
                | ~ ( var @ X474 ) ) )
    <=> induction2 )
    & ( hoasinduction_lthm_3
    <=> ( ! [X475: subst > term > subst > $o] :
            ~ ! [X476: term > $o] :
                ~ ! [X477: term] :
                    ( ( X475 @ id @ X477 @ id )
                    = ( X476 @ X477 ) )
       => ( ! [X478: term > $o,X479: term] :
              ( ~ ! [X480: term] :
                    ( ( X478 @ ( lam @ X480 ) )
                    | ~ ! [X481: term] :
                          ( ~ ( X478 @ X481 )
                          | ( X478 @ ( sub @ X480 @ ( push @ X481 @ id ) ) ) ) )
              | ~ ! [X482: term,X483: term] :
                    ( ( X478 @ ( ap @ X482 @ X483 ) )
                    | ~ ( X478 @ X482 )
                    | ~ ( X478 @ X483 ) )
              | ( X478 @ X479 )
              | ~ ! [X484: term] :
                    ( ~ ( var @ X484 )
                    | ( X478 @ X484 ) ) )
         => ( ! [X485: term] :
                ( ( sub @ X485 @ id )
                = X485 )
           => ( ! [X486: term,X487: term > $o,X488: subst > term > subst > $o] :
                  ( ( X487 @ ( lam @ X486 ) )
                  | ~ ! [X489: term] :
                        ( ( X487 @ ( sub @ X486 @ ( push @ X489 @ id ) ) )
                        | ~ ( X487 @ X489 ) )
                  | ~ ! [X490: subst > term > term] :
                        ( ~ ! [X491: subst,X492: subst,X493: term] :
                              ( ( sub @ ( X490 @ X491 @ X493 ) @ X492 )
                              = ( X490 @ ( comp @ X491 @ X492 ) @ ( sub @ X493 @ X492 ) ) )
                        | ~ ! [X494: term] :
                              ( ( X488 @ id @ ( X490 @ id @ X494 ) @ id )
                              | ~ ( X488 @ id @ X494 @ id ) )
                        | ( X488 @ id @ ( lam @ ( X490 @ sh @ one ) ) @ id ) )
                  | ~ ! [X495: term] :
                        ( ( X487 @ X495 )
                        = ( X488 @ id @ X495 @ id ) ) )
             => ! [X496: subst > term > subst > $o,X497: term] :
                  ( ~ ! [X498: subst,X499: term,X500: subst,X501: subst] :
                        ( ( X496 @ ( comp @ X500 @ X501 ) @ ( sub @ X499 @ X501 ) @ X498 )
                        | ~ ( X496 @ X500 @ X499 @ ( comp @ X501 @ X498 ) ) )
                  | ~ ! [X502: subst > term > term] :
                        ( ~ ! [X503: subst,X504: subst,X505: term] :
                              ( ( X502 @ ( comp @ X503 @ X504 ) @ ( sub @ X505 @ X504 ) )
                              = ( sub @ ( X502 @ X503 @ X505 ) @ X504 ) )
                        | ( X496 @ id @ ( lam @ ( X502 @ sh @ one ) ) @ id )
                        | ~ ! [X506: term] :
                              ( ( X496 @ id @ ( X502 @ id @ X506 ) @ id )
                              | ~ ( X496 @ id @ X506 @ id ) ) )
                  | ~ ! [X507: subst,X508: term,X509: subst,X510: subst] :
                        ( ~ ( X496 @ ( comp @ X510 @ X507 ) @ ( sub @ X508 @ X507 ) @ X509 )
                        | ( X496 @ X510 @ X508 @ ( comp @ X507 @ X509 ) ) )
                  | ~ ! [X511: term,X512: term] :
                        ( ~ ( X496 @ id @ X512 @ id )
                        | ~ ( X496 @ id @ X511 @ id )
                        | ( X496 @ id @ ( ap @ ( sub @ X512 @ id ) @ X511 ) @ id ) )
                  | ~ ! [X513: term] :
                        ( ~ ( var @ ( sub @ X513 @ id ) )
                        | ( X496 @ id @ X513 @ id ) )
                  | ( X496 @ id @ X497 @ id ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasapinj1_lthm
    <=> ( ! [X514: term] :
            ( ( sub @ X514 @ id )
            = X514 )
       => ( ! [X515: term,X516: term,X517: term,X518: term] :
              ( ( X515 = X516 )
              | ( ( ap @ X515 @ X517 )
               != ( ap @ X516 @ X518 ) ) )
         => ! [X519: term,X520: term,X521: term,X522: term] :
              ( ( X520 = X522 )
              | ( ( ap @ ( sub @ X522 @ id ) @ X521 )
               != ( ap @ ( sub @ X520 @ id ) @ X519 ) ) ) ) ) )
    & ! [X523: d_term] : ( d_one = X523 )
    & pushprop_lem2v2
    & axmap
    & ( ( ! [X524: term] :
            ( ( sub @ X524 @ id )
            = X524 )
       => ( ! [X525: term,X526: subst > term > subst > $o] :
              ( ~ ! [X527: subst > term > term] :
                    ( ~ ! [X528: term] :
                          ( ~ ( X526 @ id @ X528 @ id )
                          | ( X526 @ id @ ( X527 @ id @ X528 ) @ id ) )
                    | ( X526 @ id @ ( lam @ ( X527 @ sh @ one ) ) @ id )
                    | ~ ! [X529: subst,X530: term,X531: subst] :
                          ( ( X527 @ ( comp @ X531 @ X529 ) @ ( sub @ X530 @ X529 ) )
                          = ( sub @ ( X527 @ X531 @ X530 ) @ X529 ) ) )
              | ( X526 @ id @ ( lam @ ( sub @ X525 @ ( push @ one @ sh ) ) ) @ id )
              | ~ ! [X532: term] :
                    ( ~ ( X526 @ id @ X532 @ id )
                    | ( X526 @ id @ ( sub @ X525 @ ( push @ X532 @ id ) ) @ id ) ) )
         => ! [X533: term,X534: subst > term > subst > $o] :
              ( ~ ! [X535: term,X536: subst,X537: subst,X538: subst] :
                    ( ~ ( X534 @ ( comp @ X537 @ X536 ) @ ( sub @ X535 @ X536 ) @ X538 )
                    | ( X534 @ X537 @ X535 @ ( comp @ X536 @ X538 ) ) )
              | ( X534 @ id @ ( lam @ X533 ) @ id )
              | ~ ! [X539: term,X540: subst,X541: subst,X542: subst] :
                    ( ~ ( X534 @ X542 @ X539 @ ( comp @ X540 @ X541 ) )
                    | ( X534 @ ( comp @ X542 @ X540 ) @ ( sub @ X539 @ X540 ) @ X541 ) )
              | ~ ! [X543: subst > term > term] :
                    ( ~ ! [X544: term] :
                          ( ( X534 @ id @ ( X543 @ id @ X544 ) @ id )
                          | ~ ( X534 @ id @ X544 @ id ) )
                    | ( X534 @ id @ ( lam @ ( X543 @ sh @ one ) ) @ id )
                    | ~ ! [X545: subst,X546: term,X547: subst] :
                          ( ( sub @ ( X543 @ X547 @ X546 ) @ X545 )
                          = ( X543 @ ( comp @ X547 @ X545 ) @ ( sub @ X546 @ X545 ) ) ) )
              | ~ ! [X548: term] :
                    ( ~ ( X534 @ id @ X548 @ id )
                    | ( X534 @ id @ ( sub @ X533 @ ( push @ X548 @ id ) ) @ id ) ) ) ) )
    <=> hoasinduction_lem3_lthm )
    & hoasapnotvar_gthm
    & ( axidl
    <=> ! [X549: subst] :
          ( ( comp @ id @ X549 )
          = X549 ) ) ),
    inference(rectify,[status(thm)],[f1]) ).

thf(f1,axiom,
    ( ( ! [X13: term,X10: term > $o,X14: subst] :
          ~ ! [X11: term > $o] :
              ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ ( sub @ X12 @ ( push @ X13 @ X14 ) ) ) )
    <=> pushprop_lem0_lthm )
    & hoasinduction_lem2v2_gthm
    & pushprop_lem3v2
    & ( ! [X10: term > $o,X21: term] :
          ( ~ ! [X13: term] :
                ( ( X10 @ ( lam @ X13 ) )
                | ~ ( X10 @ X13 ) )
          | ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ X15 )
                | ( X10 @ ( ap @ X13 @ X15 ) )
                | ~ ( X10 @ X13 ) )
          | ~ ! [X13: term] :
                ( ( X10 @ X13 )
                | ~ ( var @ X13 ) )
          | ( X10 @ X21 ) )
    <=> induction )
    & ( ! [X19: term,X20: term,X13: term,X15: term] :
          ( ( ( ap @ ( sub @ X13 @ id ) @ X19 )
           != ( ap @ ( sub @ X15 @ id ) @ X20 ) )
          | ( X19 = X20 ) )
    <=> hoasapinj2 )
    & ( hoasinduction_lem3aaa
    <=> ! [X10: subst > term > subst > $o,X34: term] :
          ( ~ ! [X35: term,X18: subst > term > term] :
                ( ~ ! [X13: term] :
                      ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) )
                | ~ ! [X38: subst,X36: subst,X37: term] :
                      ( ( sub @ ( X18 @ X36 @ X37 ) @ X38 )
                      = ( sub @ ( sub @ X35 @ ( push @ X37 @ X36 ) ) @ X38 ) )
                | ~ ! [X39: subst,X41: subst,X40: term] :
                      ( ( X18 @ ( comp @ X39 @ X41 ) @ ( sub @ X40 @ X41 ) )
                      = ( sub @ X35 @ ( push @ ( sub @ X40 @ X41 ) @ ( comp @ X39 @ X41 ) ) ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
          | ( X10 @ id @ ( lam @ ( sub @ X34 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X15: term] :
                ( ( X10 @ id @ ( sub @ X34 @ ( push @ X15 @ id ) ) @ id )
                | ~ ( X10 @ id @ X15 @ id ) ) ) )
    & hoasapinj2_gthm
    & ( pushprop_lem1v2
    <=> ! [X10: term > $o,X13: term,X11: term > $o,X14: subst] :
          ( ~ ! [X12: term] :
                ( ( X11 @ X12 )
                = ( X10 @ ( sub @ X12 @ ( push @ X13 @ X14 ) ) ) )
          | ~ ( X10 @ X13 )
          | ( X11 @ one ) ) )
    & ( ( ! [X13: term,X14: subst] :
            ( ( sub @ one @ ( push @ X13 @ X14 ) )
            = X13 )
       => ( ! [X14: subst,X13: term] :
              ( ( comp @ sh @ ( push @ X13 @ X14 ) )
              = X14 )
         => ! [X13: term,X10: term > $o,X15: term,X26: term > $o,X14: subst] :
              ( ( X26 @ ( sub @ X13 @ ( push @ X15 @ X14 ) ) )
              | ~ ( X10 @ X13 ) ) ) )
    <=> pushprop_lem1_lthm )
    & ( ! [X10: subst > term > subst > $o,X44: term,X11: term > $o,X45: term] :
          ( ~ ( X11 @ X45 )
          | ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ id @ X13 @ id )
                | ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id ) )
          | ~ ! [X12: term] :
                ( ( X11 @ X12 )
                = ( X10 @ id @ X12 @ id ) )
          | ~ ! [X13: term,X26: subst,X14: subst,X25: subst] :
                ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
          | ~ ( X11 @ X44 )
          | ~ ! [X26: subst,X14: subst,X13: term,X25: subst] :
                ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
          | ( X11 @ ( ap @ X44 @ X45 ) ) )
    <=> hoasinduction_lem2v2 )
    & ! [X6: d_subst,X7: d_subst] :
        ( ( ( d2subst @ X6 )
          = ( d2subst @ X7 ) )
       => ( X6 = X7 ) )
    & ~ ( var @ ( d2term @ d_one ) )
    & pushprop_lem1v2_gthm
    & ! [X0: term] :
      ? [X1: d_term] :
        ( ( d2term @ X1 )
        = X0 )
    & induction2lem_gthm
    & ~ lamnotap
    & ( substmonoid_lthm
    <=> ( ! [X14: subst] :
            ( ( comp @ id @ X14 )
            = X14 )
       => ( ! [X14: subst] :
              ( ( comp @ X14 @ id )
              = X14 )
         => ( ! [X14: subst] :
                ( ( comp @ X14 @ id )
                = X14 )
            & ! [X14: subst] :
                ( ( comp @ id @ X14 )
                = X14 ) ) ) ) )
    & ulamvarind
    & ( induction2_lthm
    <=> ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ( ! [X17: subst,X10: term > $o,X16: term] :
              ( ~ ! [X13: term,X15: term] :
                    ( ( X10 @ ( ap @ X13 @ X15 ) )
                    | ~ ( X10 @ X13 )
                    | ~ ( X10 @ X15 ) )
              | ~ ! [X13: term] :
                    ( ~ ! [X15: term] :
                          ( ~ ( X10 @ X15 )
                          | ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) ) )
                    | ( X10 @ ( lam @ X13 ) ) )
              | ( X10 @ ( sub @ X16 @ X17 ) )
              | ~ ! [X15: term] :
                    ( ( X10 @ ( sub @ X15 @ X17 ) )
                    | ~ ( var @ X15 ) ) )
         => ! [X22: term,X10: term > $o] :
              ( ~ ! [X13: term] :
                    ( ( X10 @ ( lam @ X13 ) )
                    | ~ ! [X15: term] :
                          ( ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) )
                          | ~ ( X10 @ X15 ) ) )
              | ~ ! [X13: term] :
                    ( ( X10 @ X13 )
                    | ~ ( var @ X13 ) )
              | ~ ! [X15: term,X13: term] :
                    ( ~ ( X10 @ X15 )
                    | ~ ( X10 @ X13 )
                    | ( X10 @ ( ap @ X13 @ X15 ) ) )
              | ( X10 @ X22 ) ) ) ) )
    & ( ! [X13: term] :
          ( ( sub @ X13 @ id )
          = X13 )
    <=> axvarid )
    & axabs
    & ( hoasinduction_lem3v2a
    <=> ! [X29: term,X10: subst > term > subst > $o,X11: term > $o] :
          ( ~ ! [X15: term] :
                ( ( X11 @ ( sub @ X29 @ ( push @ X15 @ id ) ) )
                | ~ ( X11 @ X15 ) )
          | ~ ! [X12: term] :
                ( ( X11 @ X12 )
                = ( X10 @ id @ X12 @ id ) )
          | ~ ! [X18: subst > term > term] :
                ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                | ~ ! [X13: term,X14: subst,X25: subst] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ~ ! [X13: term] :
                      ( ~ ( X10 @ id @ X13 @ id )
                      | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) ) )
          | ( X11 @ ( lam @ X29 ) ) ) )
    & hoasinduction_lem2_lthm
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & hoasinduction_lem1_lthm
    & ( ! [X18: subst > term > term,X31: subst > term > term,X32: subst,X33: term] :
          ( ( ( lam @ ( X18 @ sh @ one ) )
           != ( lam @ ( X31 @ sh @ one ) ) )
          | ~ ! [X25: subst,X14: subst,X13: term] :
                ( ( sub @ ( X31 @ X14 @ X13 ) @ X25 )
                = ( X31 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
          | ( ( X18 @ X32 @ X33 )
            = ( X31 @ X32 @ X33 ) )
          | ~ ! [X13: term,X14: subst,X25: subst] :
                ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
    <=> hoaslaminj )
    & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
    & hoaslamnotap_lthm
    & pushprop_lem0_gthm
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X15: term,X20: term,X19: term,X13: term] :
          ( ( X13 = X15 )
          | ( ( ap @ X13 @ X19 )
           != ( ap @ X15 @ X20 ) ) )
    <=> apinj1 )
    & hoasinduction_lem2_gthm
    & lamnotvar
    & termmset_gthm
    & hoasinduction_lem3v2_gthm
    & ! [X5: d_subst] : ( d_id = X5 )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( ! [X14: subst,X13: term] :
            ( ( sub @ one @ ( push @ X13 @ X14 ) )
            = X13 )
       => ! [X13: term,X10: term > $o,X11: term > $o,X14: subst] :
            ( ~ ( X10 @ X13 )
            | ( X11 @ one )
            | ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ ( sub @ X12 @ ( push @ X13 @ X14 ) ) ) ) ) )
    <=> pushprop_lem1v2_lthm )
    & ( hoasinduction_lem3aa_lthm
    <=> ! [X10: subst > term > subst > $o,X42: term] :
          ( ~ ! [X18: subst > term > term] :
                ( ~ ! [X13: term] :
                      ( ~ ( X10 @ id @ X13 @ id )
                      | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                | ~ ! [X25: subst,X14: subst,X13: term] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
          | ( X10 @ id @ ( lam @ ( sub @ X42 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X15: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( sub @ X42 @ ( push @ X15 @ id ) ) @ id ) ) ) )
    & hoaslamnotvar_gthm
    & ( hoasinduction_lem0
    <=> ! [X10: subst > term > subst > $o] :
          ~ ! [X11: term > $o] :
              ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ id @ X12 @ id ) ) )
    & hoasinduction_lem1v2
    & ( ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ( ! [X42: term,X10: subst > term > subst > $o] :
              ( ~ ! [X15: term] :
                    ( ( X10 @ id @ ( sub @ X42 @ ( push @ X15 @ id ) ) @ id )
                    | ~ ( X10 @ id @ X15 @ id ) )
              | ( X10 @ id @ ( lam @ ( sub @ X42 @ ( push @ one @ sh ) ) ) @ id )
              | ~ ! [X18: subst > term > term] :
                    ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                    | ~ ! [X14: subst,X25: subst,X13: term] :
                          ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                          = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                    | ~ ! [X13: term] :
                          ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                          | ~ ( X10 @ id @ X13 @ id ) ) ) )
         => ! [X10: subst > term > subst > $o,X43: term] :
              ( ~ ! [X18: subst > term > term] :
                    ( ~ ! [X13: term] :
                          ( ~ ( X10 @ id @ X13 @ id )
                          | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                    | ~ ! [X25: subst,X14: subst,X13: term] :
                          ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                          = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                    | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
              | ~ ! [X15: term] :
                    ( ~ ( X10 @ id @ X15 @ id )
                    | ( X10 @ id @ ( sub @ X43 @ ( push @ X15 @ id ) ) @ id ) )
              | ( X10 @ id @ ( lam @ X43 ) @ id ) ) ) )
    <=> hoasinduction_lem3a_lthm )
    & hoasapinj1_gthm
    & hoaslamnotvar_lthm
    & hoasapnotvar_lthm
    & ( hoasinduction_lem3b
    <=> ! [X15: term] :
          ~ ! [X18: subst > term > term] :
              ( ( X18 @ sh @ one )
             != ( sub @ X15 @ ( push @ one @ sh ) ) ) )
    & hoaslaminj_gthm
    & pushprop_lthm
    & pushprop_lem3v2_lthm
    & axvarshift
    & hoaslamnotap_gthm
    & ( ! [X26: term > $o,X14: subst,X10: term > $o,X13: term,X15: term] :
          ( ( X26 @ ( sub @ X13 @ ( push @ X15 @ X14 ) ) )
          | ~ ( X10 @ X13 ) )
    <=> pushprop_lem1 )
    & ( ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ! [X10: subst > term > subst > $o,X48: term,X11: term > $o] :
            ( ~ ! [X15: term] :
                  ( ~ ( X11 @ X15 )
                  | ( X11 @ ( sub @ X48 @ ( push @ X15 @ id ) ) ) )
            | ~ ! [X26: subst,X13: term,X25: subst,X14: subst] :
                  ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                  | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
            | ( X11 @ ( lam @ X48 ) )
            | ~ ! [X14: subst,X25: subst,X13: term,X26: subst] :
                  ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                  | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
            | ~ ! [X18: subst > term > term] :
                  ( ~ ! [X25: subst,X14: subst,X13: term] :
                        ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                        = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                  | ~ ! [X13: term] :
                        ( ~ ( X10 @ id @ X13 @ id )
                        | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                  | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
            | ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ id @ X12 @ id ) ) ) )
    <=> hoasinduction_lem3v2_lthm )
    & ( ( ! [X14: subst,X13: term] :
            ( ( sub @ one @ ( push @ X13 @ X14 ) )
            = X13 )
       => ( ! [X14: subst,X13: term] :
              ( ( comp @ sh @ ( push @ X13 @ X14 ) )
              = X14 )
         => ( ! [X14: subst] :
                ( ( comp @ X14 @ id )
                = X14 )
           => ( ! [X21: term,X10: term > $o] :
                  ( ~ ! [X13: term] :
                        ( ( X10 @ ( lam @ X13 ) )
                        | ~ ( X10 @ X13 ) )
                  | ( X10 @ X21 )
                  | ~ ! [X13: term] :
                        ( ( X10 @ X13 )
                        | ~ ( var @ X13 ) )
                  | ~ ! [X15: term,X13: term] :
                        ( ~ ( X10 @ X15 )
                        | ~ ( X10 @ X13 )
                        | ( X10 @ ( ap @ X13 @ X15 ) ) ) )
             => ! [X17: subst,X10: term > $o,X16: term] :
                  ( ~ ! [X15: term] :
                        ( ~ ( var @ X15 )
                        | ( X10 @ ( sub @ X15 @ X17 ) ) )
                  | ~ ! [X15: term,X13: term] :
                        ( ~ ( X10 @ X15 )
                        | ( X10 @ ( ap @ X13 @ X15 ) )
                        | ~ ( X10 @ X13 ) )
                  | ( X10 @ ( sub @ X16 @ X17 ) )
                  | ~ ! [X13: term] :
                        ( ( X10 @ ( lam @ X13 ) )
                        | ~ ! [X15: term] :
                              ( ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) )
                              | ~ ( X10 @ X15 ) ) ) ) ) ) ) )
    <=> induction2lem_lthm )
    & ( hoasinduction_lem0_lthm
    <=> ! [X10: subst > term > subst > $o] :
          ~ ! [X11: term > $o] :
              ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ id @ X12 @ id ) ) )
    & ( ! [X10: subst > term > subst > $o,X28: term] :
          ( ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ id @ X13 @ id )
                | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id )
                | ~ ( X10 @ id @ X15 @ id ) )
          | ~ ! [X18: subst > term > term] :
                ( ~ ! [X25: subst,X14: subst,X13: term] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                | ~ ! [X13: term] :
                      ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) ) )
          | ~ ! [X13: term] :
                ( ( X10 @ id @ X13 @ id )
                | ~ ( var @ ( sub @ X13 @ id ) ) )
          | ( X10 @ id @ X28 @ id )
          | ~ ! [X25: subst,X26: subst,X14: subst,X13: term] :
                ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
          | ~ ! [X26: subst,X14: subst,X13: term,X25: subst] :
                ( ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                | ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) ) )
    <=> hoasinduction )
    & ( hoaslam
      = ( ^ [X8: subst,X9: subst > term > term] : ( d2term @ d_one ) ) )
    & pushprop_lem2v2_lthm
    & ! [X3: d_term,X2: d_term] :
        ( ( ( d2term @ X2 )
          = ( d2term @ X3 ) )
       => ( X2 = X3 ) )
    & ( substmonoid
    <=> ( ! [X14: subst] :
            ( ( comp @ X14 @ id )
            = X14 )
        & ! [X14: subst] :
            ( ( comp @ id @ X14 )
            = X14 ) ) )
    & ulamvarsh
    & induction2_gthm
    & axassoc
    & ( ! [X47: term,X46: term,X18: subst > term > term] :
          ( ( ( lam @ ( X18 @ sh @ one ) )
           != ( ap @ ( sub @ X46 @ id ) @ X47 ) )
          | ~ ! [X14: subst,X25: subst,X13: term] :
                ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
    <=> hoaslamnotap )
    & hoasinduction_lem3a_gthm
    & ( axscons
    <=> ! [X14: subst] :
          ( ( push @ ( sub @ one @ X14 ) @ ( comp @ sh @ X14 ) )
          = X14 ) )
    & ( ( ! [X14: subst,X13: term] :
            ( ( sub @ one @ ( push @ X13 @ X14 ) )
            = X13 )
       => ( ! [X14: subst,X13: term] :
              ( ( comp @ sh @ ( push @ X13 @ X14 ) )
              = X14 )
         => ( ! [X15: term,X13: term] :
                ( ( ( lam @ X13 )
                 != ( lam @ X15 ) )
                | ( X13 = X15 ) )
           => ! [X31: subst > term > term,X18: subst > term > term,X33: term,X32: subst] :
                ( ( ( X18 @ X32 @ X33 )
                  = ( X31 @ X32 @ X33 ) )
                | ~ ! [X14: subst,X13: term,X25: subst] :
                      ( ( sub @ ( X31 @ X14 @ X13 ) @ X25 )
                      = ( X31 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ~ ! [X25: subst,X14: subst,X13: term] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ( ( lam @ ( X18 @ sh @ one ) )
                 != ( lam @ ( X31 @ sh @ one ) ) ) ) ) ) )
    <=> hoaslaminj_lthm )
    & ( hoasinduction_lem2
    <=> ! [X23: term,X10: subst > term > subst > $o,X24: term] :
          ( ( X10 @ id @ ( ap @ X23 @ X24 ) @ id )
          | ~ ! [X14: subst,X25: subst,X13: term,X26: subst] :
                ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
          | ~ ( X10 @ id @ X24 @ id )
          | ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id )
                | ~ ( X10 @ id @ X13 @ id ) )
          | ~ ( X10 @ id @ X23 @ id )
          | ~ ! [X13: term,X14: subst,X25: subst,X26: subst] :
                ( ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                | ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) ) ) )
    & ~ ulamvar1
    & axapp
    & ( ! [X30: term,X10: subst > term > subst > $o] :
          ( ~ ! [X18: subst > term > term] :
                ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                | ~ ! [X13: term] :
                      ( ~ ( X10 @ id @ X13 @ id )
                      | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                | ~ ! [X25: subst,X13: term,X14: subst] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
          | ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ~ ( X10 @ id @ X13 @ id )
                | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id ) )
          | ( X10 @ id @ X30 @ id ) )
    <=> hoasinduction_no_psi_cond )
    & hoasinduction_gthm
    & hoasinduction_lem3b_gthm
    & ( ! [X20: term,X19: term,X15: term,X13: term] :
          ( ( ( ap @ X13 @ X19 )
           != ( ap @ X15 @ X20 ) )
          | ( X19 = X20 ) )
    <=> apinj2 )
    & hoaslamnotvar
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( induction2lem
    <=> ! [X17: subst,X16: term,X10: term > $o] :
          ( ~ ! [X13: term,X15: term] :
                ( ( X10 @ ( ap @ X13 @ X15 ) )
                | ~ ( X10 @ X15 )
                | ~ ( X10 @ X13 ) )
          | ~ ! [X15: term] :
                ( ~ ( var @ X15 )
                | ( X10 @ ( sub @ X15 @ X17 ) ) )
          | ( X10 @ ( sub @ X16 @ X17 ) )
          | ~ ! [X13: term] :
                ( ( X10 @ ( lam @ X13 ) )
                | ~ ! [X15: term] :
                      ( ~ ( X10 @ X15 )
                      | ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) ) ) ) ) )
    & ( hoasinduction_lem3v2a_lthm
    <=> ( ! [X15: term] :
            ~ ! [X18: subst > term > term] :
                ~ ! [X14: subst,X13: term] :
                    ( ( sub @ X15 @ ( push @ X13 @ X14 ) )
                    = ( X18 @ X14 @ X13 ) )
       => ( ! [X13: term] :
              ( ( sub @ X13 @ id )
              = X13 )
         => ! [X29: term,X11: term > $o,X10: subst > term > subst > $o] :
              ( ~ ! [X12: term] :
                    ( ( X11 @ X12 )
                    = ( X10 @ id @ X12 @ id ) )
              | ( X11 @ ( lam @ X29 ) )
              | ~ ! [X15: term] :
                    ( ~ ( X11 @ X15 )
                    | ( X11 @ ( sub @ X29 @ ( push @ X15 @ id ) ) ) )
              | ~ ! [X18: subst > term > term] :
                    ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                    | ~ ! [X25: subst,X14: subst,X13: term] :
                          ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                          = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                    | ~ ! [X13: term] :
                          ( ~ ( X10 @ id @ X13 @ id )
                          | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) ) ) ) ) ) )
    & ( ! [X15: term] :
          ~ ! [X18: subst > term > term] :
              ( ( X18 @ sh @ one )
             != ( sub @ X15 @ ( push @ one @ sh ) ) )
    <=> hoasinduction_lem3b_lthm )
    & hoasinduction_lem1
    & ( axshiftcons
    <=> ! [X13: term,X14: subst] :
          ( ( comp @ sh @ ( push @ X13 @ X14 ) )
          = X14 ) )
    & ( hoasapinj1
    <=> ! [X15: term,X19: term,X13: term,X20: term] :
          ( ( ( ap @ ( sub @ X13 @ id ) @ X19 )
           != ( ap @ ( sub @ X15 @ id ) @ X20 ) )
          | ( X13 = X15 ) ) )
    & hoasapnotvar
    & ( axvarcons
    <=> ! [X13: term,X14: subst] :
          ( ( sub @ one @ ( push @ X13 @ X14 ) )
          = X13 ) )
    & ( ( d2subst @ d_id )
      = id )
    & pushprop
    & ( ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 ) )
    <=> termmset_lthm )
    & hoasinduction_lem1v2_gthm
    & ( hoasapinj2_lthm
    <=> ( ! [X20: term,X15: term,X13: term,X19: term] :
            ( ( X19 = X20 )
            | ( ( ap @ X13 @ X19 )
             != ( ap @ X15 @ X20 ) ) )
       => ! [X15: term,X20: term,X13: term,X19: term] :
            ( ( X19 = X20 )
            | ( ( ap @ ( sub @ X13 @ id ) @ X19 )
             != ( ap @ ( sub @ X15 @ id ) @ X20 ) ) ) ) )
    & ( ! [X15: term] :
          ~ ! [X18: subst > term > term] :
              ~ ! [X14: subst,X13: term] :
                  ( ( sub @ X15 @ ( push @ X13 @ X14 ) )
                  = ( X18 @ X14 @ X13 ) )
    <=> hoasinduction_lem3v2_f_lthm )
    & ( laminj
    <=> ! [X13: term,X15: term] :
          ( ( ( lam @ X13 )
           != ( lam @ X15 ) )
          | ( X13 = X15 ) ) )
    & ( hoasinduction_lem3
    <=> ! [X10: subst > term > subst > $o,X27: term] :
          ( ~ ! [X15: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( sub @ X27 @ ( push @ X15 @ id ) ) @ id ) )
          | ~ ! [X13: term,X26: subst,X25: subst,X14: subst] :
                ( ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                | ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
          | ~ ! [X18: subst > term > term] :
                ( ~ ! [X13: term] :
                      ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                | ~ ! [X13: term,X25: subst,X14: subst] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
          | ( X10 @ id @ ( lam @ X27 ) @ id )
          | ~ ! [X26: subst,X13: term,X25: subst,X14: subst] :
                ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) ) ) )
    & ( hoasinduction_no_psi_cond_lthm
    <=> ( ! [X10: subst > term > subst > $o] :
            ~ ! [X11: term > $o] :
                ~ ! [X12: term] :
                    ( ( X11 @ X12 )
                    = ( X10 @ id @ X12 @ id ) )
       => ( ! [X10: term > $o,X22: term] :
              ( ~ ! [X13: term] :
                    ( ~ ( var @ X13 )
                    | ( X10 @ X13 ) )
              | ~ ! [X13: term] :
                    ( ( X10 @ ( lam @ X13 ) )
                    | ~ ! [X15: term] :
                          ( ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) )
                          | ~ ( X10 @ X15 ) ) )
              | ( X10 @ X22 )
              | ~ ! [X13: term,X15: term] :
                    ( ~ ( X10 @ X15 )
                    | ~ ( X10 @ X13 )
                    | ( X10 @ ( ap @ X13 @ X15 ) ) ) )
         => ( ! [X13: term] :
                ( ( sub @ X13 @ id )
                = X13 )
           => ( ! [X10: subst > term > subst > $o,X11: term > $o,X29: term] :
                  ( ( X11 @ ( lam @ X29 ) )
                  | ~ ! [X18: subst > term > term] :
                        ( ~ ! [X13: term] :
                              ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                              | ~ ( X10 @ id @ X13 @ id ) )
                        | ~ ! [X14: subst,X25: subst,X13: term] :
                              ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                              = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                        | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
                  | ~ ! [X15: term] :
                        ( ( X11 @ ( sub @ X29 @ ( push @ X15 @ id ) ) )
                        | ~ ( X11 @ X15 ) )
                  | ~ ! [X12: term] :
                        ( ( X11 @ X12 )
                        = ( X10 @ id @ X12 @ id ) ) )
             => ! [X30: term,X10: subst > term > subst > $o] :
                  ( ~ ! [X13: term,X15: term] :
                        ( ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id )
                        | ~ ( X10 @ id @ X15 @ id )
                        | ~ ( X10 @ id @ X13 @ id ) )
                  | ~ ! [X18: subst > term > term] :
                        ( ~ ! [X13: term,X25: subst,X14: subst] :
                              ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                              = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                        | ~ ! [X13: term] :
                              ( ~ ( X10 @ id @ X13 @ id )
                              | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                        | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
                  | ( X10 @ id @ X30 @ id ) ) ) ) ) ) )
    & apnotvar
    & ( termmset
    <=> ! [X13: term] :
          ( ( sub @ X13 @ id )
          = X13 ) )
    & pushprop_lthm_orig
    & hoasinduction_lem1_gthm
    & ( hoasinduction_lem3v2
    <=> ! [X48: term,X11: term > $o,X10: subst > term > subst > $o] :
          ( ~ ! [X12: term] :
                ( ( X11 @ X12 )
                = ( X10 @ id @ X12 @ id ) )
          | ~ ! [X18: subst > term > term] :
                ( ~ ! [X13: term] :
                      ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) )
                | ~ ! [X14: subst,X13: term,X25: subst] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
          | ( X11 @ ( lam @ X48 ) )
          | ~ ! [X15: term] :
                ( ~ ( X11 @ X15 )
                | ( X11 @ ( sub @ X48 @ ( push @ X15 @ id ) ) ) )
          | ~ ! [X26: subst,X25: subst,X14: subst,X13: term] :
                ( ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                | ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
          | ~ ! [X26: subst,X14: subst,X25: subst,X13: term] :
                ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) ) ) )
    & ( ! [X14: subst] :
          ( ( comp @ X14 @ id )
          = X14 )
    <=> axidr )
    & ( hoasinduction_lem3aa
    <=> ! [X10: subst > term > subst > $o,X42: term] :
          ( ~ ! [X18: subst > term > term] :
                ( ~ ! [X13: term] :
                      ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) )
                | ~ ! [X13: term,X14: subst,X25: subst] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
          | ( X10 @ id @ ( lam @ ( sub @ X42 @ ( push @ one @ sh ) ) ) @ id )
          | ~ ! [X15: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( sub @ X42 @ ( push @ X15 @ id ) ) @ id ) ) ) )
    & axclos
    & pushprop_lem1_gthm
    & pushprop_gthm
    & ! [X4: subst] :
      ? [X5: d_subst] :
        ( ( d2subst @ X5 )
        = X4 )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & hoasinduction_lem3_gthm
    & ( hoasinduction_lem3v2_f
    <=> ! [X15: term] :
          ~ ! [X18: subst > term > term] :
              ~ ! [X14: subst,X13: term] :
                  ( ( sub @ X15 @ ( push @ X13 @ X14 ) )
                  = ( X18 @ X14 @ X13 ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & pushprop_lem2v2_gthm
    & ( ( ! [X22: term,X10: term > $o] :
            ( ( X10 @ X22 )
            | ~ ! [X13: term] :
                  ( ( X10 @ ( lam @ X13 ) )
                  | ~ ! [X15: term] :
                        ( ~ ( X10 @ X15 )
                        | ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) ) ) )
            | ~ ! [X13: term,X15: term] :
                  ( ~ ( X10 @ X15 )
                  | ( X10 @ ( ap @ X13 @ X15 ) )
                  | ~ ( X10 @ X13 ) )
            | ~ ! [X13: term] :
                  ( ~ ( var @ X13 )
                  | ( X10 @ X13 ) ) )
       => ( ! [X23: term,X24: term,X10: subst > term > subst > $o] :
              ( ~ ( X10 @ id @ X24 @ id )
              | ~ ! [X25: subst,X26: subst,X14: subst,X13: term] :
                    ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                    | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
              | ~ ! [X15: term,X13: term] :
                    ( ~ ( X10 @ id @ X13 @ id )
                    | ~ ( X10 @ id @ X15 @ id )
                    | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id ) )
              | ( X10 @ id @ ( ap @ X23 @ X24 ) @ id )
              | ~ ( X10 @ id @ X23 @ id )
              | ~ ! [X13: term,X25: subst,X14: subst,X26: subst] :
                    ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                    | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) ) )
         => ( ! [X27: term,X10: subst > term > subst > $o] :
                ( ~ ! [X18: subst > term > term] :
                      ( ~ ! [X14: subst,X25: subst,X13: term] :
                            ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                            = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                      | ~ ! [X13: term] :
                            ( ~ ( X10 @ id @ X13 @ id )
                            | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                      | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
                | ~ ! [X15: term] :
                      ( ( X10 @ id @ ( sub @ X27 @ ( push @ X15 @ id ) ) @ id )
                      | ~ ( X10 @ id @ X15 @ id ) )
                | ~ ! [X14: subst,X26: subst,X25: subst,X13: term] :
                      ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                      | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
                | ( X10 @ id @ ( lam @ X27 ) @ id )
                | ~ ! [X26: subst,X14: subst,X25: subst,X13: term] :
                      ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                      | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) ) )
           => ! [X10: subst > term > subst > $o,X28: term] :
                ( ( X10 @ id @ X28 @ id )
                | ~ ! [X25: subst,X26: subst,X14: subst,X13: term] :
                      ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                      | ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
                | ~ ! [X13: term] :
                      ( ( X10 @ id @ X13 @ id )
                      | ~ ( var @ ( sub @ X13 @ id ) ) )
                | ~ ! [X15: term,X13: term] :
                      ( ~ ( X10 @ id @ X15 @ id )
                      | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id )
                      | ~ ( X10 @ id @ X13 @ id ) )
                | ~ ! [X18: subst > term > term] :
                      ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                      | ~ ! [X25: subst,X13: term,X14: subst] :
                            ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                            = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                      | ~ ! [X13: term] :
                            ( ~ ( X10 @ id @ X13 @ id )
                            | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) ) )
                | ~ ! [X25: subst,X13: term,X14: subst,X26: subst] :
                      ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                      | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) ) ) ) ) )
    <=> hoasinduction_lthm )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [X10: subst > term > subst > $o,X11: term > $o] :
          ! [X12: term] :
            ( ( X11 @ X12 )
            = ( X10 @ id @ X12 @ id ) ) ) )
    & ( ! [X14: subst,X10: term > $o,X13: term] :
          ~ ! [X11: term > $o] :
              ~ ! [X12: term] :
                  ( ( X11 @ X12 )
                  = ( X10 @ ( sub @ X12 @ ( push @ X13 @ X14 ) ) ) )
    <=> pushprop_lem0 )
    & ( ! [X15: term,X13: term] :
          ( ( ( sub @ X13 @ sh )
           != ( sub @ X15 @ sh ) )
          | ( X13 = X15 ) )
    <=> shinj )
    & ( ( ^ [X13: term,X14: subst,X10: term > $o,X11: term > $o] :
          ! [X12: term] :
            ( ( X11 @ X12 )
            = ( X10 @ ( sub @ X12 @ ( push @ X13 @ X14 ) ) ) ) )
      = pushprop_p_and_p_prime )
    & substmonoid_gthm
    & ( hoasinduction_lem3a
    <=> ! [X43: term,X10: subst > term > subst > $o] :
          ( ( X10 @ id @ ( lam @ X43 ) @ id )
          | ~ ! [X15: term] :
                ( ~ ( X10 @ id @ X15 @ id )
                | ( X10 @ id @ ( sub @ X43 @ ( push @ X15 @ id ) ) @ id ) )
          | ~ ! [X18: subst > term > term] :
                ( ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                | ~ ! [X13: term] :
                      ( ~ ( X10 @ id @ X13 @ id )
                      | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                | ~ ! [X14: subst,X25: subst,X13: term] :
                      ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                      = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) ) ) )
    & ( ! [X22: term,X10: term > $o] :
          ( ( X10 @ X22 )
          | ~ ! [X13: term] :
                ( ~ ! [X15: term] :
                      ( ~ ( X10 @ X15 )
                      | ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) ) )
                | ( X10 @ ( lam @ X13 ) ) )
          | ~ ! [X15: term,X13: term] :
                ( ~ ( X10 @ X15 )
                | ( X10 @ ( ap @ X13 @ X15 ) )
                | ~ ( X10 @ X13 ) )
          | ~ ! [X13: term] :
                ( ( X10 @ X13 )
                | ~ ( var @ X13 ) ) )
    <=> induction2 )
    & ( hoasinduction_lthm_3
    <=> ( ! [X10: subst > term > subst > $o] :
            ~ ! [X11: term > $o] :
                ~ ! [X12: term] :
                    ( ( X11 @ X12 )
                    = ( X10 @ id @ X12 @ id ) )
       => ( ! [X10: term > $o,X22: term] :
              ( ~ ! [X13: term] :
                    ( ( X10 @ ( lam @ X13 ) )
                    | ~ ! [X15: term] :
                          ( ~ ( X10 @ X15 )
                          | ( X10 @ ( sub @ X13 @ ( push @ X15 @ id ) ) ) ) )
              | ~ ! [X13: term,X15: term] :
                    ( ( X10 @ ( ap @ X13 @ X15 ) )
                    | ~ ( X10 @ X13 )
                    | ~ ( X10 @ X15 ) )
              | ( X10 @ X22 )
              | ~ ! [X13: term] :
                    ( ~ ( var @ X13 )
                    | ( X10 @ X13 ) ) )
         => ( ! [X13: term] :
                ( ( sub @ X13 @ id )
                = X13 )
           => ( ! [X29: term,X11: term > $o,X10: subst > term > subst > $o] :
                  ( ( X11 @ ( lam @ X29 ) )
                  | ~ ! [X15: term] :
                        ( ( X11 @ ( sub @ X29 @ ( push @ X15 @ id ) ) )
                        | ~ ( X11 @ X15 ) )
                  | ~ ! [X18: subst > term > term] :
                        ( ~ ! [X14: subst,X25: subst,X13: term] :
                              ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                              = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                        | ~ ! [X13: term] :
                              ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                              | ~ ( X10 @ id @ X13 @ id ) )
                        | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id ) )
                  | ~ ! [X12: term] :
                        ( ( X11 @ X12 )
                        = ( X10 @ id @ X12 @ id ) ) )
             => ! [X10: subst > term > subst > $o,X28: term] :
                  ( ~ ! [X25: subst,X13: term,X14: subst,X26: subst] :
                        ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                        | ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
                  | ~ ! [X18: subst > term > term] :
                        ( ~ ! [X14: subst,X25: subst,X13: term] :
                              ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                              = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
                        | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                        | ~ ! [X13: term] :
                              ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                              | ~ ( X10 @ id @ X13 @ id ) ) )
                  | ~ ! [X26: subst,X13: term,X25: subst,X14: subst] :
                        ( ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                        | ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
                  | ~ ! [X15: term,X13: term] :
                        ( ~ ( X10 @ id @ X13 @ id )
                        | ~ ( X10 @ id @ X15 @ id )
                        | ( X10 @ id @ ( ap @ ( sub @ X13 @ id ) @ X15 ) @ id ) )
                  | ~ ! [X13: term] :
                        ( ~ ( var @ ( sub @ X13 @ id ) )
                        | ( X10 @ id @ X13 @ id ) )
                  | ( X10 @ id @ X28 @ id ) ) ) ) ) ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasapinj1_lthm
    <=> ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ( ! [X13: term,X15: term,X19: term,X20: term] :
              ( ( X13 = X15 )
              | ( ( ap @ X13 @ X19 )
               != ( ap @ X15 @ X20 ) ) )
         => ! [X20: term,X15: term,X19: term,X13: term] :
              ( ( X13 = X15 )
              | ( ( ap @ ( sub @ X13 @ id ) @ X19 )
               != ( ap @ ( sub @ X15 @ id ) @ X20 ) ) ) ) ) )
    & ! [X1: d_term] : ( d_one = X1 )
    & pushprop_lem2v2
    & axmap
    & ( ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
       => ( ! [X42: term,X10: subst > term > subst > $o] :
              ( ~ ! [X18: subst > term > term] :
                    ( ~ ! [X13: term] :
                          ( ~ ( X10 @ id @ X13 @ id )
                          | ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
                    | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                    | ~ ! [X25: subst,X13: term,X14: subst] :
                          ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                          = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
              | ( X10 @ id @ ( lam @ ( sub @ X42 @ ( push @ one @ sh ) ) ) @ id )
              | ~ ! [X15: term] :
                    ( ~ ( X10 @ id @ X15 @ id )
                    | ( X10 @ id @ ( sub @ X42 @ ( push @ X15 @ id ) ) @ id ) ) )
         => ! [X27: term,X10: subst > term > subst > $o] :
              ( ~ ! [X13: term,X26: subst,X14: subst,X25: subst] :
                    ( ~ ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
                    | ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
              | ( X10 @ id @ ( lam @ X27 ) @ id )
              | ~ ! [X13: term,X26: subst,X25: subst,X14: subst] :
                    ( ~ ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
                    | ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
              | ~ ! [X18: subst > term > term] :
                    ( ~ ! [X13: term] :
                          ( ( X10 @ id @ ( X18 @ id @ X13 ) @ id )
                          | ~ ( X10 @ id @ X13 @ id ) )
                    | ( X10 @ id @ ( lam @ ( X18 @ sh @ one ) ) @ id )
                    | ~ ! [X25: subst,X13: term,X14: subst] :
                          ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                          = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) ) )
              | ~ ! [X15: term] :
                    ( ~ ( X10 @ id @ X15 @ id )
                    | ( X10 @ id @ ( sub @ X27 @ ( push @ X15 @ id ) ) @ id ) ) ) ) )
    <=> hoasinduction_lem3_lthm )
    & hoasapnotvar_gthm
    & ( axidl
    <=> ! [X14: subst] :
          ( ( comp @ id @ X14 )
          = X14 ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.gm43Nmhqtq/DTF2THF_31880.p',alg444_1) ).

thf(f1036,plain,
    ! [X272: term] :
      ( ( d2term @ ( sK590 @ X272 ) )
      = X272 ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f4864,plain,
    ( ! [X1: subst > term > term] :
        ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
    | ~ spl591_462 ),
    inference(subsumption_resolution,[status(thm)],[f4863,f4733]) ).

thf(f4863,plain,
    ( ! [X1: subst > term > term] :
        ( ( ( d2term @ d_one )
         != ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ ( sK596 @ X1 ) @ ( sK593 @ X1 ) ) ) )
        | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
          = $true ) )
    | ~ spl591_462 ),
    inference(forward_demodulation,[status(thm)],[f3883,f4733]) ).

thf(f3883,plain,
    ( ! [X1: subst > term > term] :
        ( ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ ( sK596 @ X1 ) @ ( sK593 @ X1 ) ) )
         != ( sub @ ( X1 @ ( sK595 @ X1 ) @ ( sK596 @ X1 ) ) @ ( sK593 @ X1 ) ) )
        | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
          = $true ) )
    | ~ spl591_462 ),
    inference(avatar_component_clause,[status(thm)],[f3882]) ).

thf(f4856,plain,
    ( spl591_655
    | ~ spl591_458 ),
    inference(avatar_split_clause,[status(thm)],[f4855,f3865,f4791]) ).

thf(f4791,definition,
    ( spl591_655
  <=> ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
      = $false ) ),
    introduced(definition,[new_symbols(naming,[spl591_655])],[avatar_definition]) ).

thf(f3865,definition,
    ( spl591_458
  <=> ( $false
      = ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK599 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl591_458])],[avatar_definition]) ).

thf(f4855,plain,
    ( ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
      = $false )
    | ~ spl591_458 ),
    inference(forward_demodulation,[status(thm)],[f3867,f4733]) ).

thf(f3867,plain,
    ( ( $false
      = ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK599 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) )
    | ~ spl591_458 ),
    inference(avatar_component_clause,[status(thm)],[f3865]) ).

thf(f4853,plain,
    ( ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $false )
    | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    | ( $true = $false ) ),
    introduced(definition,[],[theory_tautology_sat_conflict]) ).

thf(f4843,plain,
    ( ~ spl591_658
    | spl591_627 ),
    inference(avatar_split_clause,[status(thm)],[f4842,f4606,f4811]) ).

thf(f4811,definition,
    ( spl591_658
  <=> ( $true
      = ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl591_658])],[avatar_definition]) ).

thf(f4606,definition,
    ( spl591_627
  <=> ( $true
      = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK303 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl591_627])],[avatar_definition]) ).

thf(f4842,plain,
    ( ( $true
     != ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    | spl591_627 ),
    inference(forward_demodulation,[status(thm)],[f4608,f4733]) ).

thf(f4608,plain,
    ( ( $true
     != ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK303 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) )
    | spl591_627 ),
    inference(avatar_component_clause,[status(thm)],[f4606]) ).

thf(f4814,plain,
    ( spl591_658
    | ~ spl591_572 ),
    inference(avatar_split_clause,[status(thm)],[f4809,f4365,f4811]) ).

thf(f4365,definition,
    ( spl591_572
  <=> ! [X3: subst > term > term] :
        ( ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( X3 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) ) @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) )
        | ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
         != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl591_572])],[avatar_definition]) ).

thf(f4809,plain,
    ( ( $true
      = ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    | ~ spl591_572 ),
    inference(duplicate_literal_removal,[status(thm)],[f4808]) ).

thf(f4808,plain,
    ( ( $true
      = ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    | ( $true
      = ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    | ~ spl591_572 ),
    inference(forward_demodulation,[status(thm)],[f4807,f4733]) ).

thf(f4807,plain,
    ( ! [X3: subst > term > term] :
        ( ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) )
    | ~ spl591_572 ),
    inference(forward_demodulation,[status(thm)],[f4806,f4733]) ).

thf(f4806,plain,
    ( ! [X3: subst > term > term] :
        ( ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( X3 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) ) @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) ) )
    | ~ spl591_572 ),
    inference(subsumption_resolution,[status(thm)],[f4805,f4733]) ).

thf(f4805,plain,
    ( ! [X3: subst > term > term] :
        ( ( ( d2term @ d_one )
         != ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( X3 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) ) @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) ) )
    | ~ spl591_572 ),
    inference(forward_demodulation,[status(thm)],[f4366,f4733]) ).

thf(f4366,plain,
    ( ! [X3: subst > term > term] :
        ( ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
         != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( X3 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) ) @ ( d2subst @ d_id ) ) ) )
    | ~ spl591_572 ),
    inference(avatar_component_clause,[status(thm)],[f4365]) ).

thf(f4708,plain,
    ( ( hoasinduction_lem3aa != $false )
    | ( hoasinduction_lem3aa != $true )
    | ( $true = $false ) ),
    introduced(definition,[],[theory_tautology_sat_conflict]) ).

thf(f4609,plain,
    ( ~ spl591_627
    | spl591_32 ),
    inference(avatar_split_clause,[status(thm)],[f1462,f2027,f4606]) ).

thf(f2027,definition,
    ( spl591_32
  <=> ( $true = sP21 ) ),
    introduced(definition,[new_symbols(naming,[spl591_32])],[avatar_definition]) ).

thf(f1462,plain,
    ( ( $true = sP21 )
    | ( $true
     != ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK303 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ),
    inference(definition_unfolding,[status(thm)],[f855,f1223,f1250,f1175,f1223]) ).

thf(f1175,plain,
    ( ( d2subst @ d_id )
    = sh ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f1250,plain,
    ( one
    = ( d2term @ d_one ) ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f1223,plain,
    ( ( d2subst @ d_id )
    = id ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f855,plain,
    ( ( $true = sP21 )
    | ( ( sK302 @ id @ ( lam @ ( sub @ sK303 @ ( push @ one @ sh ) ) ) @ id )
     != $true ) ),
    inference(cnf_transformation,[status(thm)],[f326]) ).

thf(f326,plain,
    ( ( ( $true = sP21 )
      | ( ( ( sK302 @ id @ ( lam @ ( sub @ sK303 @ ( push @ one @ sh ) ) ) @ id )
         != $true )
        & ! [X2: term] :
            ( ( $true
             != ( sK302 @ id @ X2 @ id ) )
            | ( $true
              = ( sK302 @ id @ ( sub @ sK303 @ ( push @ X2 @ id ) ) @ id ) ) )
        & ! [X3: subst > term > term] :
            ( ( ( $true
                = ( sK302 @ id @ ( sK304 @ X3 ) @ id ) )
              & ( $true
               != ( sK302 @ id @ ( X3 @ id @ ( sK304 @ X3 ) ) @ id ) ) )
            | ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
             != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) )
            | ( $true
              = ( sK302 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) ) ) )
    & ( ! [X8: subst > term > subst > $o,X9: term] :
          ( ( $true
            = ( X8 @ id @ ( lam @ ( sub @ X9 @ ( push @ one @ sh ) ) ) @ id ) )
          | ( ( $true
              = ( X8 @ id @ ( sK308 @ X9 @ X8 ) @ id ) )
            & ( $true
             != ( X8 @ id @ ( sub @ X9 @ ( push @ ( sK308 @ X9 @ X8 ) @ id ) ) @ id ) ) )
          | ( ! [X12: term] :
                ( ( ( X8 @ id @ X12 @ id )
                 != $true )
                | ( $true
                  = ( X8 @ id @ ( sK309 @ X8 @ id @ X12 ) @ id ) ) )
            & ! [X13: term,X14: subst,X15: subst] :
                ( ( sK309 @ X8 @ ( comp @ X14 @ X15 ) @ ( sub @ X13 @ X15 ) )
                = ( sub @ ( sK309 @ X8 @ X14 @ X13 ) @ X15 ) )
            & ( ( X8 @ id @ ( lam @ ( sK309 @ X8 @ sh @ one ) ) @ id )
             != $true ) ) )
      | ( $true != sP21 ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK302,sK303,sK304,sK305,sK306,sK307,sK308,sK309])],[f320,f325,f324,f323,f322,f321]) ).

thf(f321,plain,
    ( ? [X0: subst > term > subst > $o,X1: term] :
        ( ( ( X0 @ id @ ( lam @ ( sub @ X1 @ ( push @ one @ sh ) ) ) @ id )
         != $true )
        & ! [X2: term] :
            ( ( $true
             != ( X0 @ id @ X2 @ id ) )
            | ( $true
              = ( X0 @ id @ ( sub @ X1 @ ( push @ X2 @ id ) ) @ id ) ) )
        & ! [X3: subst > term > term] :
            ( ? [X4: term] :
                ( ( $true
                  = ( X0 @ id @ X4 @ id ) )
                & ( $true
                 != ( X0 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
            | ? [X5: term,X6: subst,X7: subst] :
                ( ( X3 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) )
               != ( sub @ ( X3 @ X6 @ X5 ) @ X7 ) )
            | ( $true
              = ( X0 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) ) )
   => ( ( ( sK302 @ id @ ( lam @ ( sub @ sK303 @ ( push @ one @ sh ) ) ) @ id )
       != $true )
      & ! [X2: term] :
          ( ( $true
           != ( sK302 @ id @ X2 @ id ) )
          | ( $true
            = ( sK302 @ id @ ( sub @ sK303 @ ( push @ X2 @ id ) ) @ id ) ) )
      & ! [X3: subst > term > term] :
          ( ? [X4: term] :
              ( ( ( sK302 @ id @ X4 @ id )
                = $true )
              & ( $true
               != ( sK302 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
          | ? [X5: term,X6: subst,X7: subst] :
              ( ( X3 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) )
             != ( sub @ ( X3 @ X6 @ X5 ) @ X7 ) )
          | ( $true
            = ( sK302 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f322,plain,
    ! [X3: subst > term > term] :
      ( ? [X4: term] :
          ( ( ( sK302 @ id @ X4 @ id )
            = $true )
          & ( $true
           != ( sK302 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
     => ( ( $true
          = ( sK302 @ id @ ( sK304 @ X3 ) @ id ) )
        & ( $true
         != ( sK302 @ id @ ( X3 @ id @ ( sK304 @ X3 ) ) @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f323,plain,
    ! [X3: subst > term > term] :
      ( ? [X5: term,X6: subst,X7: subst] :
          ( ( X3 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) )
         != ( sub @ ( X3 @ X6 @ X5 ) @ X7 ) )
     => ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
       != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f324,plain,
    ! [X8: subst > term > subst > $o,X9: term] :
      ( ? [X10: term] :
          ( ( $true
            = ( X8 @ id @ X10 @ id ) )
          & ( $true
           != ( X8 @ id @ ( sub @ X9 @ ( push @ X10 @ id ) ) @ id ) ) )
     => ( ( $true
          = ( X8 @ id @ ( sK308 @ X9 @ X8 ) @ id ) )
        & ( $true
         != ( X8 @ id @ ( sub @ X9 @ ( push @ ( sK308 @ X9 @ X8 ) @ id ) ) @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f325,plain,
    ! [X8: subst > term > subst > $o] :
      ( ? [X11: subst > term > term] :
          ( ! [X12: term] :
              ( ( ( X8 @ id @ X12 @ id )
               != $true )
              | ( $true
                = ( X8 @ id @ ( X11 @ id @ X12 ) @ id ) ) )
          & ! [X13: term,X14: subst,X15: subst] :
              ( ( sub @ ( X11 @ X14 @ X13 ) @ X15 )
              = ( X11 @ ( comp @ X14 @ X15 ) @ ( sub @ X13 @ X15 ) ) )
          & ( ( X8 @ id @ ( lam @ ( X11 @ sh @ one ) ) @ id )
           != $true ) )
     => ( ! [X12: term] :
            ( ( ( X8 @ id @ X12 @ id )
             != $true )
            | ( $true
              = ( X8 @ id @ ( sK309 @ X8 @ id @ X12 ) @ id ) ) )
        & ! [X15: subst,X14: subst,X13: term] :
            ( ( sK309 @ X8 @ ( comp @ X14 @ X15 ) @ ( sub @ X13 @ X15 ) )
            = ( sub @ ( sK309 @ X8 @ X14 @ X13 ) @ X15 ) )
        & ( ( X8 @ id @ ( lam @ ( sK309 @ X8 @ sh @ one ) ) @ id )
         != $true ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f320,plain,
    ( ( ( $true = sP21 )
      | ? [X0: subst > term > subst > $o,X1: term] :
          ( ( ( X0 @ id @ ( lam @ ( sub @ X1 @ ( push @ one @ sh ) ) ) @ id )
           != $true )
          & ! [X2: term] :
              ( ( $true
               != ( X0 @ id @ X2 @ id ) )
              | ( $true
                = ( X0 @ id @ ( sub @ X1 @ ( push @ X2 @ id ) ) @ id ) ) )
          & ! [X3: subst > term > term] :
              ( ? [X4: term] :
                  ( ( $true
                    = ( X0 @ id @ X4 @ id ) )
                  & ( $true
                   != ( X0 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
              | ? [X5: term,X6: subst,X7: subst] :
                  ( ( X3 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) )
                 != ( sub @ ( X3 @ X6 @ X5 ) @ X7 ) )
              | ( $true
                = ( X0 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) ) ) )
    & ( ! [X8: subst > term > subst > $o,X9: term] :
          ( ( $true
            = ( X8 @ id @ ( lam @ ( sub @ X9 @ ( push @ one @ sh ) ) ) @ id ) )
          | ? [X10: term] :
              ( ( $true
                = ( X8 @ id @ X10 @ id ) )
              & ( $true
               != ( X8 @ id @ ( sub @ X9 @ ( push @ X10 @ id ) ) @ id ) ) )
          | ? [X11: subst > term > term] :
              ( ! [X12: term] :
                  ( ( ( X8 @ id @ X12 @ id )
                   != $true )
                  | ( $true
                    = ( X8 @ id @ ( X11 @ id @ X12 ) @ id ) ) )
              & ! [X13: term,X14: subst,X15: subst] :
                  ( ( sub @ ( X11 @ X14 @ X13 ) @ X15 )
                  = ( X11 @ ( comp @ X14 @ X15 ) @ ( sub @ X13 @ X15 ) ) )
              & ( ( X8 @ id @ ( lam @ ( X11 @ sh @ one ) ) @ id )
               != $true ) ) )
      | ( $true != sP21 ) ) ),
    inference(rectify,[status(thm)],[f319]) ).

thf(f319,plain,
    ( ( ( $true = sP21 )
      | ? [X375: subst > term > subst > $o,X376: term] :
          ( ( $true
           != ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
          & ! [X382: term] :
              ( ( $true
               != ( X375 @ id @ X382 @ id ) )
              | ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
                = $true ) )
          & ! [X377: subst > term > term] :
              ( ? [X378: term] :
                  ( ( $true
                    = ( X375 @ id @ X378 @ id ) )
                  & ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                   != $true ) )
              | ? [X379: term,X380: subst,X381: subst] :
                  ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                 != ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
              | ( $true
                = ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) ) ) )
    & ( ! [X375: subst > term > subst > $o,X376: term] :
          ( ( $true
            = ( X375 @ id @ ( lam @ ( sub @ X376 @ ( push @ one @ sh ) ) ) @ id ) )
          | ? [X382: term] :
              ( ( $true
                = ( X375 @ id @ X382 @ id ) )
              & ( ( X375 @ id @ ( sub @ X376 @ ( push @ X382 @ id ) ) @ id )
               != $true ) )
          | ? [X377: subst > term > term] :
              ( ! [X378: term] :
                  ( ( $true
                   != ( X375 @ id @ X378 @ id ) )
                  | ( ( X375 @ id @ ( X377 @ id @ X378 ) @ id )
                    = $true ) )
              & ! [X379: term,X380: subst,X381: subst] :
                  ( ( X377 @ ( comp @ X380 @ X381 ) @ ( sub @ X379 @ X381 ) )
                  = ( sub @ ( X377 @ X380 @ X379 ) @ X381 ) )
              & ( $true
               != ( X375 @ id @ ( lam @ ( X377 @ sh @ one ) ) @ id ) ) ) )
      | ( $true != sP21 ) ) ),
    inference(nnf_transformation,[status(thm)],[f35]) ).

thf(f4367,plain,
    ( spl591_572
    | spl591_32 ),
    inference(avatar_split_clause,[status(thm)],[f1464,f2027,f4365]) ).

thf(f1464,plain,
    ! [X3: subst > term > term] :
      ( ( $true
        = ( sK302 @ ( d2subst @ d_id ) @ ( lam @ ( X3 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) ) @ ( d2subst @ d_id ) ) )
      | ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
       != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) )
      | ( $true = sP21 )
      | ( $true
        = ( sK302 @ ( d2subst @ d_id ) @ ( sK304 @ X3 ) @ ( d2subst @ d_id ) ) ) ),
    inference(definition_unfolding,[status(thm)],[f853,f1223,f1223,f1223,f1175,f1250,f1223]) ).

thf(f853,plain,
    ! [X3: subst > term > term] :
      ( ( $true = sP21 )
      | ( $true
        = ( sK302 @ id @ ( sK304 @ X3 ) @ id ) )
      | ( ( sub @ ( X3 @ ( sK306 @ X3 ) @ ( sK305 @ X3 ) ) @ ( sK307 @ X3 ) )
       != ( X3 @ ( comp @ ( sK306 @ X3 ) @ ( sK307 @ X3 ) ) @ ( sub @ ( sK305 @ X3 ) @ ( sK307 @ X3 ) ) ) )
      | ( $true
        = ( sK302 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) ),
    inference(cnf_transformation,[status(thm)],[f326]) ).

thf(f3952,plain,
    ~ spl591_478,
    inference(avatar_split_clause,[status(thm)],[f4,f3949]) ).

thf(f3949,definition,
    ( spl591_478
  <=> ( $true = $false ) ),
    introduced(definition,[new_symbols(naming,[spl591_478])],[avatar_definition]) ).

thf(f4,plain,
    $true != $false,
    introduced(definition,[],[fool_axiom]) ).

thf(f3884,plain,
    ( spl591_460
    | spl591_457
    | spl591_462 ),
    inference(avatar_split_clause,[status(thm)],[f1743,f3882,f3861,f3874]) ).

thf(f3861,definition,
    ( spl591_457
  <=> ( hoasinduction_lem3aa = $false ) ),
    introduced(definition,[new_symbols(naming,[spl591_457])],[avatar_definition]) ).

thf(f1743,plain,
    ! [X1: subst > term > term] :
      ( ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ ( sK596 @ X1 ) @ ( sK593 @ X1 ) ) )
       != ( sub @ ( X1 @ ( sK595 @ X1 ) @ ( sK596 @ X1 ) ) @ ( sK593 @ X1 ) ) )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( hoasinduction_lem3aa = $false )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true ) ),
    inference(equality_proxy_clausification,[status(thm)],[f1742]) ).

thf(f1742,plain,
    ! [X1: subst > term > term] :
      ( ( hoasinduction_lem3aa = $false )
      | ( ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ ( sK596 @ X1 ) @ ( sK593 @ X1 ) ) )
          = ( sub @ ( X1 @ ( sK595 @ X1 ) @ ( sK596 @ X1 ) ) @ ( sK593 @ X1 ) ) )
        = $false )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true ) ),
    inference(beta_eta_normalization,[status(thm)],[f1741]) ).

thf(f1741,plain,
    ! [X1: subst > term > term] :
      ( ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( hoasinduction_lem3aa = $false )
      | ( $false
        = ( ^ [Y0: term] :
              ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ Y0 @ ( sK593 @ X1 ) ) )
              = ( sub @ ( X1 @ ( sK595 @ X1 ) @ Y0 ) @ ( sK593 @ X1 ) ) )
          @ ( sK596 @ X1 ) ) )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true ) ),
    inference(sigma_clausification,[status(thm)],[f1740]) ).

thf(f1740,plain,
    ! [X1: subst > term > term] :
      ( ( hoasinduction_lem3aa = $false )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( $false
        = ( !! @ term
          @ ^ [Y0: term] :
              ( ( X1 @ ( comp @ ( sK595 @ X1 ) @ ( sK593 @ X1 ) ) @ ( sub @ Y0 @ ( sK593 @ X1 ) ) )
              = ( sub @ ( X1 @ ( sK595 @ X1 ) @ Y0 ) @ ( sK593 @ X1 ) ) ) ) ) ),
    inference(beta_eta_normalization,[status(thm)],[f1739]) ).

thf(f1739,plain,
    ! [X1: subst > term > term] :
      ( ( hoasinduction_lem3aa = $false )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( $false
        = ( ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) )
          @ ( sK595 @ X1 ) ) ) ),
    inference(sigma_clausification,[status(thm)],[f1738]) ).

thf(f1738,plain,
    ! [X1: subst > term > term] :
      ( ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
        = $true )
      | ( $false
        = ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) ) ) )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( hoasinduction_lem3aa = $false ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1736]) ).

thf(f1736,plain,
    ! [X1: subst > term > term] :
      ( ( ( ( sK592 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) @ ( d2subst @ d_id ) )
         => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ ( sK594 @ X1 ) ) @ ( d2subst @ d_id ) ) )
        = $false )
      | ( $false
        = ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) ) ) )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( hoasinduction_lem3aa = $false ) ),
    inference(beta_eta_normalization,[status(thm)],[f1735]) ).

thf(f1735,plain,
    ! [X1: subst > term > term] :
      ( ( $false
        = ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) ) ) )
      | ( $false
        = ( ^ [Y0: term] :
              ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
             => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) )
          @ ( sK594 @ X1 ) ) )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( hoasinduction_lem3aa = $false ) ),
    inference(sigma_clausification,[status(thm)],[f1734]) ).

thf(f1734,plain,
    ! [X1: subst > term > term] :
      ( ( $false
        = ( !! @ term
          @ ^ [Y0: term] :
              ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
             => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) ) ) )
      | ( hoasinduction_lem3aa = $false )
      | ( ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( $false
        = ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1733]) ).

thf(f1733,plain,
    ! [X1: subst > term > term] :
      ( ( $true
        = ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
               => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) ) )
         => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) )
      | ( $false
        = ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( X1 @ ( comp @ Y0 @ ( sK593 @ X1 ) ) @ ( sub @ Y1 @ ( sK593 @ X1 ) ) )
                  = ( sub @ ( X1 @ Y0 @ Y1 ) @ ( sK593 @ X1 ) ) ) ) ) )
      | ( hoasinduction_lem3aa = $false ) ),
    inference(beta_eta_normalization,[status(thm)],[f1732]) ).

thf(f1732,plain,
    ! [X1: subst > term > term] :
      ( ( $false
        = ( ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( X1 @ ( comp @ Y1 @ Y0 ) @ ( sub @ Y2 @ Y0 ) )
                      = ( sub @ ( X1 @ Y1 @ Y2 ) @ Y0 ) ) ) )
          @ ( sK593 @ X1 ) ) )
      | ( hoasinduction_lem3aa = $false )
      | ( $true
        = ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
               => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) ) )
         => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) ),
    inference(sigma_clausification,[status(thm)],[f1731]) ).

thf(f1731,plain,
    ! [X1: subst > term > term] :
      ( ( hoasinduction_lem3aa = $false )
      | ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( X1 @ ( comp @ Y1 @ Y0 ) @ ( sub @ Y2 @ Y0 ) )
                      = ( sub @ ( X1 @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
        = $false )
      | ( $true
        = ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
               => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) ) )
         => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1730]) ).

thf(f1730,plain,
    ! [X1: subst > term > term] :
      ( ( hoasinduction_lem3aa = $false )
      | ( ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( X1 @ ( comp @ Y1 @ Y0 ) @ ( sub @ Y2 @ Y0 ) )
                        = ( sub @ ( X1 @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
                 => ( sK592 @ ( d2subst @ d_id ) @ ( X1 @ ( d2subst @ d_id ) @ Y0 ) @ ( d2subst @ d_id ) ) ) )
           => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) )
        = $true ) ),
    inference(beta_eta_normalization,[status(thm)],[f1729]) ).

thf(f1729,plain,
    ! [X1: subst > term > term] :
      ( ( $true
        = ( ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                     => ( sK592 @ ( d2subst @ d_id ) @ ( Y0 @ ( d2subst @ d_id ) @ Y1 ) @ ( d2subst @ d_id ) ) ) )
               => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) )
          @ X1 ) )
      | ( hoasinduction_lem3aa = $false ) ),
    inference(pi_clausification,[status(thm)],[f1728]) ).

thf(f1728,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( $true
      = ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                   => ( sK592 @ ( d2subst @ d_id ) @ ( Y0 @ ( d2subst @ d_id ) @ Y1 ) @ ( d2subst @ d_id ) ) ) )
             => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1726]) ).

thf(f1726,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( $false
      = ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                     => ( sK592 @ ( d2subst @ d_id ) @ ( Y0 @ ( d2subst @ d_id ) @ Y1 ) @ ( d2subst @ d_id ) ) ) )
               => ( sK592 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) )
       => ( !! @ term
          @ ^ [Y0: term] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                   => ( sK592 @ ( d2subst @ d_id ) @ ( sub @ Y0 @ ( push @ Y1 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
             => ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y0 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ) ) ),
    inference(beta_eta_normalization,[status(thm)],[f1725]) ).

thf(f1725,plain,
    ( ( $false
      = ( ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ term
                            @ ^ [Y4: term] :
                                ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                                = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                         => ( Y0 @ ( d2subst @ d_id ) @ ( Y1 @ ( d2subst @ d_id ) @ Y2 ) @ ( d2subst @ d_id ) ) ) )
                   => ( Y0 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                       => ( Y0 @ ( d2subst @ d_id ) @ ( sub @ Y1 @ ( push @ Y2 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
                 => ( Y0 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y1 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) )
        @ sK592 ) )
    | ( hoasinduction_lem3aa = $false ) ),
    inference(sigma_clausification,[status(thm)],[f1724]) ).

thf(f1724,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( $false
      = ( !! @ ( subst > term > subst > $o )
        @ ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ term
                            @ ^ [Y4: term] :
                                ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                                = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                         => ( Y0 @ ( d2subst @ d_id ) @ ( Y1 @ ( d2subst @ d_id ) @ Y2 ) @ ( d2subst @ d_id ) ) ) )
                   => ( Y0 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                       => ( Y0 @ ( d2subst @ d_id ) @ ( sub @ Y1 @ ( push @ Y2 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
                 => ( Y0 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y1 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1722]) ).

thf(f1722,plain,
    ( hoasinduction_lem3aa
   != ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                       => ( Y0 @ ( d2subst @ d_id ) @ ( Y1 @ ( d2subst @ d_id ) @ Y2 ) @ ( d2subst @ d_id ) ) ) )
                 => ( Y0 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                     => ( Y0 @ ( d2subst @ d_id ) @ ( sub @ Y1 @ ( push @ Y2 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
               => ( Y0 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y1 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ) ) ),
    inference(beta_eta_normalization,[status(thm)],[f1262]) ).

thf(f1262,plain,
    ( hoasinduction_lem3aa
   != ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                       => ( Y0 @ ( d2subst @ d_id ) @ ( Y1 @ ( d2subst @ d_id ) @ Y2 ) @ ( d2subst @ d_id ) ) ) )
                 => ( Y0 @ ( d2subst @ d_id )
                    @ ( ^ [Y2: subst,Y3: subst > term > term] : ( d2term @ d_one )
                      @ ( d2subst @ d_id )
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    @ ( d2subst @ d_id ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ ( d2subst @ d_id ) @ Y2 @ ( d2subst @ d_id ) )
                     => ( Y0 @ ( d2subst @ d_id ) @ ( sub @ Y1 @ ( push @ Y2 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
               => ( Y0 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y1 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ) ) ),
    inference(definition_unfolding,[status(thm)],[f546,f1223,f1223,f1223,f1223,f1223,f1223,f1149,f1223,f1223,f1223,f1223,f1223,f1223,f1223,f1223,f1250,f1175,f1223]) ).

thf(f1149,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

thf(f546,plain,
    ( hoasinduction_lem3aa
   != ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( Y0 @ id @ ( Y1 @ id @ Y2 ) @ id ) ) )
                 => ( Y0 @ id
                    @ ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    @ id ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ id @ Y2 @ id )
                     => ( Y0 @ id @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) @ id ) ) )
               => ( Y0 @ id @ ( lam @ ( sub @ Y1 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f9]) ).

thf(f9,plain,
    ( hoasinduction_lem3aa
   != ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( Y0 @ id @ ( Y1 @ id @ Y2 ) @ id ) ) )
                 => ( Y0 @ id
                    @ ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    @ id ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ id @ Y2 @ id )
                     => ( Y0 @ id @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) @ id ) ) )
               => ( Y0 @ id @ ( lam @ ( sub @ Y1 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ) ),
    inference(flattening,[status(thm)],[f6]) ).

thf(f6,plain,
    ( hoasinduction_lem3aa
   != ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y4 @ Y2 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y4 ) @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( Y0 @ id @ ( Y1 @ id @ Y2 ) @ id ) ) )
                 => ( Y0 @ id
                    @ ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    @ id ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ id @ Y2 @ id )
                     => ( Y0 @ id @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) @ id ) ) )
               => ( Y0 @ id @ ( lam @ ( sub @ Y1 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ) ),
    inference(fool_elimination,[status(thm)],[f5]) ).

thf(f5,plain,
    ( hoasinduction_lem3aa
   != ( ! [X0: subst > term > subst > $o] :
          ( ! [X1: subst > term > term] :
              ( ! [X2: term,X3: subst,X4: subst] :
                  ( ( X1 @ ( comp @ X3 @ X4 ) @ ( sub @ X2 @ X4 ) )
                  = ( sub @ ( X1 @ X3 @ X2 ) @ X4 ) )
             => ( ! [X5: term] :
                    ( ( X0 @ id @ X5 @ id )
                   => ( X0 @ id @ ( X1 @ id @ X5 ) @ id ) )
               => ( X0 @ id
                  @ ( hoaslam @ id
                    @ ^ [X6: subst,X7: term] : ( X1 @ X6 @ X7 ) )
                  @ id ) ) )
         => ! [X8: term] :
              ( ! [X9: term] :
                  ( ( X0 @ id @ X9 @ id )
                 => ( X0 @ id @ ( sub @ X8 @ ( push @ X9 @ id ) ) @ id ) )
             => ( X0 @ id @ ( lam @ ( sub @ X8 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ),
    inference(rectify,[status(thm)],[f3]) ).

thf(f3,negated_conjecture,
    ( hoasinduction_lem3aa
   != ( ! [X10: subst > term > subst > $o] :
          ( ! [X18: subst > term > term] :
              ( ! [X13: term,X14: subst,X25: subst] :
                  ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                  = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
             => ( ! [X13: term] :
                    ( ( X10 @ id @ X13 @ id )
                   => ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
               => ( X10 @ id
                  @ ( hoaslam @ id
                    @ ^ [X14: subst,X13: term] : ( X18 @ X14 @ X13 ) )
                  @ id ) ) )
         => ! [X13: term] :
              ( ! [X15: term] :
                  ( ( X10 @ id @ X15 @ id )
                 => ( X10 @ id @ ( sub @ X13 @ ( push @ X15 @ id ) ) @ id ) )
             => ( X10 @ id @ ( lam @ ( sub @ X13 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ),
    inference(negated_conjecture,[status(cth)],[f2]) ).

thf(f2,conjecture,
    ( hoasinduction_lem3aa
    = ( ! [X10: subst > term > subst > $o] :
          ( ! [X18: subst > term > term] :
              ( ! [X13: term,X14: subst,X25: subst] :
                  ( ( sub @ ( X18 @ X14 @ X13 ) @ X25 )
                  = ( X18 @ ( comp @ X14 @ X25 ) @ ( sub @ X13 @ X25 ) ) )
             => ( ! [X13: term] :
                    ( ( X10 @ id @ X13 @ id )
                   => ( X10 @ id @ ( X18 @ id @ X13 ) @ id ) )
               => ( X10 @ id
                  @ ( hoaslam @ id
                    @ ^ [X14: subst,X13: term] : ( X18 @ X14 @ X13 ) )
                  @ id ) ) )
         => ! [X13: term] :
              ( ! [X15: term] :
                  ( ( X10 @ id @ X15 @ id )
                 => ( X10 @ id @ ( sub @ X13 @ ( push @ X15 @ id ) ) @ id ) )
             => ( X10 @ id @ ( lam @ ( sub @ X13 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.gm43Nmhqtq/DTF2THF_31880.p',hoasinduction_lem3aa) ).

thf(f3868,plain,
    ( spl591_457
    | spl591_458 ),
    inference(avatar_split_clause,[status(thm)],[f1751,f3865,f3861]) ).

thf(f1751,plain,
    ( ( $false
      = ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK599 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) )
    | ( hoasinduction_lem3aa = $false ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1750]) ).

thf(f1750,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( $false
      = ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sK592 @ ( d2subst @ d_id ) @ Y0 @ ( d2subst @ d_id ) )
             => ( sK592 @ ( d2subst @ d_id ) @ ( sub @ sK599 @ ( push @ Y0 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
       => ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ sK599 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ),
    inference(beta_eta_normalization,[status(thm)],[f1749]) ).

thf(f1749,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( ( ^ [Y0: term] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                 => ( sK592 @ ( d2subst @ d_id ) @ ( sub @ Y0 @ ( push @ Y1 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
           => ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y0 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) )
        @ sK599 )
      = $false ) ),
    inference(sigma_clausification,[status(thm)],[f1727]) ).

thf(f1727,plain,
    ( ( hoasinduction_lem3aa = $false )
    | ( $false
      = ( !! @ term
        @ ^ [Y0: term] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sK592 @ ( d2subst @ d_id ) @ Y1 @ ( d2subst @ d_id ) )
                 => ( sK592 @ ( d2subst @ d_id ) @ ( sub @ Y0 @ ( push @ Y1 @ ( d2subst @ d_id ) ) ) @ ( d2subst @ d_id ) ) ) )
           => ( sK592 @ ( d2subst @ d_id ) @ ( lam @ ( sub @ Y0 @ ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ) ) @ ( d2subst @ d_id ) ) ) ) ) ),
    inference(binary_proxy_clausification,[status(thm)],[f1726]) ).

thf(f2034,plain,
    ( ~ spl591_32
    | spl591_33 ),
    inference(avatar_split_clause,[status(thm)],[f1101,f2031,f2027]) ).

thf(f2031,definition,
    ( spl591_33
  <=> ( hoasinduction_lem3aa = $true ) ),
    introduced(definition,[new_symbols(naming,[spl591_33])],[avatar_definition]) ).

thf(f1101,plain,
    ( ( hoasinduction_lem3aa = $true )
    | ( $true != sP21 ) ),
    inference(cnf_transformation,[status(thm)],[f545]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.13  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.11/0.14  % Command  : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.17/0.35  % Computer : n011.cluster.edu
% 0.17/0.35  % Model    : x86_64 x86_64
% 0.17/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.35  % Memory   : 8042.1875MB
% 0.17/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.17/0.35  % CPULimit : 300
% 0.17/0.35  % WCLimit  : 300
% 0.17/0.35  % DateTime : Tue May  5 09:09:02 EDT 2026
% 0.17/0.35  % CPUTime  : 
% 0.17/0.35  Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.32/0.47  ---- Original DTF file ---
% 0.32/0.47  thf(spec,logic,$$dhol).
% 0.32/0.47  %------------------------------------------------------------------------------
% 0.32/0.47  % File     : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.32/0.47  % Domain   : Software Verification
% 0.32/0.47  % Problem  : Benchmark: ALG444^1, Active target: hoasinduction_lem3aa
% 0.32/0.47  % Version  : Especial.
% 0.32/0.47  % English  :
% 0.32/0.47  
% 0.32/0.47  % Refs     : [Kon26] Kondylidou (2026), Email to Geoff Sutcliffe
% 0.32/0.47  % Source   : [Kon26]
% 0.32/0.47  % Names    : ALG444^1__005__axclos.verify [Kon26]
% 0.32/0.47  
% 0.32/0.47  % Status   : Theorem
% 0.32/0.47  % Rating   : ? v9.3.0
% 0.32/0.47  % Syntax   : Number of formulae    :  132 (   1 unt; 130 typ;   0 def)
% 0.32/0.47  %            Number of atoms       :  255 ( 129 equ;   0 cnn)
% 0.32/0.47  %            Maximal formula atoms :  248 ( 127 avg)
% 0.32/0.47  %            Number of connectives : 2618 ( 333   ~; 306   |; 129   &;1750   @)
% 0.32/0.47  %                                         (  56 <=>;  44  =>;   0  <=;   0 <~>)
% 0.32/0.47  %            Maximal formula depth :  151 (  76 avg)
% 0.32/0.47  %            Number of types       :    5 (   4 usr)
% 0.32/0.47  %            Number of type conns  :  227 ( 227   >;   0   *;   0   +;   0  <<)
% 0.32/0.47  %            Number of symbols     :  127 ( 126 usr; 113 con; 0-4 aty)
% 0.32/0.47  %            Number of variables   :  560 (  10   ^; 548   !;   2   ?; 560   :)
% 0.32/0.47  % SPC      : TH0_THM_EQU_NAR
% 0.32/0.47  
% 0.32/0.47  % Comments :
% 0.32/0.47  %------------------------------------------------------------------------------
% 0.32/0.47  thf(term_type,type,
% 0.32/0.47      term: $tType ).
% 0.32/0.47  
% 0.32/0.47  thf(subst_type,type,
% 0.32/0.47      subst: $tType ).
% 0.32/0.47  
% 0.32/0.47  thf(one_decl,type,
% 0.32/0.47      one: term ).
% 0.32/0.47  
% 0.32/0.47  thf(ap_decl,type,
% 0.32/0.47      ap: term > term > term ).
% 0.32/0.47  
% 0.32/0.47  thf(lam_decl,type,
% 0.32/0.47      lam: term > term ).
% 0.32/0.47  
% 0.32/0.47  thf(sub_decl,type,
% 0.32/0.47      sub: term > subst > term ).
% 0.32/0.47  
% 0.32/0.47  thf(id_decl,type,
% 0.32/0.47      id: subst ).
% 0.32/0.47  
% 0.32/0.47  thf(sh_decl,type,
% 0.32/0.47      sh: subst ).
% 0.32/0.47  
% 0.32/0.47  thf(push_decl,type,
% 0.32/0.47      push: term > subst > subst ).
% 0.32/0.47  
% 0.32/0.47  thf(comp_decl,type,
% 0.32/0.47      comp: subst > subst > subst ).
% 0.32/0.47  
% 0.32/0.47  thf(var_decl,type,
% 0.32/0.47      var: term > $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_lem1v2_decl,type,
% 0.32/0.47      pushprop_lem1v2: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_lem1_gthm_decl,type,
% 0.32/0.47      pushprop_lem1_gthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(axmap_decl,type,
% 0.32/0.47      axmap: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_lem0_gthm_decl,type,
% 0.32/0.47      pushprop_lem0_gthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(shinj_decl,type,
% 0.32/0.47      shinj: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem1v2_decl,type,
% 0.32/0.47      hoasinduction_lem1v2: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.32/0.47      hoasinduction_lem1v2_gthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasap_decl,type,
% 0.32/0.47      hoasap: subst > term > subst > term > term ).
% 0.32/0.47  
% 0.32/0.47  thf(induction2lem_decl,type,
% 0.32/0.47      induction2lem: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem3v2_f_decl,type,
% 0.32/0.47      hoasinduction_lem3v2_f: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(axvarshift_decl,type,
% 0.32/0.47      axvarshift: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasapinj2_decl,type,
% 0.32/0.47      hoasapinj2: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasapnotvar_gthm_decl,type,
% 0.32/0.47      hoasapnotvar_gthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasapinj1_decl,type,
% 0.32/0.47      hoasapinj1: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(ulamvar1_decl,type,
% 0.32/0.47      ulamvar1: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(induction2lem_lthm_decl,type,
% 0.32/0.47      induction2lem_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.32/0.47      hoasinduction_lem3v2_gthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(apnotvar_decl,type,
% 0.32/0.47      apnotvar: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_lthm_orig_decl,type,
% 0.32/0.47      pushprop_lthm_orig: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.32/0.47      hoasinduction_lem3v2_f_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lthm_decl,type,
% 0.32/0.47      hoasinduction_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.32/0.48      hoasinduction_no_psi_cond_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslaminj_decl,type,
% 0.32/0.48      hoaslaminj: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3aaa_decl,type,
% 0.32/0.48      hoasinduction_lem3aaa: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(induction2lem_gthm_decl,type,
% 0.32/0.48      induction2lem_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3aa_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3_decl,type,
% 0.32/0.48      hoasinduction_lem3: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem2_decl,type,
% 0.32/0.48      hoasinduction_lem2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(termmset_lthm_decl,type,
% 0.32/0.48      termmset_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem1_decl,type,
% 0.32/0.48      hoasinduction_lem1: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotap_lthm_decl,type,
% 0.32/0.48      hoaslamnotap_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem1v2_lthm_decl,type,
% 0.32/0.48      pushprop_lem1v2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapnotvar_decl,type,
% 0.32/0.48      hoasapnotvar: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem0_decl,type,
% 0.32/0.48      hoasinduction_lem0: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_decl,type,
% 0.32/0.48      hoasinduction: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_gthm_decl,type,
% 0.32/0.48      hoasinduction_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axapp_decl,type,
% 0.32/0.48      axapp: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotvar_lthm_decl,type,
% 0.32/0.48      hoaslamnotvar_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem3v2_lthm_decl,type,
% 0.32/0.48      pushprop_lem3v2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3b_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(ulamvarind_decl,type,
% 0.32/0.48      ulamvarind: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(induction_decl,type,
% 0.32/0.48      induction: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3a_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(termmset_gthm_decl,type,
% 0.32/0.48      termmset_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3aa_decl,type,
% 0.32/0.48      hoasinduction_lem3aa: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem1v2_gthm_decl,type,
% 0.32/0.48      pushprop_lem1v2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotap_gthm_decl,type,
% 0.32/0.48      hoaslamnotap_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotvar_gthm_decl,type,
% 0.32/0.48      hoaslamnotvar_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem3b_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem2v2_decl,type,
% 0.32/0.48      pushprop_lem2v2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem3a_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axclos_decl,type,
% 0.32/0.48      axclos: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axassoc_decl,type,
% 0.32/0.48      axassoc: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem2v2_decl,type,
% 0.32/0.48      hoasinduction_lem2v2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lthm_decl,type,
% 0.32/0.48      pushprop_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(apinj2_decl,type,
% 0.32/0.48      apinj2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(apinj1_decl,type,
% 0.32/0.48      apinj1: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapinj2_lthm_decl,type,
% 0.32/0.48      hoasapinj2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3v2a_decl,type,
% 0.32/0.48      hoasinduction_lem3v2a: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapinj1_lthm_decl,type,
% 0.32/0.48      hoasapinj1_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslaminj_lthm_decl,type,
% 0.32/0.48      hoaslaminj_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axvarcons_decl,type,
% 0.32/0.48      axvarcons: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslam_decl,type,
% 0.32/0.48      hoaslam: subst > ( subst > term > term ) > term ).
% 0.32/0.48  
% 0.32/0.48  thf(axscons_decl,type,
% 0.32/0.48      axscons: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem2v2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axidr_decl,type,
% 0.32/0.48      axidr: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem1_decl,type,
% 0.32/0.48      pushprop_lem1: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(laminj_decl,type,
% 0.32/0.48      laminj: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem0_decl,type,
% 0.32/0.48      pushprop_lem0: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_gthm_decl,type,
% 0.32/0.48      pushprop_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axabs_decl,type,
% 0.32/0.48      axabs: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3v2a_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem2_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapinj2_gthm_decl,type,
% 0.32/0.48      hoasapinj2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.32/0.48      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem1_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem1_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(lamnotap_decl,type,
% 0.32/0.48      lamnotap: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapinj1_gthm_decl,type,
% 0.32/0.48      hoasapinj1_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotvar_decl,type,
% 0.32/0.48      hoaslamnotvar: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axidl_decl,type,
% 0.32/0.48      axidl: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslaminj_gthm_decl,type,
% 0.32/0.48      hoaslaminj_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(induction2_lthm_decl,type,
% 0.32/0.48      induction2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem0_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem0_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(substmonoid_lthm_decl,type,
% 0.32/0.48      substmonoid_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_decl,type,
% 0.32/0.48      pushprop: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem3_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem2_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3b_decl,type,
% 0.32/0.48      hoasinduction_lem3b: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(substmonoid_decl,type,
% 0.32/0.48      substmonoid: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(lamnotvar_decl,type,
% 0.32/0.48      lamnotvar: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3a_decl,type,
% 0.32/0.48      hoasinduction_lem3a: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem1_gthm_decl,type,
% 0.32/0.48      hoasinduction_lem1_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_no_psi_cond_decl,type,
% 0.32/0.48      hoasinduction_no_psi_cond: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(induction2_gthm_decl,type,
% 0.32/0.48      induction2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem2v2_lthm_decl,type,
% 0.32/0.48      pushprop_lem2v2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasvar_decl,type,
% 0.32/0.48      hoasvar: subst > term > subst > $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoaslamnotap_decl,type,
% 0.32/0.48      hoaslamnotap: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(substmonoid_gthm_decl,type,
% 0.32/0.48      substmonoid_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(ulamvarsh_decl,type,
% 0.32/0.48      ulamvarsh: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(induction2_decl,type,
% 0.32/0.48      induction2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem3v2_decl,type,
% 0.32/0.48      pushprop_lem3v2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem2v2_gthm_decl,type,
% 0.32/0.48      pushprop_lem2v2_gthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem1_lthm_decl,type,
% 0.32/0.48      pushprop_lem1_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3v2_decl,type,
% 0.32/0.48      hoasinduction_lem3v2: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axshiftcons_decl,type,
% 0.32/0.48      axshiftcons: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(termmset_decl,type,
% 0.32/0.48      termmset: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_lem0_lthm_decl,type,
% 0.32/0.48      pushprop_lem0_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasapnotvar_lthm_decl,type,
% 0.32/0.48      hoasapnotvar_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.32/0.48      hoasinduction_lem3v2_lthm: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(pushprop_p_and_p_prime_decl,type,
% 0.32/0.48      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.32/0.48  
% 0.32/0.48  thf(axvarid_decl,type,
% 0.32/0.48      axvarid: $o ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lthm_3_decl,type,
% 0.32/0.48      hoasinduction_lthm_3: $o ).
% 0.32/0.48  
% 0.32/0.48  %----Types of the domains
% 0.32/0.48  thf(d_term_type,type,
% 0.32/0.48      d_term: $tType ).
% 0.32/0.48  
% 0.32/0.48  thf(d_subst_type,type,
% 0.32/0.48      d_subst: $tType ).
% 0.32/0.48  
% 0.32/0.48  %----Types of the promotion functions
% 0.32/0.48  thf(d2term_decl,type,
% 0.32/0.48      d2term: d_term > term ).
% 0.32/0.48  
% 0.32/0.48  thf(d2subst_decl,type,
% 0.32/0.48      d2subst: d_subst > subst ).
% 0.32/0.48  
% 0.32/0.48  %----Types of the domain elements
% 0.32/0.48  thf(d_one_decl,type,
% 0.32/0.48      d_one: d_term ).
% 0.32/0.48  
% 0.32/0.48  thf(d_id_decl,type,
% 0.32/0.48      d_id: d_subst ).
% 0.32/0.48  
% 0.32/0.48  thf(alg444_1,axiom,
% 0.32/0.48      ( ! [T: term] :
% 0.32/0.48        ? [DT: d_term] :
% 0.32/0.48          ( T
% 0.32/0.48          = ( d2term @ DT ) )
% 0.32/0.48      & ! [DT: d_term] : ( DT = d_one )
% 0.32/0.48      & ! [DT1: d_term,DT2: d_term] :
% 0.32/0.48          ( ( ( d2term @ DT1 )
% 0.32/0.48            = ( d2term @ DT2 ) )
% 0.32/0.48         => ( DT1 = DT2 ) )
% 0.32/0.48      & ! [S: subst] :
% 0.32/0.48        ? [DS: d_subst] :
% 0.32/0.48          ( S
% 0.32/0.48          = ( d2subst @ DS ) )
% 0.32/0.48      & ! [DS: d_subst] : ( DS = d_id )
% 0.32/0.48      & ! [DS1: d_subst,DS2: d_subst] :
% 0.32/0.48          ( ( ( d2subst @ DS1 )
% 0.32/0.48            = ( d2subst @ DS2 ) )
% 0.32/0.48         => ( DS1 = DS2 ) )
% 0.32/0.48      & ( one
% 0.32/0.48        = ( d2term @ d_one ) )
% 0.32/0.48      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.32/0.48        = ( d2term @ d_one ) )
% 0.32/0.48      & ( ( lam @ ( d2term @ d_one ) )
% 0.32/0.48        = ( d2term @ d_one ) )
% 0.32/0.48      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.48        = ( d2term @ d_one ) )
% 0.32/0.48      & ( id
% 0.32/0.48        = ( d2subst @ d_id ) )
% 0.32/0.48      & ( sh
% 0.32/0.48        = ( d2subst @ d_id ) )
% 0.32/0.48      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.48        = ( d2subst @ d_id ) )
% 0.32/0.48      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.32/0.48        = ( d2subst @ d_id ) )
% 0.32/0.48      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.32/0.48        = ( d2term @ d_one ) )
% 0.32/0.48      & ( hoaslam
% 0.32/0.48        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.32/0.48      & ( hoasinduction_p_and_p_prime
% 0.32/0.48        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.32/0.48            ! [X: term] :
% 0.32/0.48              ( ( Q @ X )
% 0.32/0.48              = ( P @ id @ X @ id ) ) ) )
% 0.32/0.48      & ( pushprop_p_and_p_prime
% 0.32/0.48        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.32/0.48            ! [X: term] :
% 0.32/0.48              ( ( Q @ X )
% 0.32/0.48              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.32/0.48      & ~ ( var @ ( d2term @ d_one ) )
% 0.32/0.48      & ( pushprop_lem1v2
% 0.32/0.48      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.32/0.48            ( ~ ( P @ A )
% 0.32/0.48            | ~ ! [X: term] :
% 0.32/0.48                  ( ( Q @ X )
% 0.32/0.48                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.32/0.48            | ( Q @ one ) ) )
% 0.32/0.48      & pushprop_lem1_gthm
% 0.32/0.48      & axmap
% 0.32/0.48      & pushprop_lem0_gthm
% 0.32/0.48      & ( shinj
% 0.32/0.48      <=> ! [A: term,B: term] :
% 0.32/0.48            ( ( ( sub @ A @ sh )
% 0.32/0.48             != ( sub @ B @ sh ) )
% 0.32/0.48            | ( A = B ) ) )
% 0.32/0.48      & hoasinduction_lem1v2
% 0.32/0.48      & hoasinduction_lem1v2_gthm
% 0.32/0.48      & ( induction2lem
% 0.32/0.48      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.48            ( ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ A )
% 0.32/0.48                  | ~ ( P @ B )
% 0.32/0.48                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48            | ~ ! [A: term] :
% 0.32/0.48                  ( ~ ! [B: term] :
% 0.32/0.48                        ( ~ ( P @ B )
% 0.32/0.48                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                  | ( P @ ( lam @ A ) ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( var @ B )
% 0.32/0.48                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.48            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.32/0.48      & ( hoasinduction_lem3v2_f
% 0.32/0.48      <=> ! [B: term] :
% 0.32/0.48            ~ ! [F: subst > term > term] :
% 0.32/0.48                ~ ! [A: term,M: subst] :
% 0.32/0.48                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.48                    = ( F @ M @ A ) ) )
% 0.32/0.48      & axvarshift
% 0.32/0.48      & ( hoasapinj2
% 0.32/0.48      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.48             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.48            | ( C = D ) ) )
% 0.32/0.48      & hoasapnotvar_gthm
% 0.32/0.48      & ( hoasapinj1
% 0.32/0.48      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.48             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.48            | ( A = B ) ) )
% 0.32/0.48      & ~ ulamvar1
% 0.32/0.48      & ( induction2lem_lthm
% 0.32/0.48      <=> ( ! [A: term,M: subst] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.48         => ( ! [A: term,M: subst] :
% 0.32/0.48                ( M
% 0.32/0.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.48           => ( ! [M: subst] :
% 0.32/0.48                  ( M
% 0.32/0.48                  = ( comp @ M @ id ) )
% 0.32/0.48             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.32/0.48                    ( ~ ! [A: term] :
% 0.32/0.48                          ( ~ ( var @ A )
% 0.32/0.48                          | ( P @ A ) )
% 0.32/0.48                    | ~ ! [A: term,B: term] :
% 0.32/0.48                          ( ~ ( P @ A )
% 0.32/0.48                          | ~ ( P @ B )
% 0.32/0.48                          | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                    | ~ ! [A: term] :
% 0.32/0.48                          ( ~ ( P @ A )
% 0.32/0.48                          | ( P @ ( lam @ A ) ) )
% 0.32/0.48                    | ( P @ Bound_variable_2140 ) )
% 0.32/0.48               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.48                    ( ~ ! [A: term,B: term] :
% 0.32/0.48                          ( ~ ( P @ A )
% 0.32/0.48                          | ~ ( P @ B )
% 0.32/0.48                          | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                    | ~ ! [A: term] :
% 0.32/0.48                          ( ~ ! [B: term] :
% 0.32/0.48                                ( ~ ( P @ B )
% 0.32/0.48                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                          | ( P @ ( lam @ A ) ) )
% 0.32/0.48                    | ~ ! [B: term] :
% 0.32/0.48                          ( ~ ( var @ B )
% 0.32/0.48                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.48                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.32/0.48      & hoasinduction_lem3v2_gthm
% 0.32/0.48      & apnotvar
% 0.32/0.48      & pushprop_lthm_orig
% 0.32/0.48      & ( hoasinduction_lem3v2_f_lthm
% 0.32/0.48      <=> ! [B: term] :
% 0.32/0.48            ~ ! [F: subst > term > term] :
% 0.32/0.48                ~ ! [A: term,M: subst] :
% 0.32/0.48                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.48                    = ( F @ M @ A ) ) )
% 0.32/0.48      & ( hoasinduction_lthm
% 0.32/0.48      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.48              ( ~ ! [A: term] :
% 0.32/0.48                    ( ~ ( var @ A )
% 0.32/0.48                    | ( P @ A ) )
% 0.32/0.48              | ~ ! [A: term,B: term] :
% 0.32/0.48                    ( ~ ( P @ A )
% 0.32/0.48                    | ~ ( P @ B )
% 0.32/0.48                    | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48              | ~ ! [A: term] :
% 0.32/0.48                    ( ~ ! [B: term] :
% 0.32/0.48                          ( ~ ( P @ B )
% 0.32/0.48                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                    | ( P @ ( lam @ A ) ) )
% 0.32/0.48              | ( P @ Bound_variable_2367 ) )
% 0.32/0.48         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.32/0.48                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48                | ~ ! [A: term,B: term] :
% 0.32/0.48                      ( ~ ( P @ id @ A @ id )
% 0.32/0.48                      | ~ ( P @ id @ B @ id )
% 0.32/0.48                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.32/0.48                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.32/0.48                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.32/0.48           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48                  | ~ ! [F: subst > term > term] :
% 0.32/0.48                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                        | ~ ! [A: term] :
% 0.32/0.48                              ( ~ ( P @ id @ A @ id )
% 0.32/0.48                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                  | ~ ! [B: term] :
% 0.32/0.48                        ( ~ ( P @ id @ B @ id )
% 0.32/0.48                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.32/0.48             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.48                        | ( P @ id @ A @ id ) )
% 0.32/0.48                  | ~ ! [A: term,B: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ~ ( P @ id @ B @ id )
% 0.32/0.48                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48                  | ~ ! [F: subst > term > term] :
% 0.32/0.48                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                        | ~ ! [A: term] :
% 0.32/0.48                              ( ~ ( P @ id @ A @ id )
% 0.32/0.48                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.32/0.48      & ( hoasinduction_no_psi_cond_lthm
% 0.32/0.48      <=> ( ! [P: subst > term > subst > $o] :
% 0.32/0.48              ~ ! [Q: term > $o] :
% 0.32/0.48                  ~ ! [X: term] :
% 0.32/0.48                      ( ( Q @ X )
% 0.32/0.48                      = ( P @ id @ X @ id ) )
% 0.32/0.48         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.48                ( ~ ! [A: term] :
% 0.32/0.48                      ( ~ ( var @ A )
% 0.32/0.48                      | ( P @ A ) )
% 0.32/0.48                | ~ ! [A: term,B: term] :
% 0.32/0.48                      ( ~ ( P @ A )
% 0.32/0.48                      | ~ ( P @ B )
% 0.32/0.48                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                | ~ ! [A: term] :
% 0.32/0.48                      ( ~ ! [B: term] :
% 0.32/0.48                            ( ~ ( P @ B )
% 0.32/0.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                      | ( P @ ( lam @ A ) ) )
% 0.32/0.48                | ( P @ Bound_variable_2367 ) )
% 0.32/0.48           => ( ! [A: term] :
% 0.32/0.48                  ( A
% 0.32/0.48                  = ( sub @ A @ id ) )
% 0.32/0.48             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.48                    ( ~ ! [F: subst > term > term] :
% 0.32/0.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                          | ~ ! [A: term] :
% 0.32/0.48                                ( ~ ( P @ id @ A @ id )
% 0.32/0.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                    | ~ ! [X: term] :
% 0.32/0.48                          ( ( Q @ X )
% 0.32/0.48                          = ( P @ id @ X @ id ) )
% 0.32/0.48                    | ~ ! [B: term] :
% 0.32/0.48                          ( ~ ( Q @ B )
% 0.32/0.48                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.48                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.32/0.48               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.32/0.48                    ( ~ ! [A: term,B: term] :
% 0.32/0.48                          ( ~ ( P @ id @ A @ id )
% 0.32/0.48                          | ~ ( P @ id @ B @ id )
% 0.32/0.48                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48                    | ~ ! [F: subst > term > term] :
% 0.32/0.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                          | ~ ! [A: term] :
% 0.32/0.48                                ( ~ ( P @ id @ A @ id )
% 0.32/0.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.32/0.48      & ( hoaslaminj
% 0.32/0.48      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.32/0.48                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48            | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.48             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.32/0.48            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.32/0.48              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.32/0.48      & ( hoasinduction_lem3aaa
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.32/0.48            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.32/0.48                  ( ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.32/0.48                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.32/0.48                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.32/0.48                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.32/0.48                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.32/0.48                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.48      & induction2lem_gthm
% 0.32/0.48      & ( hoasinduction_lem3aa_lthm
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.48            ( ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.48      & ( hoasinduction_lem3
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48            | ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.32/0.48      & ( hoasinduction_lem2
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48            | ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ A @ id )
% 0.32/0.48                  | ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.32/0.48            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.32/0.48            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.32/0.48      & ( termmset_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) ) ) )
% 0.32/0.48      & hoasinduction_lem1
% 0.32/0.48      & hoaslamnotap_lthm
% 0.32/0.48      & ( pushprop_lem1v2_lthm
% 0.32/0.48      <=> ( ! [A: term,M: subst] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.48         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.32/0.48              ( ~ ( P @ A )
% 0.32/0.48              | ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.32/0.48              | ( Q @ one ) ) ) )
% 0.32/0.48      & hoasapnotvar
% 0.32/0.48      & ( hoasinduction_lem0
% 0.32/0.48      <=> ! [P: subst > term > subst > $o] :
% 0.32/0.48            ~ ! [Q: term > $o] :
% 0.32/0.48                ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ id @ X @ id ) ) )
% 0.32/0.48      & ( hoasinduction
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48            | ~ ! [A: term] :
% 0.32/0.48                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.48                  | ( P @ id @ A @ id ) )
% 0.32/0.48            | ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ A @ id )
% 0.32/0.48                  | ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48            | ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.32/0.48      & hoasinduction_gthm
% 0.32/0.48      & axapp
% 0.32/0.48      & hoaslamnotvar_lthm
% 0.32/0.48      & pushprop_lem3v2_lthm
% 0.32/0.48      & ( hoasinduction_lem3b_lthm
% 0.32/0.48      <=> ! [B: term] :
% 0.32/0.48            ~ ! [F: subst > term > term] :
% 0.32/0.48                ( ( F @ sh @ one )
% 0.32/0.48               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.32/0.48      & ulamvarind
% 0.32/0.48      & ( induction
% 0.32/0.48      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.32/0.48            ( ~ ! [A: term] :
% 0.32/0.48                  ( ~ ( var @ A )
% 0.32/0.48                  | ( P @ A ) )
% 0.32/0.48            | ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ A )
% 0.32/0.48                  | ~ ( P @ B )
% 0.32/0.48                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48            | ~ ! [A: term] :
% 0.32/0.48                  ( ~ ( P @ A )
% 0.32/0.48                  | ( P @ ( lam @ A ) ) )
% 0.32/0.48            | ( P @ Bound_variable_2140 ) ) )
% 0.32/0.48      & ( hoasinduction_lem3a_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.48                ( ~ ! [F: subst > term > term] :
% 0.32/0.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                      | ~ ! [A: term] :
% 0.32/0.48                            ( ~ ( P @ id @ A @ id )
% 0.32/0.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( P @ id @ B @ id )
% 0.32/0.48                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.32/0.48           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.32/0.48                ( ~ ! [F: subst > term > term] :
% 0.32/0.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                      | ~ ! [A: term] :
% 0.32/0.48                            ( ~ ( P @ id @ A @ id )
% 0.32/0.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( P @ id @ B @ id )
% 0.32/0.48                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.32/0.48      & termmset_gthm
% 0.32/0.48      & ( hoasinduction_lem3aa
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.48            ( ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.48      & pushprop_lem1v2_gthm
% 0.32/0.48      & hoaslamnotap_gthm
% 0.32/0.48      & hoaslamnotvar_gthm
% 0.32/0.48      & hoasinduction_lem3b_gthm
% 0.32/0.48      & pushprop_lem2v2
% 0.32/0.48      & hoasinduction_lem3a_gthm
% 0.32/0.48      & axclos
% 0.32/0.48      & axassoc
% 0.32/0.48      & ( hoasinduction_lem2v2
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48            | ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ A @ id )
% 0.32/0.48                  | ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48            | ~ ! [X: term] :
% 0.32/0.48                  ( ( Q @ X )
% 0.32/0.48                  = ( P @ id @ X @ id ) )
% 0.32/0.48            | ~ ( Q @ Bound_variable_2820 )
% 0.32/0.48            | ~ ( Q @ Bound_variable_2822 )
% 0.32/0.48            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.32/0.48      & pushprop_lthm
% 0.32/0.48      & ( apinj2
% 0.32/0.48      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48            ( ( ( ap @ A @ C )
% 0.32/0.48             != ( ap @ B @ D ) )
% 0.32/0.48            | ( C = D ) ) )
% 0.32/0.48      & ( apinj1
% 0.32/0.48      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48            ( ( ( ap @ A @ C )
% 0.32/0.48             != ( ap @ B @ D ) )
% 0.32/0.48            | ( A = B ) ) )
% 0.32/0.48      & ( hoasapinj2_lthm
% 0.32/0.48      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48              ( ( ( ap @ A @ C )
% 0.32/0.48               != ( ap @ B @ D ) )
% 0.32/0.48              | ( C = D ) )
% 0.32/0.48         => ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.48               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.48              | ( C = D ) ) ) )
% 0.32/0.48      & ( hoasinduction_lem3v2a
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.48            ( ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [X: term] :
% 0.32/0.48                  ( ( Q @ X )
% 0.32/0.48                  = ( P @ id @ X @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( Q @ B )
% 0.32/0.48                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.48            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.32/0.48      & ( hoasapinj1_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ( ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48                ( ( ( ap @ A @ C )
% 0.32/0.48                 != ( ap @ B @ D ) )
% 0.32/0.48                | ( A = B ) )
% 0.32/0.48           => ! [A: term,B: term,C: term,D: term] :
% 0.32/0.48                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.48                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.48                | ( A = B ) ) ) ) )
% 0.32/0.48      & ( hoaslaminj_lthm
% 0.32/0.48      <=> ( ! [A: term,M: subst] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.48         => ( ! [A: term,M: subst] :
% 0.32/0.48                ( M
% 0.32/0.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.48           => ( ! [A: term,B: term] :
% 0.32/0.48                  ( ( ( lam @ A )
% 0.32/0.48                   != ( lam @ B ) )
% 0.32/0.48                  | ( A = B ) )
% 0.32/0.48             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.32/0.48                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.48                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.32/0.48                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.32/0.48                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.32/0.48      & ( axvarcons
% 0.32/0.48      <=> ! [A: term,M: subst] :
% 0.32/0.48            ( A
% 0.32/0.48            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.32/0.48      & ( axscons
% 0.32/0.48      <=> ! [M: subst] :
% 0.32/0.48            ( M
% 0.32/0.48            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.32/0.48      & hoasinduction_lem2v2_gthm
% 0.32/0.48      & ( axidr
% 0.32/0.48      <=> ! [M: subst] :
% 0.32/0.48            ( M
% 0.32/0.48            = ( comp @ M @ id ) ) )
% 0.32/0.48      & ( pushprop_lem1
% 0.32/0.48      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.32/0.48            ( ~ ( P @ A )
% 0.32/0.48            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.32/0.48      & ( laminj
% 0.32/0.48      <=> ! [A: term,B: term] :
% 0.32/0.48            ( ( ( lam @ A )
% 0.32/0.48             != ( lam @ B ) )
% 0.32/0.48            | ( A = B ) ) )
% 0.32/0.48      & ( hoasinduction_lem3_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.48                ( ~ ! [F: subst > term > term] :
% 0.32/0.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                      | ~ ! [A: term] :
% 0.32/0.48                            ( ~ ( P @ id @ A @ id )
% 0.32/0.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( P @ id @ B @ id )
% 0.32/0.48                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.32/0.48           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.48                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48                | ~ ! [F: subst > term > term] :
% 0.32/0.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                      | ~ ! [A: term] :
% 0.32/0.48                            ( ~ ( P @ id @ A @ id )
% 0.32/0.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( P @ id @ B @ id )
% 0.32/0.48                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.32/0.48      & ( pushprop_lem0
% 0.32/0.48      <=> ! [P: term > $o,A: term,M: subst] :
% 0.32/0.48            ~ ! [Q: term > $o] :
% 0.32/0.48                ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.32/0.48      & pushprop_gthm
% 0.32/0.48      & axabs
% 0.32/0.48      & ( hoasinduction_lem3v2a_lthm
% 0.32/0.48      <=> ( ! [B: term] :
% 0.32/0.48              ~ ! [F: subst > term > term] :
% 0.32/0.48                  ~ ! [A: term,M: subst] :
% 0.32/0.48                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.48                      = ( F @ M @ A ) )
% 0.32/0.48         => ( ! [A: term] :
% 0.32/0.48                ( A
% 0.32/0.48                = ( sub @ A @ id ) )
% 0.32/0.48           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.48                ( ~ ! [F: subst > term > term] :
% 0.32/0.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                      | ~ ! [A: term] :
% 0.32/0.48                            ( ~ ( P @ id @ A @ id )
% 0.32/0.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                | ~ ! [X: term] :
% 0.32/0.48                      ( ( Q @ X )
% 0.32/0.48                      = ( P @ id @ X @ id ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( Q @ B )
% 0.32/0.48                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.48                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.32/0.48      & hoasinduction_lem2_lthm
% 0.32/0.48      & hoasapinj2_gthm
% 0.32/0.48      & hoasinduction_lem1_lthm
% 0.32/0.48      & ~ lamnotap
% 0.32/0.48      & hoasapinj1_gthm
% 0.32/0.48      & hoaslamnotvar
% 0.32/0.48      & ( axidl
% 0.32/0.48      <=> ! [M: subst] :
% 0.32/0.48            ( M
% 0.32/0.48            = ( comp @ id @ M ) ) )
% 0.32/0.48      & hoaslaminj_gthm
% 0.32/0.48      & ( induction2_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.48                ( ~ ! [A: term,B: term] :
% 0.32/0.48                      ( ~ ( P @ A )
% 0.32/0.48                      | ~ ( P @ B )
% 0.32/0.48                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                | ~ ! [A: term] :
% 0.32/0.48                      ( ~ ! [B: term] :
% 0.32/0.48                            ( ~ ( P @ B )
% 0.32/0.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                      | ( P @ ( lam @ A ) ) )
% 0.32/0.48                | ~ ! [B: term] :
% 0.32/0.48                      ( ~ ( var @ B )
% 0.32/0.48                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.48                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.32/0.48           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.48                ( ~ ! [A: term] :
% 0.32/0.48                      ( ~ ( var @ A )
% 0.32/0.48                      | ( P @ A ) )
% 0.32/0.48                | ~ ! [A: term,B: term] :
% 0.32/0.48                      ( ~ ( P @ A )
% 0.32/0.48                      | ~ ( P @ B )
% 0.32/0.48                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                | ~ ! [A: term] :
% 0.32/0.48                      ( ~ ! [B: term] :
% 0.32/0.48                            ( ~ ( P @ B )
% 0.32/0.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                      | ( P @ ( lam @ A ) ) )
% 0.32/0.48                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.32/0.48      & ( hoasinduction_lem0_lthm
% 0.32/0.48      <=> ! [P: subst > term > subst > $o] :
% 0.32/0.48            ~ ! [Q: term > $o] :
% 0.32/0.48                ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ id @ X @ id ) ) )
% 0.32/0.48      & ( substmonoid_lthm
% 0.32/0.48      <=> ( ! [M: subst] :
% 0.32/0.48              ( M
% 0.32/0.48              = ( comp @ id @ M ) )
% 0.32/0.48         => ( ! [M: subst] :
% 0.32/0.48                ( M
% 0.32/0.48                = ( comp @ M @ id ) )
% 0.32/0.48           => ( ! [M: subst] :
% 0.32/0.48                  ( M
% 0.32/0.48                  = ( comp @ id @ M ) )
% 0.32/0.48              & ! [M: subst] :
% 0.32/0.48                  ( M
% 0.32/0.48                  = ( comp @ M @ id ) ) ) ) ) )
% 0.32/0.48      & pushprop
% 0.32/0.48      & hoasinduction_lem3_gthm
% 0.32/0.48      & hoasinduction_lem2_gthm
% 0.32/0.48      & ( hoasinduction_lem3b
% 0.32/0.48      <=> ! [B: term] :
% 0.32/0.48            ~ ! [F: subst > term > term] :
% 0.32/0.48                ( ( F @ sh @ one )
% 0.32/0.48               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.32/0.48      & ( substmonoid
% 0.32/0.48      <=> ( ! [M: subst] :
% 0.32/0.48              ( M
% 0.32/0.48              = ( comp @ id @ M ) )
% 0.32/0.48          & ! [M: subst] :
% 0.32/0.48              ( M
% 0.32/0.48              = ( comp @ M @ id ) ) ) )
% 0.32/0.48      & lamnotvar
% 0.32/0.48      & ( hoasinduction_lem3a
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.32/0.48            ( ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.32/0.48      & hoasinduction_lem1_gthm
% 0.32/0.48      & ( hoasinduction_no_psi_cond
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.32/0.48            ( ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ id @ A @ id )
% 0.32/0.48                  | ~ ( P @ id @ B @ id )
% 0.32/0.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48            | ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.32/0.48      & induction2_gthm
% 0.32/0.48      & pushprop_lem2v2_lthm
% 0.32/0.48      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.48      & ( hoaslamnotap
% 0.32/0.48      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48            | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.48             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.32/0.48      & substmonoid_gthm
% 0.32/0.48      & ulamvarsh
% 0.32/0.48      & ( induction2
% 0.32/0.48      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.48            ( ~ ! [A: term] :
% 0.32/0.48                  ( ~ ( var @ A )
% 0.32/0.48                  | ( P @ A ) )
% 0.32/0.48            | ~ ! [A: term,B: term] :
% 0.32/0.48                  ( ~ ( P @ A )
% 0.32/0.48                  | ~ ( P @ B )
% 0.32/0.48                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48            | ~ ! [A: term] :
% 0.32/0.48                  ( ~ ! [B: term] :
% 0.32/0.48                        ( ~ ( P @ B )
% 0.32/0.48                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                  | ( P @ ( lam @ A ) ) )
% 0.32/0.48            | ( P @ Bound_variable_2367 ) ) )
% 0.32/0.48      & pushprop_lem3v2
% 0.32/0.48      & pushprop_lem2v2_gthm
% 0.32/0.48      & ( pushprop_lem1_lthm
% 0.32/0.48      <=> ( ! [A: term,M: subst] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.48         => ( ! [A: term,M: subst] :
% 0.32/0.48                ( M
% 0.32/0.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.48           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.32/0.48                ( ~ ( P @ A )
% 0.32/0.48                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.32/0.48      & ( hoasinduction_lem3v2
% 0.32/0.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.32/0.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48            | ~ ! [F: subst > term > term] :
% 0.32/0.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                  | ~ ! [A: term] :
% 0.32/0.48                        ( ~ ( P @ id @ A @ id )
% 0.32/0.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48            | ~ ! [X: term] :
% 0.32/0.48                  ( ( Q @ X )
% 0.32/0.48                  = ( P @ id @ X @ id ) )
% 0.32/0.48            | ~ ! [B: term] :
% 0.32/0.48                  ( ~ ( Q @ B )
% 0.32/0.48                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.32/0.48            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.32/0.48      & ( axshiftcons
% 0.32/0.48      <=> ! [A: term,M: subst] :
% 0.32/0.48            ( M
% 0.32/0.48            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.32/0.48      & ( termmset
% 0.32/0.48      <=> ! [A: term] :
% 0.32/0.48            ( A
% 0.32/0.48            = ( sub @ A @ id ) ) )
% 0.32/0.48      & ( pushprop_lem0_lthm
% 0.32/0.48      <=> ! [P: term > $o,A: term,M: subst] :
% 0.32/0.48            ~ ! [Q: term > $o] :
% 0.32/0.48                ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.32/0.48      & hoasapnotvar_lthm
% 0.32/0.48      & ( hoasinduction_lem3v2_lthm
% 0.32/0.48      <=> ( ! [A: term] :
% 0.32/0.48              ( A
% 0.32/0.48              = ( sub @ A @ id ) )
% 0.32/0.48         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.32/0.48              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48              | ~ ! [F: subst > term > term] :
% 0.32/0.48                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                    | ~ ! [A: term] :
% 0.32/0.48                          ( ~ ( P @ id @ A @ id )
% 0.32/0.48                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48              | ~ ! [X: term] :
% 0.32/0.48                    ( ( Q @ X )
% 0.32/0.48                    = ( P @ id @ X @ id ) )
% 0.32/0.48              | ~ ! [B: term] :
% 0.32/0.48                    ( ~ ( Q @ B )
% 0.32/0.48                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.32/0.48              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.32/0.48      & ( axvarid
% 0.32/0.48      <=> ! [A: term] :
% 0.32/0.48            ( A
% 0.32/0.48            = ( sub @ A @ id ) ) )
% 0.32/0.48      & ( hoasinduction_lthm_3
% 0.32/0.48      <=> ( ! [P: subst > term > subst > $o] :
% 0.32/0.48              ~ ! [Q: term > $o] :
% 0.32/0.48                  ~ ! [X: term] :
% 0.32/0.48                      ( ( Q @ X )
% 0.32/0.48                      = ( P @ id @ X @ id ) )
% 0.32/0.48         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.48                ( ~ ! [A: term] :
% 0.32/0.48                      ( ~ ( var @ A )
% 0.32/0.48                      | ( P @ A ) )
% 0.32/0.48                | ~ ! [A: term,B: term] :
% 0.32/0.48                      ( ~ ( P @ A )
% 0.32/0.48                      | ~ ( P @ B )
% 0.32/0.48                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.48                | ~ ! [A: term] :
% 0.32/0.48                      ( ~ ! [B: term] :
% 0.32/0.48                            ( ~ ( P @ B )
% 0.32/0.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.48                      | ( P @ ( lam @ A ) ) )
% 0.32/0.48                | ( P @ Bound_variable_2367 ) )
% 0.32/0.48           => ( ! [A: term] :
% 0.32/0.48                  ( A
% 0.32/0.48                  = ( sub @ A @ id ) )
% 0.32/0.48             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.48                    ( ~ ! [F: subst > term > term] :
% 0.32/0.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                          | ~ ! [A: term] :
% 0.32/0.48                                ( ~ ( P @ id @ A @ id )
% 0.32/0.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                    | ~ ! [X: term] :
% 0.32/0.48                          ( ( Q @ X )
% 0.32/0.48                          = ( P @ id @ X @ id ) )
% 0.32/0.48                    | ~ ! [B: term] :
% 0.32/0.48                          ( ~ ( Q @ B )
% 0.32/0.48                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.48                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.32/0.48               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.48                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.48                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.48                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.48                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.48                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.48                    | ~ ! [A: term] :
% 0.32/0.48                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.48                          | ( P @ id @ A @ id ) )
% 0.32/0.48                    | ~ ! [A: term,B: term] :
% 0.32/0.48                          ( ~ ( P @ id @ A @ id )
% 0.32/0.48                          | ~ ( P @ id @ B @ id )
% 0.32/0.48                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.48                    | ~ ! [F: subst > term > term] :
% 0.32/0.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48                          | ~ ! [A: term] :
% 0.32/0.48                                ( ~ ( P @ id @ A @ id )
% 0.32/0.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.48                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.32/0.48  
% 0.32/0.48  thf(hoasinduction_lem3aa,conjecture,
% 0.32/0.48      ( hoasinduction_lem3aa
% 0.32/0.48      = ( ! [P: subst > term > subst > $o] :
% 0.32/0.48            ( ! [F: subst > term > term] :
% 0.32/0.48                ( ! [M: subst,A: term,N: subst] :
% 0.32/0.48                    ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.48                    = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.48               => ( ! [A: term] :
% 0.32/0.48                      ( ( P @ id @ A @ id )
% 0.32/0.48                     => ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.48                 => ( P @ id
% 0.32/0.48                    @ ( hoaslam @ id
% 0.32/0.48                      @ ^ [M: subst,A: term] : ( F @ M @ A ) )
% 0.32/0.48                    @ id ) ) )
% 0.32/0.48           => ! [A: term] :
% 0.32/0.48                ( ! [B: term] :
% 0.32/0.48                    ( ( P @ id @ B @ id )
% 0.32/0.48                   => ( P @ id @ ( sub @ A @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.48               => ( P @ id @ ( lam @ ( sub @ A @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ) ).
% 0.32/0.48  
% 0.32/0.48  %------------------------------------------------------------------------------
% 0.32/0.48  ------------------------
% 2.39/1.47  ---- Embedded in THF ---
% 2.39/1.47  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.39/1.47  %%% Generated on Tue May 05 09:09:03 EDT 2026
% 2.39/1.47  %%% using '$$dhol' embedding, version 1.3.0.
% 2.39/1.47  %%% Logic specification used:
% 2.39/1.47  %%% thf(spec, logic, $$dhol).
% 2.39/1.47  
% 2.39/1.47  % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.gm43Nmhqtq/DTF2DTF31880.p
% See solution above
% 2.39/1.47  ------------------------
% 2.39/1.49  ---- Cleaned THF ---
% 2.39/1.49  thf(term_type,type,
% 2.39/1.49      term: $tType ).
% 2.39/1.49  
% 2.39/1.49  thf(subst_type,type,
% 2.39/1.49      subst: $tType ).
% 2.39/1.49  
% 2.39/1.49  thf(one_decl,type,
% 2.39/1.49      one: term ).
% 2.39/1.49  
% 2.39/1.49  thf(ap_decl,type,
% 2.39/1.49      ap: term > term > term ).
% 2.39/1.49  
% 2.39/1.49  thf(lam_decl,type,
% 2.39/1.49      lam: term > term ).
% 2.39/1.49  
% 2.39/1.49  thf(sub_decl,type,
% 2.39/1.49      sub: term > subst > term ).
% 2.39/1.49  
% 2.39/1.49  thf(id_decl,type,
% 2.39/1.49      id: subst ).
% 2.39/1.49  
% 2.39/1.49  thf(sh_decl,type,
% 2.39/1.49      sh: subst ).
% 2.39/1.49  
% 2.39/1.49  thf(push_decl,type,
% 2.39/1.49      push: term > subst > subst ).
% 2.39/1.49  
% 2.39/1.49  thf(comp_decl,type,
% 2.39/1.49      comp: subst > subst > subst ).
% 2.39/1.49  
% 2.39/1.49  thf(var_decl,type,
% 2.39/1.49      var: term > $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1v2_decl,type,
% 2.39/1.49      pushprop_lem1v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1_gthm_decl,type,
% 2.39/1.49      pushprop_lem1_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axmap_decl,type,
% 2.39/1.49      axmap: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem0_gthm_decl,type,
% 2.39/1.49      pushprop_lem0_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(shinj_decl,type,
% 2.39/1.49      shinj: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem1v2_decl,type,
% 2.39/1.49      hoasinduction_lem1v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem1v2_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem1v2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasap_decl,type,
% 2.39/1.49      hoasap: subst > term > subst > term > term ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2lem_decl,type,
% 2.39/1.49      induction2lem: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2_f_decl,type,
% 2.39/1.49      hoasinduction_lem3v2_f: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axvarshift_decl,type,
% 2.39/1.49      axvarshift: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj2_decl,type,
% 2.39/1.49      hoasapinj2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapnotvar_gthm_decl,type,
% 2.39/1.49      hoasapnotvar_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj1_decl,type,
% 2.39/1.49      hoasapinj1: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(ulamvar1_decl,type,
% 2.39/1.49      ulamvar1: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2lem_lthm_decl,type,
% 2.39/1.49      induction2lem_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem3v2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(apnotvar_decl,type,
% 2.39/1.49      apnotvar: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lthm_orig_decl,type,
% 2.39/1.49      pushprop_lthm_orig: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3v2_f_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lthm_decl,type,
% 2.39/1.49      hoasinduction_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 2.39/1.49      hoasinduction_no_psi_cond_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslaminj_decl,type,
% 2.39/1.49      hoaslaminj: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3aaa_decl,type,
% 2.39/1.49      hoasinduction_lem3aaa: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2lem_gthm_decl,type,
% 2.39/1.49      induction2lem_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3aa_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3aa_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3_decl,type,
% 2.39/1.49      hoasinduction_lem3: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem2_decl,type,
% 2.39/1.49      hoasinduction_lem2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(termmset_lthm_decl,type,
% 2.39/1.49      termmset_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem1_decl,type,
% 2.39/1.49      hoasinduction_lem1: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotap_lthm_decl,type,
% 2.39/1.49      hoaslamnotap_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1v2_lthm_decl,type,
% 2.39/1.49      pushprop_lem1v2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapnotvar_decl,type,
% 2.39/1.49      hoasapnotvar: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem0_decl,type,
% 2.39/1.49      hoasinduction_lem0: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_decl,type,
% 2.39/1.49      hoasinduction: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_gthm_decl,type,
% 2.39/1.49      hoasinduction_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axapp_decl,type,
% 2.39/1.49      axapp: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotvar_lthm_decl,type,
% 2.39/1.49      hoaslamnotvar_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem3v2_lthm_decl,type,
% 2.39/1.49      pushprop_lem3v2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3b_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3b_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(ulamvarind_decl,type,
% 2.39/1.49      ulamvarind: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction_decl,type,
% 2.39/1.49      induction: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3a_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3a_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(termmset_gthm_decl,type,
% 2.39/1.49      termmset_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3aa_decl,type,
% 2.39/1.49      hoasinduction_lem3aa: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1v2_gthm_decl,type,
% 2.39/1.49      pushprop_lem1v2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotap_gthm_decl,type,
% 2.39/1.49      hoaslamnotap_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotvar_gthm_decl,type,
% 2.39/1.49      hoaslamnotvar_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3b_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem3b_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem2v2_decl,type,
% 2.39/1.49      pushprop_lem2v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3a_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem3a_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axclos_decl,type,
% 2.39/1.49      axclos: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axassoc_decl,type,
% 2.39/1.49      axassoc: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem2v2_decl,type,
% 2.39/1.49      hoasinduction_lem2v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lthm_decl,type,
% 2.39/1.49      pushprop_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(apinj2_decl,type,
% 2.39/1.49      apinj2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(apinj1_decl,type,
% 2.39/1.49      apinj1: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj2_lthm_decl,type,
% 2.39/1.49      hoasapinj2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2a_decl,type,
% 2.39/1.49      hoasinduction_lem3v2a: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj1_lthm_decl,type,
% 2.39/1.49      hoasapinj1_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslaminj_lthm_decl,type,
% 2.39/1.49      hoaslaminj_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axvarcons_decl,type,
% 2.39/1.49      axvarcons: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslam_decl,type,
% 2.39/1.49      hoaslam: subst > ( subst > term > term ) > term ).
% 2.39/1.49  
% 2.39/1.49  thf(axscons_decl,type,
% 2.39/1.49      axscons: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem2v2_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem2v2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axidr_decl,type,
% 2.39/1.49      axidr: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1_decl,type,
% 2.39/1.49      pushprop_lem1: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(laminj_decl,type,
% 2.39/1.49      laminj: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem0_decl,type,
% 2.39/1.49      pushprop_lem0: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_gthm_decl,type,
% 2.39/1.49      pushprop_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axabs_decl,type,
% 2.39/1.49      axabs: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3v2a_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem2_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj2_gthm_decl,type,
% 2.39/1.49      hoasapinj2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_p_and_p_prime_decl,type,
% 2.39/1.49      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem1_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem1_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(lamnotap_decl,type,
% 2.39/1.49      lamnotap: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapinj1_gthm_decl,type,
% 2.39/1.49      hoasapinj1_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotvar_decl,type,
% 2.39/1.49      hoaslamnotvar: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axidl_decl,type,
% 2.39/1.49      axidl: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslaminj_gthm_decl,type,
% 2.39/1.49      hoaslaminj_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2_lthm_decl,type,
% 2.39/1.49      induction2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem0_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem0_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(substmonoid_lthm_decl,type,
% 2.39/1.49      substmonoid_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_decl,type,
% 2.39/1.49      pushprop: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem3_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem2_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3b_decl,type,
% 2.39/1.49      hoasinduction_lem3b: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(substmonoid_decl,type,
% 2.39/1.49      substmonoid: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(lamnotvar_decl,type,
% 2.39/1.49      lamnotvar: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3a_decl,type,
% 2.39/1.49      hoasinduction_lem3a: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem1_gthm_decl,type,
% 2.39/1.49      hoasinduction_lem1_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_no_psi_cond_decl,type,
% 2.39/1.49      hoasinduction_no_psi_cond: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2_gthm_decl,type,
% 2.39/1.49      induction2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem2v2_lthm_decl,type,
% 2.39/1.49      pushprop_lem2v2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasvar_decl,type,
% 2.39/1.49      hoasvar: subst > term > subst > $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoaslamnotap_decl,type,
% 2.39/1.49      hoaslamnotap: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(substmonoid_gthm_decl,type,
% 2.39/1.49      substmonoid_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(ulamvarsh_decl,type,
% 2.39/1.49      ulamvarsh: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(induction2_decl,type,
% 2.39/1.49      induction2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem3v2_decl,type,
% 2.39/1.49      pushprop_lem3v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem2v2_gthm_decl,type,
% 2.39/1.49      pushprop_lem2v2_gthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem1_lthm_decl,type,
% 2.39/1.49      pushprop_lem1_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2_decl,type,
% 2.39/1.49      hoasinduction_lem3v2: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axshiftcons_decl,type,
% 2.39/1.49      axshiftcons: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(termmset_decl,type,
% 2.39/1.49      termmset: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_lem0_lthm_decl,type,
% 2.39/1.49      pushprop_lem0_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasapnotvar_lthm_decl,type,
% 2.39/1.49      hoasapnotvar_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3v2_lthm_decl,type,
% 2.39/1.49      hoasinduction_lem3v2_lthm: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(pushprop_p_and_p_prime_decl,type,
% 2.39/1.49      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 2.39/1.49  
% 2.39/1.49  thf(axvarid_decl,type,
% 2.39/1.49      axvarid: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lthm_3_decl,type,
% 2.39/1.49      hoasinduction_lthm_3: $o ).
% 2.39/1.49  
% 2.39/1.49  thf(d_term_type,type,
% 2.39/1.49      d_term: $tType ).
% 2.39/1.49  
% 2.39/1.49  thf(d_subst_type,type,
% 2.39/1.49      d_subst: $tType ).
% 2.39/1.49  
% 2.39/1.49  thf(d2term_decl,type,
% 2.39/1.49      d2term: d_term > term ).
% 2.39/1.49  
% 2.39/1.49  thf(d2subst_decl,type,
% 2.39/1.49      d2subst: d_subst > subst ).
% 2.39/1.49  
% 2.39/1.49  thf(d_one_decl,type,
% 2.39/1.49      d_one: d_term ).
% 2.39/1.49  
% 2.39/1.49  thf(d_id_decl,type,
% 2.39/1.49      d_id: d_subst ).
% 2.39/1.49  
% 2.39/1.49  thf(alg444_1,axiom,
% 2.39/1.49      ( ! [T: term] :
% 2.39/1.49        ? [DT: d_term] :
% 2.39/1.49          ( T
% 2.39/1.49          = ( d2term @ DT ) )
% 2.39/1.49      & ! [DT: d_term] : ( DT = d_one )
% 2.39/1.49      & ! [DT1: d_term,DT2: d_term] :
% 2.39/1.49          ( ( ( d2term @ DT1 )
% 2.39/1.49            = ( d2term @ DT2 ) )
% 2.39/1.49         => ( DT1 = DT2 ) )
% 2.39/1.49      & ! [S: subst] :
% 2.39/1.49        ? [DS: d_subst] :
% 2.39/1.49          ( S
% 2.39/1.49          = ( d2subst @ DS ) )
% 2.39/1.49      & ! [DS: d_subst] : ( DS = d_id )
% 2.39/1.49      & ! [DS1: d_subst,DS2: d_subst] :
% 2.39/1.49          ( ( ( d2subst @ DS1 )
% 2.39/1.49            = ( d2subst @ DS2 ) )
% 2.39/1.49         => ( DS1 = DS2 ) )
% 2.39/1.49      & ( one
% 2.39/1.49        = ( d2term @ d_one ) )
% 2.39/1.49      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 2.39/1.49        = ( d2term @ d_one ) )
% 2.39/1.49      & ( ( lam @ ( d2term @ d_one ) )
% 2.39/1.49        = ( d2term @ d_one ) )
% 2.39/1.49      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.49        = ( d2term @ d_one ) )
% 2.39/1.49      & ( id
% 2.39/1.49        = ( d2subst @ d_id ) )
% 2.39/1.49      & ( sh
% 2.39/1.49        = ( d2subst @ d_id ) )
% 2.39/1.49      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.49        = ( d2subst @ d_id ) )
% 2.39/1.49      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 2.39/1.49        = ( d2subst @ d_id ) )
% 2.39/1.49      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 2.39/1.49        = ( d2term @ d_one ) )
% 2.39/1.49      & ( hoaslam
% 2.39/1.49        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 2.39/1.49      & ( hoasinduction_p_and_p_prime
% 2.39/1.49        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 2.39/1.49            ! [X: term] :
% 2.39/1.49              ( ( Q @ X )
% 2.39/1.49              = ( P @ id @ X @ id ) ) ) )
% 2.39/1.49      & ( pushprop_p_and_p_prime
% 2.39/1.49        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 2.39/1.49            ! [X: term] :
% 2.39/1.49              ( ( Q @ X )
% 2.39/1.49              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 2.39/1.49      & ~ ( var @ ( d2term @ d_one ) )
% 2.39/1.49      & ( pushprop_lem1v2
% 2.39/1.49      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.39/1.49            ( ~ ( P @ A )
% 2.39/1.49            | ~ ! [X: term] :
% 2.39/1.49                  ( ( Q @ X )
% 2.39/1.49                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.39/1.49            | ( Q @ one ) ) )
% 2.39/1.49      & pushprop_lem1_gthm
% 2.39/1.49      & axmap
% 2.39/1.49      & pushprop_lem0_gthm
% 2.39/1.49      & ( shinj
% 2.39/1.49      <=> ! [A: term,B: term] :
% 2.39/1.49            ( ( ( sub @ A @ sh )
% 2.39/1.49             != ( sub @ B @ sh ) )
% 2.39/1.49            | ( A = B ) ) )
% 2.39/1.49      & hoasinduction_lem1v2
% 2.39/1.49      & hoasinduction_lem1v2_gthm
% 2.39/1.49      & ( induction2lem
% 2.39/1.49      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.49            ( ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ A )
% 2.39/1.49                  | ~ ( P @ B )
% 2.39/1.49                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49            | ~ ! [A: term] :
% 2.39/1.49                  ( ~ ! [B: term] :
% 2.39/1.49                        ( ~ ( P @ B )
% 2.39/1.49                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                  | ( P @ ( lam @ A ) ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( var @ B )
% 2.39/1.49                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.49            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 2.39/1.49      & ( hoasinduction_lem3v2_f
% 2.39/1.49      <=> ! [B: term] :
% 2.39/1.49            ~ ! [F: subst > term > term] :
% 2.39/1.49                ~ ! [A: term,M: subst] :
% 2.39/1.49                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.49                    = ( F @ M @ A ) ) )
% 2.39/1.49      & axvarshift
% 2.39/1.49      & ( hoasapinj2
% 2.39/1.49      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.49             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.49            | ( C = D ) ) )
% 2.39/1.49      & hoasapnotvar_gthm
% 2.39/1.49      & ( hoasapinj1
% 2.39/1.49      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.49             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.49            | ( A = B ) ) )
% 2.39/1.49      & ~ ulamvar1
% 2.39/1.49      & ( induction2lem_lthm
% 2.39/1.49      <=> ( ! [A: term,M: subst] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.49         => ( ! [A: term,M: subst] :
% 2.39/1.49                ( M
% 2.39/1.49                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.49           => ( ! [M: subst] :
% 2.39/1.49                  ( M
% 2.39/1.49                  = ( comp @ M @ id ) )
% 2.39/1.49             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 2.39/1.49                    ( ~ ! [A: term] :
% 2.39/1.49                          ( ~ ( var @ A )
% 2.39/1.49                          | ( P @ A ) )
% 2.39/1.49                    | ~ ! [A: term,B: term] :
% 2.39/1.49                          ( ~ ( P @ A )
% 2.39/1.49                          | ~ ( P @ B )
% 2.39/1.49                          | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                    | ~ ! [A: term] :
% 2.39/1.49                          ( ~ ( P @ A )
% 2.39/1.49                          | ( P @ ( lam @ A ) ) )
% 2.39/1.49                    | ( P @ Bound_variable_2140 ) )
% 2.39/1.49               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.49                    ( ~ ! [A: term,B: term] :
% 2.39/1.49                          ( ~ ( P @ A )
% 2.39/1.49                          | ~ ( P @ B )
% 2.39/1.49                          | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                    | ~ ! [A: term] :
% 2.39/1.49                          ( ~ ! [B: term] :
% 2.39/1.49                                ( ~ ( P @ B )
% 2.39/1.49                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                          | ( P @ ( lam @ A ) ) )
% 2.39/1.49                    | ~ ! [B: term] :
% 2.39/1.49                          ( ~ ( var @ B )
% 2.39/1.49                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.49                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 2.39/1.49      & hoasinduction_lem3v2_gthm
% 2.39/1.49      & apnotvar
% 2.39/1.49      & pushprop_lthm_orig
% 2.39/1.49      & ( hoasinduction_lem3v2_f_lthm
% 2.39/1.49      <=> ! [B: term] :
% 2.39/1.49            ~ ! [F: subst > term > term] :
% 2.39/1.49                ~ ! [A: term,M: subst] :
% 2.39/1.49                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.49                    = ( F @ M @ A ) ) )
% 2.39/1.49      & ( hoasinduction_lthm
% 2.39/1.49      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.49              ( ~ ! [A: term] :
% 2.39/1.49                    ( ~ ( var @ A )
% 2.39/1.49                    | ( P @ A ) )
% 2.39/1.49              | ~ ! [A: term,B: term] :
% 2.39/1.49                    ( ~ ( P @ A )
% 2.39/1.49                    | ~ ( P @ B )
% 2.39/1.49                    | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49              | ~ ! [A: term] :
% 2.39/1.49                    ( ~ ! [B: term] :
% 2.39/1.49                          ( ~ ( P @ B )
% 2.39/1.49                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                    | ( P @ ( lam @ A ) ) )
% 2.39/1.49              | ( P @ Bound_variable_2367 ) )
% 2.39/1.49         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.39/1.49                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49                | ~ ! [A: term,B: term] :
% 2.39/1.49                      ( ~ ( P @ id @ A @ id )
% 2.39/1.49                      | ~ ( P @ id @ B @ id )
% 2.39/1.49                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.39/1.49                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.39/1.49                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 2.39/1.49           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49                  | ~ ! [F: subst > term > term] :
% 2.39/1.49                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                        | ~ ! [A: term] :
% 2.39/1.49                              ( ~ ( P @ id @ A @ id )
% 2.39/1.49                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                  | ~ ! [B: term] :
% 2.39/1.49                        ( ~ ( P @ id @ B @ id )
% 2.39/1.49                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 2.39/1.49             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.49                        | ( P @ id @ A @ id ) )
% 2.39/1.49                  | ~ ! [A: term,B: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ~ ( P @ id @ B @ id )
% 2.39/1.49                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49                  | ~ ! [F: subst > term > term] :
% 2.39/1.49                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                        | ~ ! [A: term] :
% 2.39/1.49                              ( ~ ( P @ id @ A @ id )
% 2.39/1.49                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 2.39/1.49      & ( hoasinduction_no_psi_cond_lthm
% 2.39/1.49      <=> ( ! [P: subst > term > subst > $o] :
% 2.39/1.49              ~ ! [Q: term > $o] :
% 2.39/1.49                  ~ ! [X: term] :
% 2.39/1.49                      ( ( Q @ X )
% 2.39/1.49                      = ( P @ id @ X @ id ) )
% 2.39/1.49         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.49                ( ~ ! [A: term] :
% 2.39/1.49                      ( ~ ( var @ A )
% 2.39/1.49                      | ( P @ A ) )
% 2.39/1.49                | ~ ! [A: term,B: term] :
% 2.39/1.49                      ( ~ ( P @ A )
% 2.39/1.49                      | ~ ( P @ B )
% 2.39/1.49                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                | ~ ! [A: term] :
% 2.39/1.49                      ( ~ ! [B: term] :
% 2.39/1.49                            ( ~ ( P @ B )
% 2.39/1.49                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                      | ( P @ ( lam @ A ) ) )
% 2.39/1.49                | ( P @ Bound_variable_2367 ) )
% 2.39/1.49           => ( ! [A: term] :
% 2.39/1.49                  ( A
% 2.39/1.49                  = ( sub @ A @ id ) )
% 2.39/1.49             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.49                    ( ~ ! [F: subst > term > term] :
% 2.39/1.49                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                          | ~ ! [A: term] :
% 2.39/1.49                                ( ~ ( P @ id @ A @ id )
% 2.39/1.49                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                    | ~ ! [X: term] :
% 2.39/1.49                          ( ( Q @ X )
% 2.39/1.49                          = ( P @ id @ X @ id ) )
% 2.39/1.49                    | ~ ! [B: term] :
% 2.39/1.49                          ( ~ ( Q @ B )
% 2.39/1.49                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.49                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.39/1.49               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.39/1.49                    ( ~ ! [A: term,B: term] :
% 2.39/1.49                          ( ~ ( P @ id @ A @ id )
% 2.39/1.49                          | ~ ( P @ id @ B @ id )
% 2.39/1.49                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49                    | ~ ! [F: subst > term > term] :
% 2.39/1.49                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                          | ~ ! [A: term] :
% 2.39/1.49                                ( ~ ( P @ id @ A @ id )
% 2.39/1.49                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 2.39/1.49      & ( hoaslaminj
% 2.39/1.49      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.39/1.49                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49            | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.49             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.39/1.49            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.39/1.49              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 2.39/1.49      & ( hoasinduction_lem3aaa
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 2.39/1.49            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 2.39/1.49                  ( ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 2.39/1.49                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 2.39/1.49                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 2.39/1.49                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 2.39/1.49                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 2.39/1.49                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.49      & induction2lem_gthm
% 2.39/1.49      & ( hoasinduction_lem3aa_lthm
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.49            ( ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.49      & ( hoasinduction_lem3
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49            | ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 2.39/1.49      & ( hoasinduction_lem2
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49            | ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ A @ id )
% 2.39/1.49                  | ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.39/1.49            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.39/1.49            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 2.39/1.49      & ( termmset_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) ) ) )
% 2.39/1.49      & hoasinduction_lem1
% 2.39/1.49      & hoaslamnotap_lthm
% 2.39/1.49      & ( pushprop_lem1v2_lthm
% 2.39/1.49      <=> ( ! [A: term,M: subst] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.49         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.39/1.49              ( ~ ( P @ A )
% 2.39/1.49              | ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.39/1.49              | ( Q @ one ) ) ) )
% 2.39/1.49      & hoasapnotvar
% 2.39/1.49      & ( hoasinduction_lem0
% 2.39/1.49      <=> ! [P: subst > term > subst > $o] :
% 2.39/1.49            ~ ! [Q: term > $o] :
% 2.39/1.49                ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ id @ X @ id ) ) )
% 2.39/1.49      & ( hoasinduction
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49            | ~ ! [A: term] :
% 2.39/1.49                  ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.49                  | ( P @ id @ A @ id ) )
% 2.39/1.49            | ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ A @ id )
% 2.39/1.49                  | ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49            | ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 2.39/1.49      & hoasinduction_gthm
% 2.39/1.49      & axapp
% 2.39/1.49      & hoaslamnotvar_lthm
% 2.39/1.49      & pushprop_lem3v2_lthm
% 2.39/1.49      & ( hoasinduction_lem3b_lthm
% 2.39/1.49      <=> ! [B: term] :
% 2.39/1.49            ~ ! [F: subst > term > term] :
% 2.39/1.49                ( ( F @ sh @ one )
% 2.39/1.49               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.39/1.49      & ulamvarind
% 2.39/1.49      & ( induction
% 2.39/1.49      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 2.39/1.49            ( ~ ! [A: term] :
% 2.39/1.49                  ( ~ ( var @ A )
% 2.39/1.49                  | ( P @ A ) )
% 2.39/1.49            | ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ A )
% 2.39/1.49                  | ~ ( P @ B )
% 2.39/1.49                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49            | ~ ! [A: term] :
% 2.39/1.49                  ( ~ ( P @ A )
% 2.39/1.49                  | ( P @ ( lam @ A ) ) )
% 2.39/1.49            | ( P @ Bound_variable_2140 ) ) )
% 2.39/1.49      & ( hoasinduction_lem3a_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.49                ( ~ ! [F: subst > term > term] :
% 2.39/1.49                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                      | ~ ! [A: term] :
% 2.39/1.49                            ( ~ ( P @ id @ A @ id )
% 2.39/1.49                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( P @ id @ B @ id )
% 2.39/1.49                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.39/1.49           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.39/1.49                ( ~ ! [F: subst > term > term] :
% 2.39/1.49                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                      | ~ ! [A: term] :
% 2.39/1.49                            ( ~ ( P @ id @ A @ id )
% 2.39/1.49                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( P @ id @ B @ id )
% 2.39/1.49                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 2.39/1.49      & termmset_gthm
% 2.39/1.49      & ( hoasinduction_lem3aa
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.49            ( ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.49      & pushprop_lem1v2_gthm
% 2.39/1.49      & hoaslamnotap_gthm
% 2.39/1.49      & hoaslamnotvar_gthm
% 2.39/1.49      & hoasinduction_lem3b_gthm
% 2.39/1.49      & pushprop_lem2v2
% 2.39/1.49      & hoasinduction_lem3a_gthm
% 2.39/1.49      & axclos
% 2.39/1.49      & axassoc
% 2.39/1.49      & ( hoasinduction_lem2v2
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49            | ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ A @ id )
% 2.39/1.49                  | ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49            | ~ ! [X: term] :
% 2.39/1.49                  ( ( Q @ X )
% 2.39/1.49                  = ( P @ id @ X @ id ) )
% 2.39/1.49            | ~ ( Q @ Bound_variable_2820 )
% 2.39/1.49            | ~ ( Q @ Bound_variable_2822 )
% 2.39/1.49            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 2.39/1.49      & pushprop_lthm
% 2.39/1.49      & ( apinj2
% 2.39/1.49      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49            ( ( ( ap @ A @ C )
% 2.39/1.49             != ( ap @ B @ D ) )
% 2.39/1.49            | ( C = D ) ) )
% 2.39/1.49      & ( apinj1
% 2.39/1.49      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49            ( ( ( ap @ A @ C )
% 2.39/1.49             != ( ap @ B @ D ) )
% 2.39/1.49            | ( A = B ) ) )
% 2.39/1.49      & ( hoasapinj2_lthm
% 2.39/1.49      <=> ( ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49              ( ( ( ap @ A @ C )
% 2.39/1.49               != ( ap @ B @ D ) )
% 2.39/1.49              | ( C = D ) )
% 2.39/1.49         => ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.49               != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.49              | ( C = D ) ) ) )
% 2.39/1.49      & ( hoasinduction_lem3v2a
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.49            ( ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [X: term] :
% 2.39/1.49                  ( ( Q @ X )
% 2.39/1.49                  = ( P @ id @ X @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( Q @ B )
% 2.39/1.49                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.49            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 2.39/1.49      & ( hoasapinj1_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ( ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49                ( ( ( ap @ A @ C )
% 2.39/1.49                 != ( ap @ B @ D ) )
% 2.39/1.49                | ( A = B ) )
% 2.39/1.49           => ! [A: term,B: term,C: term,D: term] :
% 2.39/1.49                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.49                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.49                | ( A = B ) ) ) ) )
% 2.39/1.49      & ( hoaslaminj_lthm
% 2.39/1.49      <=> ( ! [A: term,M: subst] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.49         => ( ! [A: term,M: subst] :
% 2.39/1.49                ( M
% 2.39/1.49                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.49           => ( ! [A: term,B: term] :
% 2.39/1.49                  ( ( ( lam @ A )
% 2.39/1.49                   != ( lam @ B ) )
% 2.39/1.49                  | ( A = B ) )
% 2.39/1.49             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.39/1.49                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.49                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.39/1.49                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.39/1.49                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 2.39/1.49      & ( axvarcons
% 2.39/1.49      <=> ! [A: term,M: subst] :
% 2.39/1.49            ( A
% 2.39/1.49            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 2.39/1.49      & ( axscons
% 2.39/1.49      <=> ! [M: subst] :
% 2.39/1.49            ( M
% 2.39/1.49            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 2.39/1.49      & hoasinduction_lem2v2_gthm
% 2.39/1.49      & ( axidr
% 2.39/1.49      <=> ! [M: subst] :
% 2.39/1.49            ( M
% 2.39/1.49            = ( comp @ M @ id ) ) )
% 2.39/1.49      & ( pushprop_lem1
% 2.39/1.49      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.39/1.49            ( ~ ( P @ A )
% 2.39/1.49            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 2.39/1.49      & ( laminj
% 2.39/1.49      <=> ! [A: term,B: term] :
% 2.39/1.49            ( ( ( lam @ A )
% 2.39/1.49             != ( lam @ B ) )
% 2.39/1.49            | ( A = B ) ) )
% 2.39/1.49      & ( hoasinduction_lem3_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.49                ( ~ ! [F: subst > term > term] :
% 2.39/1.49                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                      | ~ ! [A: term] :
% 2.39/1.49                            ( ~ ( P @ id @ A @ id )
% 2.39/1.49                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( P @ id @ B @ id )
% 2.39/1.49                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.39/1.49           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.49                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49                | ~ ! [F: subst > term > term] :
% 2.39/1.49                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                      | ~ ! [A: term] :
% 2.39/1.49                            ( ~ ( P @ id @ A @ id )
% 2.39/1.49                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( P @ id @ B @ id )
% 2.39/1.49                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 2.39/1.49      & ( pushprop_lem0
% 2.39/1.49      <=> ! [P: term > $o,A: term,M: subst] :
% 2.39/1.49            ~ ! [Q: term > $o] :
% 2.39/1.49                ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.39/1.49      & pushprop_gthm
% 2.39/1.49      & axabs
% 2.39/1.49      & ( hoasinduction_lem3v2a_lthm
% 2.39/1.49      <=> ( ! [B: term] :
% 2.39/1.49              ~ ! [F: subst > term > term] :
% 2.39/1.49                  ~ ! [A: term,M: subst] :
% 2.39/1.49                      ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.49                      = ( F @ M @ A ) )
% 2.39/1.49         => ( ! [A: term] :
% 2.39/1.49                ( A
% 2.39/1.49                = ( sub @ A @ id ) )
% 2.39/1.49           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.49                ( ~ ! [F: subst > term > term] :
% 2.39/1.49                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                      | ~ ! [A: term] :
% 2.39/1.49                            ( ~ ( P @ id @ A @ id )
% 2.39/1.49                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                | ~ ! [X: term] :
% 2.39/1.49                      ( ( Q @ X )
% 2.39/1.49                      = ( P @ id @ X @ id ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( Q @ B )
% 2.39/1.49                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.49                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 2.39/1.49      & hoasinduction_lem2_lthm
% 2.39/1.49      & hoasapinj2_gthm
% 2.39/1.49      & hoasinduction_lem1_lthm
% 2.39/1.49      & ~ lamnotap
% 2.39/1.49      & hoasapinj1_gthm
% 2.39/1.49      & hoaslamnotvar
% 2.39/1.49      & ( axidl
% 2.39/1.49      <=> ! [M: subst] :
% 2.39/1.49            ( M
% 2.39/1.49            = ( comp @ id @ M ) ) )
% 2.39/1.49      & hoaslaminj_gthm
% 2.39/1.49      & ( induction2_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.49                ( ~ ! [A: term,B: term] :
% 2.39/1.49                      ( ~ ( P @ A )
% 2.39/1.49                      | ~ ( P @ B )
% 2.39/1.49                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                | ~ ! [A: term] :
% 2.39/1.49                      ( ~ ! [B: term] :
% 2.39/1.49                            ( ~ ( P @ B )
% 2.39/1.49                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                      | ( P @ ( lam @ A ) ) )
% 2.39/1.49                | ~ ! [B: term] :
% 2.39/1.49                      ( ~ ( var @ B )
% 2.39/1.49                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.49                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 2.39/1.49           => ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.49                ( ~ ! [A: term] :
% 2.39/1.49                      ( ~ ( var @ A )
% 2.39/1.49                      | ( P @ A ) )
% 2.39/1.49                | ~ ! [A: term,B: term] :
% 2.39/1.49                      ( ~ ( P @ A )
% 2.39/1.49                      | ~ ( P @ B )
% 2.39/1.49                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                | ~ ! [A: term] :
% 2.39/1.49                      ( ~ ! [B: term] :
% 2.39/1.49                            ( ~ ( P @ B )
% 2.39/1.49                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                      | ( P @ ( lam @ A ) ) )
% 2.39/1.49                | ( P @ Bound_variable_2367 ) ) ) ) )
% 2.39/1.49      & ( hoasinduction_lem0_lthm
% 2.39/1.49      <=> ! [P: subst > term > subst > $o] :
% 2.39/1.49            ~ ! [Q: term > $o] :
% 2.39/1.49                ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ id @ X @ id ) ) )
% 2.39/1.49      & ( substmonoid_lthm
% 2.39/1.49      <=> ( ! [M: subst] :
% 2.39/1.49              ( M
% 2.39/1.49              = ( comp @ id @ M ) )
% 2.39/1.49         => ( ! [M: subst] :
% 2.39/1.49                ( M
% 2.39/1.49                = ( comp @ M @ id ) )
% 2.39/1.49           => ( ! [M: subst] :
% 2.39/1.49                  ( M
% 2.39/1.49                  = ( comp @ id @ M ) )
% 2.39/1.49              & ! [M: subst] :
% 2.39/1.49                  ( M
% 2.39/1.49                  = ( comp @ M @ id ) ) ) ) ) )
% 2.39/1.49      & pushprop
% 2.39/1.49      & hoasinduction_lem3_gthm
% 2.39/1.49      & hoasinduction_lem2_gthm
% 2.39/1.49      & ( hoasinduction_lem3b
% 2.39/1.49      <=> ! [B: term] :
% 2.39/1.49            ~ ! [F: subst > term > term] :
% 2.39/1.49                ( ( F @ sh @ one )
% 2.39/1.49               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.39/1.49      & ( substmonoid
% 2.39/1.49      <=> ( ! [M: subst] :
% 2.39/1.49              ( M
% 2.39/1.49              = ( comp @ id @ M ) )
% 2.39/1.49          & ! [M: subst] :
% 2.39/1.49              ( M
% 2.39/1.49              = ( comp @ M @ id ) ) ) )
% 2.39/1.49      & lamnotvar
% 2.39/1.49      & ( hoasinduction_lem3a
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.39/1.49            ( ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 2.39/1.49      & hoasinduction_lem1_gthm
% 2.39/1.49      & ( hoasinduction_no_psi_cond
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.39/1.49            ( ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ id @ A @ id )
% 2.39/1.49                  | ~ ( P @ id @ B @ id )
% 2.39/1.49                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49            | ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 2.39/1.49      & induction2_gthm
% 2.39/1.49      & pushprop_lem2v2_lthm
% 2.39/1.49      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.49      & ( hoaslamnotap
% 2.39/1.49      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49            | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.49             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 2.39/1.49      & substmonoid_gthm
% 2.39/1.49      & ulamvarsh
% 2.39/1.49      & ( induction2
% 2.39/1.49      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.49            ( ~ ! [A: term] :
% 2.39/1.49                  ( ~ ( var @ A )
% 2.39/1.49                  | ( P @ A ) )
% 2.39/1.49            | ~ ! [A: term,B: term] :
% 2.39/1.49                  ( ~ ( P @ A )
% 2.39/1.49                  | ~ ( P @ B )
% 2.39/1.49                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49            | ~ ! [A: term] :
% 2.39/1.49                  ( ~ ! [B: term] :
% 2.39/1.49                        ( ~ ( P @ B )
% 2.39/1.49                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                  | ( P @ ( lam @ A ) ) )
% 2.39/1.49            | ( P @ Bound_variable_2367 ) ) )
% 2.39/1.49      & pushprop_lem3v2
% 2.39/1.49      & pushprop_lem2v2_gthm
% 2.39/1.49      & ( pushprop_lem1_lthm
% 2.39/1.49      <=> ( ! [A: term,M: subst] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.49         => ( ! [A: term,M: subst] :
% 2.39/1.49                ( M
% 2.39/1.49                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.49           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.39/1.49                ( ~ ( P @ A )
% 2.39/1.49                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 2.39/1.49      & ( hoasinduction_lem3v2
% 2.39/1.49      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.39/1.49            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49            | ~ ! [F: subst > term > term] :
% 2.39/1.49                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                  | ~ ! [A: term] :
% 2.39/1.49                        ( ~ ( P @ id @ A @ id )
% 2.39/1.49                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49            | ~ ! [X: term] :
% 2.39/1.49                  ( ( Q @ X )
% 2.39/1.49                  = ( P @ id @ X @ id ) )
% 2.39/1.49            | ~ ! [B: term] :
% 2.39/1.49                  ( ~ ( Q @ B )
% 2.39/1.49                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.39/1.49            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 2.39/1.49      & ( axshiftcons
% 2.39/1.49      <=> ! [A: term,M: subst] :
% 2.39/1.49            ( M
% 2.39/1.49            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 2.39/1.49      & ( termmset
% 2.39/1.49      <=> ! [A: term] :
% 2.39/1.49            ( A
% 2.39/1.49            = ( sub @ A @ id ) ) )
% 2.39/1.49      & ( pushprop_lem0_lthm
% 2.39/1.49      <=> ! [P: term > $o,A: term,M: subst] :
% 2.39/1.49            ~ ! [Q: term > $o] :
% 2.39/1.49                ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.39/1.49      & hoasapnotvar_lthm
% 2.39/1.49      & ( hoasinduction_lem3v2_lthm
% 2.39/1.49      <=> ( ! [A: term] :
% 2.39/1.49              ( A
% 2.39/1.49              = ( sub @ A @ id ) )
% 2.39/1.49         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.39/1.49              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49              | ~ ! [F: subst > term > term] :
% 2.39/1.49                    ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                          ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                    | ~ ! [A: term] :
% 2.39/1.49                          ( ~ ( P @ id @ A @ id )
% 2.39/1.49                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49              | ~ ! [X: term] :
% 2.39/1.49                    ( ( Q @ X )
% 2.39/1.49                    = ( P @ id @ X @ id ) )
% 2.39/1.49              | ~ ! [B: term] :
% 2.39/1.49                    ( ~ ( Q @ B )
% 2.39/1.49                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.39/1.49              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 2.39/1.49      & ( axvarid
% 2.39/1.49      <=> ! [A: term] :
% 2.39/1.49            ( A
% 2.39/1.49            = ( sub @ A @ id ) ) )
% 2.39/1.49      & ( hoasinduction_lthm_3
% 2.39/1.49      <=> ( ! [P: subst > term > subst > $o] :
% 2.39/1.49              ~ ! [Q: term > $o] :
% 2.39/1.49                  ~ ! [X: term] :
% 2.39/1.49                      ( ( Q @ X )
% 2.39/1.49                      = ( P @ id @ X @ id ) )
% 2.39/1.49         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.49                ( ~ ! [A: term] :
% 2.39/1.49                      ( ~ ( var @ A )
% 2.39/1.49                      | ( P @ A ) )
% 2.39/1.49                | ~ ! [A: term,B: term] :
% 2.39/1.49                      ( ~ ( P @ A )
% 2.39/1.49                      | ~ ( P @ B )
% 2.39/1.49                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.49                | ~ ! [A: term] :
% 2.39/1.49                      ( ~ ! [B: term] :
% 2.39/1.49                            ( ~ ( P @ B )
% 2.39/1.49                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.49                      | ( P @ ( lam @ A ) ) )
% 2.39/1.49                | ( P @ Bound_variable_2367 ) )
% 2.39/1.49           => ( ! [A: term] :
% 2.39/1.49                  ( A
% 2.39/1.49                  = ( sub @ A @ id ) )
% 2.39/1.49             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.49                    ( ~ ! [F: subst > term > term] :
% 2.39/1.49                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                          | ~ ! [A: term] :
% 2.39/1.49                                ( ~ ( P @ id @ A @ id )
% 2.39/1.49                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                    | ~ ! [X: term] :
% 2.39/1.49                          ( ( Q @ X )
% 2.39/1.49                          = ( P @ id @ X @ id ) )
% 2.39/1.49                    | ~ ! [B: term] :
% 2.39/1.49                          ( ~ ( Q @ B )
% 2.39/1.49                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.49                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.39/1.49               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.49                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.49                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.49                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.49                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.49                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.49                    | ~ ! [A: term] :
% 2.39/1.49                          ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.49                          | ( P @ id @ A @ id ) )
% 2.39/1.49                    | ~ ! [A: term,B: term] :
% 2.39/1.49                          ( ~ ( P @ id @ A @ id )
% 2.39/1.49                          | ~ ( P @ id @ B @ id )
% 2.39/1.49                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.49                    | ~ ! [F: subst > term > term] :
% 2.39/1.49                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.49                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49                          | ~ ! [A: term] :
% 2.39/1.49                                ( ~ ( P @ id @ A @ id )
% 2.39/1.49                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.49                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 2.39/1.49  
% 2.39/1.49  thf(hoasinduction_lem3aa,conjecture,
% 2.39/1.49      ( hoasinduction_lem3aa
% 2.39/1.49      = ( ! [P: subst > term > subst > $o] :
% 2.39/1.49            ( ! [F: subst > term > term] :
% 2.39/1.49                ( ! [M: subst,A: term,N: subst] :
% 2.39/1.49                    ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.49                    = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.49               => ( ! [A: term] :
% 2.39/1.49                      ( ( P @ id @ A @ id )
% 2.39/1.49                     => ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.49                 => ( P @ id
% 2.39/1.49                    @ ( hoaslam @ id
% 2.39/1.49                      @ ^ [M: subst,A: term] : ( F @ M @ A ) )
% 2.39/1.49                    @ id ) ) )
% 2.39/1.49           => ! [A: term] :
% 2.39/1.49                ( ! [B: term] :
% 2.39/1.49                    ( ( P @ id @ B @ id )
% 2.39/1.49                   => ( P @ id @ ( sub @ A @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.49               => ( P @ id @ ( lam @ ( sub @ A @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ) ).
% 2.39/1.49  ------------------------
% 2.50/1.52  % (32210)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/4Mi)
% 2.50/1.52  % (32213)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/2Mi)
% 2.50/1.52  % (32209)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/183Mi)
% 2.50/1.52  % (32210)Instruction limit reached!
% 2.50/1.52  % (32210)------------------------------
% 2.50/1.52  % (32210)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.52  % (32210)Termination reason: Unknown
% 2.50/1.52  % (32210)Termination phase: shuffling
% 2.50/1.52  
% 2.50/1.52  % (32210)Memory used [KB]: 1279
% 2.50/1.52  % (32210)Time elapsed: 0.003 s
% 2.50/1.52  % (32210)Instructions burned: 5 (million)
% 2.50/1.52  % (32210)------------------------------
% 2.50/1.52  % (32210)------------------------------
% 2.50/1.52  % (32213)Instruction limit reached!
% 2.50/1.52  % (32213)------------------------------
% 2.50/1.52  % (32213)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.52  % (32213)Termination reason: Unknown
% 2.50/1.52  % (32213)Termination phase: shuffling
% 2.50/1.52  
% 2.50/1.52  % (32213)Memory used [KB]: 1279
% 2.50/1.52  % (32213)Time elapsed: 0.002 s
% 2.50/1.52  % (32213)Instructions burned: 3 (million)
% 2.50/1.52  % (32213)------------------------------
% 2.50/1.52  % (32213)------------------------------
% 2.50/1.53  % (32211)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/27Mi)
% 2.50/1.53  % (32212)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/2Mi)
% 2.50/1.53  % (32214)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/275Mi)
% 2.50/1.53  % (32215)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/18Mi)
% 2.50/1.53  % (32212)Instruction limit reached!
% 2.50/1.53  % (32212)------------------------------
% 2.50/1.53  % (32212)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.53  % (32212)Termination reason: Unknown
% 2.50/1.53  % (32212)Termination phase: shuffling
% 2.50/1.53  
% 2.50/1.53  % (32212)Memory used [KB]: 1279
% 2.50/1.53  % (32212)Time elapsed: 0.004 s
% 2.50/1.53  % (32212)Instructions burned: 3 (million)
% 2.50/1.53  % (32212)------------------------------
% 2.50/1.53  % (32212)------------------------------
% 2.50/1.53  % (32216)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/3Mi)
% 2.50/1.53  % (32216)Instruction limit reached!
% 2.50/1.53  % (32216)------------------------------
% 2.50/1.53  % (32216)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.53  % (32216)Termination reason: Unknown
% 2.50/1.53  % (32216)Termination phase: shuffling
% 2.50/1.53  
% 2.50/1.53  % (32216)Memory used [KB]: 1279
% 2.50/1.53  % (32216)Time elapsed: 0.002 s
% 2.50/1.53  % (32216)Instructions burned: 3 (million)
% 2.50/1.53  % (32216)------------------------------
% 2.50/1.53  % (32216)------------------------------
% 2.50/1.53  % (32217)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/37Mi)
% 2.50/1.54  % (32215)Instruction limit reached!
% 2.50/1.54  % (32215)------------------------------
% 2.50/1.54  % (32215)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.54  % (32215)Termination reason: Unknown
% 2.50/1.54  % (32215)Termination phase: shuffling
% 2.50/1.54  
% 2.50/1.54  % (32215)Memory used [KB]: 2046
% 2.50/1.54  % (32215)Time elapsed: 0.013 s
% 2.50/1.54  % (32215)Instructions burned: 18 (million)
% 2.50/1.54  % (32215)------------------------------
% 2.50/1.54  % (32215)------------------------------
% 2.50/1.54  % (32219)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/3Mi)
% 2.50/1.54  % (32219)Instruction limit reached!
% 2.50/1.54  % (32219)------------------------------
% 2.50/1.54  % (32219)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.54  % (32219)Termination reason: Unknown
% 2.50/1.54  % (32219)Termination phase: shuffling
% 2.50/1.54  
% 2.50/1.54  % (32219)Memory used [KB]: 1279
% 2.50/1.54  % (32219)Time elapsed: 0.002 s
% 2.50/1.54  % (32219)Instructions burned: 3 (million)
% 2.50/1.54  % (32219)------------------------------
% 2.50/1.54  % (32219)------------------------------
% 2.50/1.54  % (32217)Instruction limit reached!
% 2.50/1.54  % (32217)------------------------------
% 2.50/1.54  % (32217)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.54  % (32217)Termination reason: Unknown
% 2.50/1.54  % (32217)Termination phase: Property scanning
% 2.50/1.54  
% 2.50/1.54  % (32217)Memory used [KB]: 1918
% 2.50/1.54  % (32217)Time elapsed: 0.012 s
% 2.50/1.54  % (32217)Instructions burned: 38 (million)
% 2.50/1.54  % (32217)------------------------------
% 2.50/1.54  % (32217)------------------------------
% 2.50/1.54  % (32211)Instruction limit reached!
% 2.50/1.54  % (32211)------------------------------
% 2.50/1.54  % (32211)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.54  % (32211)Termination reason: Unknown
% 2.50/1.54  % (32211)Termination phase: Property scanning
% 2.50/1.54  
% 2.50/1.54  % (32211)Memory used [KB]: 2174
% 2.50/1.54  % (32211)Time elapsed: 0.019 s
% 2.50/1.54  % (32211)Instructions burned: 28 (million)
% 2.50/1.54  % (32211)------------------------------
% 2.50/1.54  % (32211)------------------------------
% 2.50/1.55  % (32218)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/15Mi)
% 2.50/1.55  % (32221)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/7Mi)
% 2.50/1.55  % (32214)Refutation not found, incomplete strategy
% 2.50/1.55  % (32214)------------------------------
% 2.50/1.55  % (32214)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.55  % (32214)Termination reason: Refutation not found, incomplete strategy
% 2.50/1.55  
% 2.50/1.55  
% 2.50/1.55  % (32214)Memory used [KB]: 6780
% 2.50/1.55  % (32214)Time elapsed: 0.026 s
% 2.50/1.55  % (32214)Instructions burned: 41 (million)
% 2.50/1.55  % (32214)------------------------------
% 2.50/1.55  % (32214)------------------------------
% 2.50/1.55  % (32222)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/16Mi)
% 2.50/1.55  % (32221)Instruction limit reached!
% 2.50/1.55  % (32221)------------------------------
% 2.50/1.55  % (32221)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.55  % (32221)Termination reason: Unknown
% 2.50/1.55  % (32221)Termination phase: shuffling
% 2.50/1.55  
% 2.50/1.55  % (32221)Memory used [KB]: 1407
% 2.50/1.55  % (32221)Time elapsed: 0.003 s
% 2.50/1.55  % (32221)Instructions burned: 7 (million)
% 2.50/1.55  % (32221)------------------------------
% 2.50/1.55  % (32221)------------------------------
% 2.50/1.56  % (32218)Instruction limit reached!
% 2.50/1.56  % (32218)------------------------------
% 2.50/1.56  % (32218)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.56  % (32218)Termination reason: Unknown
% 2.50/1.56  % (32218)Termination phase: shuffling
% 2.50/1.56  
% 2.50/1.56  % (32218)Memory used [KB]: 1918
% 2.50/1.56  % (32218)Time elapsed: 0.011 s
% 2.50/1.56  % (32218)Instructions burned: 16 (million)
% 2.50/1.56  % (32218)------------------------------
% 2.50/1.56  % (32218)------------------------------
% 2.50/1.56  % (32220)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/1041Mi)
% 2.50/1.56  % (32222)Instruction limit reached!
% 2.50/1.56  % (32222)------------------------------
% 2.50/1.56  % (32222)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.56  % (32222)Termination reason: Unknown
% 2.50/1.56  % (32222)Termination phase: shuffling
% 2.50/1.56  
% 2.50/1.56  % (32222)Memory used [KB]: 1918
% 2.50/1.56  % (32222)Time elapsed: 0.007 s
% 2.50/1.56  % (32222)Instructions burned: 16 (million)
% 2.50/1.56  % (32222)------------------------------
% 2.50/1.56  % (32222)------------------------------
% 2.50/1.56  % (32223)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/3Mi)
% 2.50/1.56  % (32223)Instruction limit reached!
% 2.50/1.56  % (32223)------------------------------
% 2.50/1.56  % (32223)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.56  % (32223)Termination reason: Unknown
% 2.50/1.56  % (32223)Termination phase: shuffling
% 2.50/1.56  
% 2.50/1.56  % (32223)Memory used [KB]: 1279
% 2.50/1.56  % (32223)Time elapsed: 0.002 s
% 2.50/1.56  % (32223)Instructions burned: 3 (million)
% 2.50/1.56  % (32223)------------------------------
% 2.50/1.56  % (32223)------------------------------
% 2.50/1.56  % (32224)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/3Mi)
% 2.50/1.56  % (32224)Instruction limit reached!
% 2.50/1.56  % (32224)------------------------------
% 2.50/1.56  % (32224)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.56  % (32224)Termination reason: Unknown
% 2.50/1.56  % (32224)Termination phase: shuffling
% 2.50/1.56  
% 2.50/1.56  % (32224)Memory used [KB]: 1279
% 2.50/1.56  % (32224)Time elapsed: 0.002 s
% 2.50/1.56  % (32224)Instructions burned: 3 (million)
% 2.50/1.56  % (32224)------------------------------
% 2.50/1.56  % (32224)------------------------------
% 2.50/1.57  % (32227)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/4Mi)
% 2.50/1.57  % (32227)Instruction limit reached!
% 2.50/1.57  % (32227)------------------------------
% 2.50/1.57  % (32227)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.57  % (32227)Termination reason: Unknown
% 2.50/1.57  % (32227)Termination phase: shuffling
% 2.50/1.57  
% 2.50/1.57  % (32227)Memory used [KB]: 1279
% 2.50/1.57  % (32227)Time elapsed: 0.003 s
% 2.50/1.57  % (32227)Instructions burned: 4 (million)
% 2.50/1.57  % (32227)------------------------------
% 2.50/1.57  % (32227)------------------------------
% 2.50/1.57  % (32225)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/7Mi)
% 2.50/1.57  % (32229)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/710Mi)
% 2.50/1.57  % (32228)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/18Mi)
% 2.50/1.57  % (32226)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/3Mi)
% 2.50/1.57  % (32225)Instruction limit reached!
% 2.50/1.57  % (32225)------------------------------
% 2.50/1.57  % (32225)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.57  % (32225)Termination reason: Unknown
% 2.50/1.57  % (32225)Termination phase: shuffling
% 2.50/1.57  
% 2.50/1.57  % (32225)Memory used [KB]: 1407
% 2.50/1.57  % (32225)Time elapsed: 0.006 s
% 2.50/1.57  % (32225)Instructions burned: 7 (million)
% 2.50/1.57  % (32225)------------------------------
% 2.50/1.57  % (32225)------------------------------
% 2.50/1.57  % (32209)Instruction limit reached!
% 2.50/1.57  % (32209)------------------------------
% 2.50/1.57  % (32209)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.57  % (32209)Termination reason: Unknown
% 2.50/1.57  % (32209)Termination phase: Property scanning
% 2.50/1.57  
% 2.50/1.57  % (32209)Memory used [KB]: 4477
% 2.50/1.57  % (32209)Time elapsed: 0.056 s
% 2.50/1.57  % (32209)Instructions burned: 186 (million)
% 2.50/1.57  % (32209)------------------------------
% 2.50/1.57  % (32209)------------------------------
% 2.50/1.57  % (32226)Instruction limit reached!
% 2.50/1.57  % (32226)------------------------------
% 2.50/1.57  % (32226)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.57  % (32226)Termination reason: Unknown
% 2.50/1.57  % (32226)Termination phase: shuffling
% 2.50/1.57  
% 2.50/1.57  % (32226)Memory used [KB]: 1279
% 2.50/1.57  % (32226)Time elapsed: 0.004 s
% 2.50/1.57  % (32226)Instructions burned: 4 (million)
% 2.50/1.57  % (32226)------------------------------
% 2.50/1.57  % (32226)------------------------------
% 2.50/1.58  % (32228)Instruction limit reached!
% 2.50/1.58  % (32228)------------------------------
% 2.50/1.58  % (32228)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.58  % (32228)Termination reason: Unknown
% 2.50/1.58  % (32228)Termination phase: shuffling
% 2.50/1.58  
% 2.50/1.58  % (32228)Memory used [KB]: 2046
% 2.50/1.58  % (32228)Time elapsed: 0.007 s
% 2.50/1.58  % (32228)Instructions burned: 18 (million)
% 2.50/1.58  % (32228)------------------------------
% 2.50/1.58  % (32228)------------------------------
% 2.50/1.58  % (32230)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/6Mi)
% 2.50/1.58  % (32230)Instruction limit reached!
% 2.50/1.58  % (32230)------------------------------
% 2.50/1.58  % (32230)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.58  % (32230)Termination reason: Unknown
% 2.50/1.58  % (32230)Termination phase: shuffling
% 2.50/1.58  
% 2.50/1.58  % (32230)Memory used [KB]: 1407
% 2.50/1.58  % (32230)Time elapsed: 0.004 s
% 2.50/1.58  % (32230)Instructions burned: 7 (million)
% 2.50/1.58  % (32230)------------------------------
% 2.50/1.58  % (32230)------------------------------
% 2.50/1.59  % (32232)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/21Mi)
% 2.50/1.59  % (32234)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/6Mi)
% 2.50/1.59  % (32234)Instruction limit reached!
% 2.50/1.59  % (32234)------------------------------
% 2.50/1.59  % (32234)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.59  % (32234)Termination reason: Unknown
% 2.50/1.59  % (32234)Termination phase: shuffling
% 2.50/1.59  
% 2.50/1.59  % (32234)Memory used [KB]: 1407
% 2.50/1.59  % (32234)Time elapsed: 0.004 s
% 2.50/1.59  % (32234)Instructions burned: 7 (million)
% 2.50/1.59  % (32234)------------------------------
% 2.50/1.59  % (32234)------------------------------
% 2.50/1.59  % (32235)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/377Mi)
% 2.50/1.59  % (32231)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/902Mi)
% 2.50/1.59  % (32233)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/5Mi)
% 2.50/1.59  % (32232)Instruction limit reached!
% 2.50/1.59  % (32232)------------------------------
% 2.50/1.59  % (32232)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.59  % (32232)Termination reason: Unknown
% 2.50/1.59  % (32232)Termination phase: shuffling
% 2.50/1.59  
% 2.50/1.59  % (32232)Memory used [KB]: 2174
% 2.50/1.59  % (32232)Time elapsed: 0.008 s
% 2.50/1.59  % (32232)Instructions burned: 21 (million)
% 2.50/1.59  % (32232)------------------------------
% 2.50/1.59  % (32232)------------------------------
% 2.50/1.59  % (32233)Instruction limit reached!
% 2.50/1.59  % (32233)------------------------------
% 2.50/1.59  % (32233)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.59  % (32233)Termination reason: Unknown
% 2.50/1.59  % (32233)Termination phase: shuffling
% 2.50/1.59  
% 2.50/1.59  % (32233)Memory used [KB]: 1279
% 2.50/1.59  % (32233)Time elapsed: 0.004 s
% 2.50/1.59  % (32233)Instructions burned: 5 (million)
% 2.50/1.59  % (32233)------------------------------
% 2.50/1.59  % (32233)------------------------------
% 2.50/1.60  % (32236)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/779Mi)
% 2.50/1.60  % (32237)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/19Mi)
% 2.50/1.61  % (32237)Instruction limit reached!
% 2.50/1.61  % (32237)------------------------------
% 2.50/1.61  % (32237)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.61  % (32237)Termination reason: Unknown
% 2.50/1.61  % (32237)Termination phase: shuffling
% 2.50/1.61  
% 2.50/1.61  % (32237)Memory used [KB]: 1663
% 2.50/1.61  % (32237)Time elapsed: 0.007 s
% 2.50/1.61  % (32237)Instructions burned: 21 (million)
% 2.50/1.61  % (32238)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/879Mi)
% 2.50/1.61  % (32237)------------------------------
% 2.50/1.61  % (32237)------------------------------
% 2.50/1.62  % (32239)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_31880 for (2999ds/17Mi)
% 2.50/1.62  % (32239)Instruction limit reached!
% 2.50/1.62  % (32239)------------------------------
% 2.50/1.62  % (32239)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.62  % (32239)Termination reason: Unknown
% 2.50/1.62  % (32239)Termination phase: shuffling
% 2.50/1.62  
% 2.50/1.62  % (32239)Memory used [KB]: 1918
% 2.50/1.62  % (32239)Time elapsed: 0.006 s
% 2.50/1.62  % (32239)Instructions burned: 17 (million)
% 2.50/1.62  % (32239)------------------------------
% 2.50/1.62  % (32239)------------------------------
% 2.50/1.63  % (32240)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/3Mi)
% 2.50/1.63  % (32240)Instruction limit reached!
% 2.50/1.63  % (32240)------------------------------
% 2.50/1.63  % (32240)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.63  % (32240)Termination reason: Unknown
% 2.50/1.63  % (32240)Termination phase: shuffling
% 2.50/1.63  
% 2.50/1.63  % (32240)Memory used [KB]: 1407
% 2.50/1.63  % (32240)Time elapsed: 0.003 s
% 2.50/1.63  % (32240)Instructions burned: 6 (million)
% 2.50/1.63  % (32240)------------------------------
% 2.50/1.63  % (32240)------------------------------
% 2.50/1.64  % (32241)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/30Mi)
% 2.50/1.65  % (32241)Instruction limit reached!
% 2.50/1.65  % (32241)------------------------------
% 2.50/1.65  % (32241)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.65  % (32241)Termination reason: Unknown
% 2.50/1.65  % (32241)Termination phase: Property scanning
% 2.50/1.65  
% 2.50/1.65  % (32241)Memory used [KB]: 2174
% 2.50/1.65  % (32241)Time elapsed: 0.011 s
% 2.50/1.65  % (32241)Instructions burned: 33 (million)
% 2.50/1.65  % (32241)------------------------------
% 2.50/1.65  % (32241)------------------------------
% 2.50/1.66  % (32242)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/127Mi)
% 2.50/1.70  % (32231)Refutation not found, incomplete strategy
% 2.50/1.70  % (32231)------------------------------
% 2.50/1.70  % (32231)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.70  % (32231)Termination reason: Refutation not found, incomplete strategy
% 2.50/1.70  
% 2.50/1.70  
% 2.50/1.70  % (32231)Memory used [KB]: 9338
% 2.50/1.70  % (32231)Time elapsed: 0.108 s
% 2.50/1.70  % (32231)Instructions burned: 208 (million)
% 2.50/1.70  % (32231)------------------------------
% 2.50/1.70  % (32231)------------------------------
% 2.50/1.70  % (32242)Instruction limit reached!
% 2.50/1.70  % (32242)------------------------------
% 2.50/1.70  % (32242)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.70  % (32242)Termination reason: Unknown
% 2.50/1.70  % (32242)Termination phase: Property scanning
% 2.50/1.70  
% 2.50/1.70  % (32242)Memory used [KB]: 4221
% 2.50/1.70  % (32242)Time elapsed: 0.037 s
% 2.50/1.70  % (32242)Instructions burned: 130 (million)
% 2.50/1.70  % (32242)------------------------------
% 2.50/1.70  % (32242)------------------------------
% 2.50/1.70  % (32235)Instruction limit reached!
% 2.50/1.70  % (32235)------------------------------
% 2.50/1.70  % (32235)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.70  % (32235)Termination reason: Unknown
% 2.50/1.70  % (32235)Termination phase: Saturation
% 2.50/1.70  
% 2.50/1.70  % (32235)Memory used [KB]: 10362
% 2.50/1.70  % (32235)Time elapsed: 0.114 s
% 2.50/1.70  % (32235)Instructions burned: 378 (million)
% 2.50/1.70  % (32235)------------------------------
% 2.50/1.70  % (32235)------------------------------
% 2.50/1.71  % (32243)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/100Mi)
% 2.50/1.71  % (32244)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=3:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/3Mi)
% 2.50/1.71  % (32244)Instruction limit reached!
% 2.50/1.71  % (32244)------------------------------
% 2.50/1.71  % (32244)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.71  % (32244)Termination reason: Unknown
% 2.50/1.71  % (32244)Termination phase: shuffling
% 2.50/1.71  
% 2.50/1.71  % (32244)Memory used [KB]: 1279
% 2.50/1.71  % (32244)Time elapsed: 0.002 s
% 2.50/1.71  % (32244)Instructions burned: 3 (million)
% 2.50/1.71  % (32244)------------------------------
% 2.50/1.71  % (32244)------------------------------
% 2.50/1.71  % (32245)lrs+10_8:1_au=on:avsq=on:e2e=on:ins=3:s2a=on:s2at=3.0:ss=axioms:i=20:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/20Mi)
% 2.50/1.72  % (32246)dis+1002_1:1_cbe=off:hud=5:nm=4:plsq=on:plsqr=7,1:prag=on:sp=const_max:tnu=1:i=86:si=on:rtra=on_0 on DTF2THF_31880 for (2998ds/86Mi)
% 2.50/1.72  % (32245)Instruction limit reached!
% 2.50/1.72  % (32245)------------------------------
% 2.50/1.72  % (32245)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.72  % (32245)Termination reason: Unknown
% 2.50/1.72  % (32245)Termination phase: shuffling
% 2.50/1.72  
% 2.50/1.72  % (32245)Memory used [KB]: 2046
% 2.50/1.72  % (32245)Time elapsed: 0.008 s
% 2.50/1.72  % (32245)Instructions burned: 21 (million)
% 2.50/1.72  % (32245)------------------------------
% 2.50/1.72  % (32245)------------------------------
% 2.50/1.73  % (32247)lrs+1010_1:1_au=on:cbe=off:nm=2:ntd=on:sd=2:ss=axioms:st=5.0:i=107:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/107Mi)
% 2.50/1.73  % (32243)Instruction limit reached!
% 2.50/1.73  % (32243)------------------------------
% 2.50/1.73  % (32243)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.73  % (32243)Termination reason: Unknown
% 2.50/1.73  % (32243)Termination phase: Saturation
% 2.50/1.73  
% 2.50/1.73  % (32243)Memory used [KB]: 6524
% 2.50/1.73  % (32243)Time elapsed: 0.027 s
% 2.50/1.73  % (32243)Instructions burned: 102 (million)
% 2.50/1.73  % (32243)------------------------------
% 2.50/1.73  % (32243)------------------------------
% 2.50/1.74  % (32248)lrs+2_1:1024_cnfonf=lazy_gen:fe=off:hud=15:plsq=on:plsqc=1:plsqr=32,1:i=39:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/39Mi)
% 2.50/1.75  % (32246)Instruction limit reached!
% 2.50/1.75  % (32246)------------------------------
% 2.50/1.75  % (32246)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.75  % (32246)Termination reason: Unknown
% 2.50/1.75  % (32246)Termination phase: Preprocessing 3
% 2.50/1.75  
% 2.50/1.75  % (32246)Memory used [KB]: 4093
% 2.50/1.75  % (32246)Time elapsed: 0.029 s
% 2.50/1.75  % (32246)Instructions burned: 87 (million)
% 2.50/1.75  % (32246)------------------------------
% 2.50/1.75  % (32246)------------------------------
% 2.50/1.75  % (32248)Instruction limit reached!
% 2.50/1.75  % (32248)------------------------------
% 2.50/1.75  % (32248)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.75  % (32248)Termination reason: Unknown
% 2.50/1.75  % (32248)Termination phase: Property scanning
% 2.50/1.75  
% 2.50/1.75  % (32248)Memory used [KB]: 1918
% 2.50/1.75  % (32248)Time elapsed: 0.012 s
% 2.50/1.75  % (32248)Instructions burned: 42 (million)
% 2.50/1.75  % (32248)------------------------------
% 2.50/1.75  % (32248)------------------------------
% 2.50/1.76  % (32249)dis+10_1:1_cnfonf=lazy_not_gen:fsr=off:kws=precedence:nwc=5.0:s2a=on:ss=axioms:st=1.5:i=448:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/448Mi)
% 2.50/1.76  % (32247)Instruction limit reached!
% 2.50/1.76  % (32247)------------------------------
% 2.50/1.76  % (32247)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.76  % (32247)Termination reason: Unknown
% 2.50/1.76  % (32247)Termination phase: Property scanning
% 2.50/1.76  
% 2.50/1.76  % (32247)Memory used [KB]: 4349
% 2.50/1.76  % (32247)Time elapsed: 0.032 s
% 2.50/1.76  % (32247)Instructions burned: 109 (million)
% 2.50/1.76  % (32247)------------------------------
% 2.50/1.76  % (32247)------------------------------
% 2.50/1.76  % (32250)lrs+10_1:512_au=on:fde=unused:lma=on:nm=32:plsq=on:plsqc=1:plsqr=16121663,131072:sfv=off:sp=const_max:ss=axioms:st=3.0:tgt=full:i=46:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/46Mi)
% 2.50/1.77  % (32251)lrs+10_1:10_au=on:av=off:cbe=off:cnfonf=lazy_pi_sigma_gen:ntd=on:plsq=on:plsqc=1:plsqr=32,1:i=98:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/98Mi)
% 2.50/1.78  % (32250)Instruction limit reached!
% 2.50/1.78  % (32250)------------------------------
% 2.50/1.78  % (32250)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.78  % (32250)Termination reason: Unknown
% 2.50/1.78  % (32250)Termination phase: Preprocessing 2
% 2.50/1.78  
% 2.50/1.78  % (32250)Memory used [KB]: 2302
% 2.50/1.78  % (32250)Time elapsed: 0.015 s
% 2.50/1.78  % (32250)Instructions burned: 46 (million)
% 2.50/1.78  % (32250)------------------------------
% 2.50/1.78  % (32250)------------------------------
% 2.50/1.79  % (32229)Instruction limit reached!
% 2.50/1.79  % (32229)------------------------------
% 2.50/1.79  % (32229)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.79  % (32229)Termination reason: Unknown
% 2.50/1.79  % (32229)Termination phase: Saturation
% 2.50/1.79  
% 2.50/1.79  % (32229)Memory used [KB]: 11769
% 2.50/1.79  % (32229)Time elapsed: 0.215 s
% 2.50/1.79  % (32229)Instructions burned: 711 (million)
% 2.50/1.79  % (32229)------------------------------
% 2.50/1.79  % (32229)------------------------------
% 2.50/1.79  % (32252)ott+1002_1:1_apa=on:au=on:bd=off:cnfonf=off:fd=off:sos=on:sp=weighted_frequency:i=507:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/507Mi)
% 2.50/1.80  % (32251)Instruction limit reached!
% 2.50/1.80  % (32251)------------------------------
% 2.50/1.80  % (32251)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.80  % (32251)Termination reason: Unknown
% 2.50/1.80  % (32251)Termination phase: Saturation
% 2.50/1.80  
% 2.50/1.80  % (32251)Memory used [KB]: 2046
% 2.50/1.80  % (32251)Time elapsed: 0.026 s
% 2.50/1.80  % (32251)Instructions burned: 98 (million)
% 2.50/1.80  % (32251)------------------------------
% 2.50/1.80  % (32251)------------------------------
% 2.50/1.80  % (32253)dis+1010_2:3_amm=off:fd=preordered:ixr=off:nm=0:pe=on:piset=equals:prag=on:sac=on:tgt=ground:i=149:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/149Mi)
% 2.50/1.80  % (32254)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/39Mi)
% 2.50/1.81  % (32236)Instruction limit reached!
% 2.50/1.81  % (32236)------------------------------
% 2.50/1.81  % (32236)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.81  % (32236)Termination reason: Unknown
% 2.50/1.81  % (32236)Termination phase: Saturation
% 2.50/1.81  
% 2.50/1.81  % (32236)Memory used [KB]: 6652
% 2.50/1.81  % (32236)Time elapsed: 0.208 s
% 2.50/1.81  % (32236)Instructions burned: 783 (million)
% 2.50/1.81  % (32236)------------------------------
% 2.50/1.81  % (32236)------------------------------
% 2.50/1.82  % (32254)Instruction limit reached!
% 2.50/1.82  % (32254)------------------------------
% 2.50/1.82  % (32254)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.82  % (32254)Termination reason: Unknown
% 2.50/1.82  % (32254)Termination phase: Preprocessing 1
% 2.50/1.82  
% 2.50/1.82  % (32254)Memory used [KB]: 2430
% 2.50/1.82  % (32254)Time elapsed: 0.013 s
% 2.50/1.82  % (32254)Instructions burned: 41 (million)
% 2.50/1.82  % (32254)------------------------------
% 2.50/1.82  % (32254)------------------------------
% 2.50/1.82  % (32255)lrs+1004_1:1_cnfonf=lazy_pi_sigma_gen:fe=off:gs=on:hud=10:prag=on:tnu=1:i=6:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/6Mi)
% 2.50/1.82  % (32255)Instruction limit reached!
% 2.50/1.82  % (32255)------------------------------
% 2.50/1.82  % (32255)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.82  % (32255)Termination reason: Unknown
% 2.50/1.82  % (32255)Termination phase: shuffling
% 2.50/1.82  
% 2.50/1.82  % (32255)Memory used [KB]: 1407
% 2.50/1.82  % (32255)Time elapsed: 0.003 s
% 2.50/1.82  % (32255)Instructions burned: 7 (million)
% 2.50/1.82  % (32255)------------------------------
% 2.50/1.82  % (32255)------------------------------
% 2.50/1.83  % (32256)dis+1002_1:1_aac=none:au=on:e2e=on:nm=2:nwc=10.0:sd=1:ss=axioms:st=3.0:i=1087:si=on:rtra=on_0 on DTF2THF_31880 for (2997ds/1087Mi)
% 2.50/1.83  % (32257)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/47Mi)
% 2.50/1.84  % (32257)Instruction limit reached!
% 2.50/1.84  % (32257)------------------------------
% 2.50/1.84  % (32257)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.84  % (32257)Termination reason: Unknown
% 2.50/1.84  % (32257)Termination phase: Naming
% 2.50/1.84  
% 2.50/1.84  % (32257)Memory used [KB]: 2558
% 2.50/1.84  % (32257)Time elapsed: 0.015 s
% 2.50/1.84  % (32257)Instructions burned: 47 (million)
% 2.50/1.84  % (32257)------------------------------
% 2.50/1.84  % (32257)------------------------------
% 2.50/1.85  % (32258)lrs+1010_1:128_av=off:cbe=off:cnfonf=lazy_simp:fsr=off:ntd=on:ss=axioms:st=1.5:i=44:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/44Mi)
% 2.50/1.86  % (32258)Instruction limit reached!
% 2.50/1.86  % (32258)------------------------------
% 2.50/1.86  % (32258)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.86  % (32258)Termination reason: Unknown
% 2.50/1.86  % (32258)Termination phase: Property scanning
% 2.50/1.86  
% 2.50/1.86  % (32258)Memory used [KB]: 1918
% 2.50/1.86  % (32258)Time elapsed: 0.014 s
% 2.50/1.86  % (32258)Instructions burned: 47 (million)
% 2.50/1.86  % (32258)------------------------------
% 2.50/1.86  % (32258)------------------------------
% 2.50/1.87  % (32252)Refutation not found, incomplete strategy
% 2.50/1.87  % (32252)------------------------------
% 2.50/1.87  % (32252)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.87  % (32252)Termination reason: Refutation not found, incomplete strategy
% 2.50/1.87  
% 2.50/1.87  
% 2.50/1.87  % (32252)Memory used [KB]: 9978
% 2.50/1.87  % (32252)Time elapsed: 0.080 s
% 2.50/1.87  % (32252)Instructions burned: 280 (million)
% 2.50/1.87  % (32252)------------------------------
% 2.50/1.87  % (32252)------------------------------
% 2.50/1.87  % (32220)Instruction limit reached!
% 2.50/1.87  % (32220)------------------------------
% 2.50/1.87  % (32220)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.87  % (32220)Termination reason: Unknown
% 2.50/1.87  % (32220)Termination phase: Saturation
% 2.50/1.87  
% 2.50/1.87  % (32220)Memory used [KB]: 7931
% 2.50/1.87  % (32220)Time elapsed: 0.320 s
% 2.50/1.87  % (32220)Instructions burned: 1042 (million)
% 2.50/1.87  % (32220)------------------------------
% 2.50/1.87  % (32220)------------------------------
% 2.50/1.87  % (32259)dis+10_1:1_av=off:bd=off:cnfonf=lazy_gen:fe=off:hud=10:plsq=on:plsqc=1:plsqr=32,1:prag=on:tnu=1:i=432:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/432Mi)
% 2.50/1.88  % (32260)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/62Mi)
% 2.50/1.88  % (32253)Instruction limit reached!
% 2.50/1.88  % (32253)------------------------------
% 2.50/1.88  % (32253)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.88  % (32253)Termination reason: Unknown
% 2.50/1.88  % (32253)Termination phase: Property scanning
% 2.50/1.88  
% 2.50/1.88  % (32253)Memory used [KB]: 7931
% 2.50/1.88  % (32253)Time elapsed: 0.081 s
% 2.50/1.88  % (32253)Instructions burned: 149 (million)
% 2.50/1.88  % (32253)------------------------------
% 2.50/1.88  % (32253)------------------------------
% 2.50/1.88  % (32261)lrs+1010_1:16_add=large:amm=off:anc=all_dependent:chr=on:fd=off:ins=2:sp=const_max:tnu=5:uhcvi=on:i=31:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/31Mi)
% 2.50/1.89  % (32260)Instruction limit reached!
% 2.50/1.89  % (32260)------------------------------
% 2.50/1.89  % (32260)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.89  % (32260)Termination reason: Unknown
% 2.50/1.89  % (32260)Termination phase: Property scanning
% 2.50/1.89  
% 2.50/1.89  % (32260)Memory used [KB]: 1918
% 2.50/1.89  % (32260)Time elapsed: 0.017 s
% 2.50/1.89  % (32260)Instructions burned: 62 (million)
% 2.50/1.89  % (32260)------------------------------
% 2.50/1.89  % (32260)------------------------------
% 2.50/1.90  % (32261)Instruction limit reached!
% 2.50/1.90  % (32261)------------------------------
% 2.50/1.90  % (32261)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.90  % (32261)Termination reason: Unknown
% 2.50/1.90  % (32261)Termination phase: Property scanning
% 2.50/1.90  
% 2.50/1.90  % (32261)Memory used [KB]: 2174
% 2.50/1.90  % (32261)Time elapsed: 0.012 s
% 2.50/1.90  % (32261)Instructions burned: 34 (million)
% 2.50/1.90  % (32261)------------------------------
% 2.50/1.90  % (32261)------------------------------
% 2.50/1.90  % (32238)Instruction limit reached!
% 2.50/1.90  % (32238)------------------------------
% 2.50/1.90  % (32238)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.90  % (32238)Termination reason: Unknown
% 2.50/1.90  % (32238)Termination phase: Saturation
% 2.50/1.90  
% 2.50/1.90  % (32238)Memory used [KB]: 11641
% 2.50/1.90  % (32238)Time elapsed: 0.290 s
% 2.50/1.90  % (32238)Instructions burned: 881 (million)
% 2.50/1.90  % (32238)------------------------------
% 2.50/1.90  % (32238)------------------------------
% 2.50/1.90  % (32249)Instruction limit reached!
% 2.50/1.90  % (32249)------------------------------
% 2.50/1.90  % (32249)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.90  % (32249)Termination reason: Unknown
% 2.50/1.90  % (32249)Termination phase: Saturation
% 2.50/1.90  
% 2.50/1.90  % (32249)Memory used [KB]: 7291
% 2.50/1.90  % (32249)Time elapsed: 0.140 s
% 2.50/1.90  % (32249)Instructions burned: 448 (million)
% 2.50/1.90  % (32249)------------------------------
% 2.50/1.90  % (32249)------------------------------
% 2.50/1.90  % (32262)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/96Mi)
% 2.50/1.90  % (32263)lrs+1002_1:4_au=on:cbe=off:cnfonf=lazy_pi_sigma_gen:hud=15:inj=on:nwc=4.0:s2a=on:sac=on:sp=reverse_arity:i=453:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/453Mi)
% 2.50/1.91  % (32264)lrs-1004_1:1_au=on:bsd=on:cbe=off:cnfonf=off:fe=axiom:fsd=on:i=71:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/71Mi)
% 2.50/1.91  % (32265)dis+1002_1:1_bd=off:fsr=off:ntd=on:s2a=on:ss=axioms:i=83:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/83Mi)
% 2.50/1.91  % (32266)lrs+10_1:128_cnfonf=lazy_not_gen_be_off:hud=1:ins=1:i=11:si=on:rtra=on_0 on DTF2THF_31880 for (2996ds/11Mi)
% 2.50/1.91  % (32266)Instruction limit reached!
% 2.50/1.91  % (32266)------------------------------
% 2.50/1.91  % (32266)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.91  % (32266)Termination reason: Unknown
% 2.50/1.91  % (32266)Termination phase: shuffling
% 2.50/1.91  
% 2.50/1.91  % (32266)Memory used [KB]: 1535
% 2.50/1.91  % (32266)Time elapsed: 0.005 s
% 2.50/1.91  % (32266)Instructions burned: 14 (million)
% 2.50/1.91  % (32266)------------------------------
% 2.50/1.91  % (32266)------------------------------
% 2.50/1.92  % (32267)lrs+1010_1:1_au=on:cbe=off:cnfonf=lazy_not_gen_be_off:fsr=off:spb=non_intro:i=41:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/41Mi)
% 2.50/1.93  % (32264)Instruction limit reached!
% 2.50/1.93  % (32264)------------------------------
% 2.50/1.93  % (32264)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.93  % (32264)Termination reason: Unknown
% 2.50/1.93  % (32264)Termination phase: Preprocessing 3
% 2.50/1.93  
% 2.50/1.93  % (32264)Memory used [KB]: 3326
% 2.50/1.93  % (32264)Time elapsed: 0.025 s
% 2.50/1.93  % (32262)Instruction limit reached!
% 2.50/1.93  % (32262)------------------------------
% 2.50/1.93  % (32262)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.93  % (32264)Instructions burned: 73 (million)
% 2.50/1.93  % (32262)Termination reason: Unknown
% 2.50/1.93  % (32264)------------------------------
% 2.50/1.93  % (32264)------------------------------
% 2.50/1.93  % (32262)Termination phase: Property scanning
% 2.50/1.93  
% 2.50/1.93  % (32262)Memory used [KB]: 4221
% 2.50/1.93  % (32262)Time elapsed: 0.032 s
% 2.50/1.93  % (32262)Instructions burned: 97 (million)
% 2.50/1.93  % (32262)------------------------------
% 2.50/1.93  % (32262)------------------------------
% 2.50/1.93  % (32267)Instruction limit reached!
% 2.50/1.93  % (32267)------------------------------
% 2.50/1.93  % (32267)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.93  % (32267)Termination reason: Unknown
% 2.50/1.93  % (32267)Termination phase: Property scanning
% 2.50/1.93  
% 2.50/1.93  % (32267)Memory used [KB]: 1918
% 2.50/1.93  % (32267)Time elapsed: 0.014 s
% 2.50/1.93  % (32267)Instructions burned: 44 (million)
% 2.50/1.93  % (32267)------------------------------
% 2.50/1.93  % (32267)------------------------------
% 2.50/1.93  % (32265)Instruction limit reached!
% 2.50/1.93  % (32265)------------------------------
% 2.50/1.93  % (32265)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.93  % (32265)Termination reason: Unknown
% 2.50/1.93  % (32265)Termination phase: Saturation
% 2.50/1.93  
% 2.50/1.93  % (32265)Memory used [KB]: 7036
% 2.50/1.93  % (32265)Time elapsed: 0.028 s
% 2.50/1.93  % (32265)Instructions burned: 84 (million)
% 2.50/1.93  % (32265)------------------------------
% 2.50/1.93  % (32265)------------------------------
% 2.50/1.94  % (32268)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/6Mi)
% 2.50/1.94  % (32269)dis+10_1:1_avsq=on:cnfonf=off:e2e=on:nm=32:i=150:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/150Mi)
% 2.50/1.94  % (32268)Instruction limit reached!
% 2.50/1.94  % (32268)------------------------------
% 2.50/1.94  % (32268)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.94  % (32268)Termination reason: Unknown
% 2.50/1.94  % (32268)Termination phase: shuffling
% 2.50/1.94  
% 2.50/1.94  % (32268)Memory used [KB]: 1407
% 2.50/1.94  % (32268)Time elapsed: 0.004 s
% 2.50/1.94  % (32268)Instructions burned: 7 (million)
% 2.50/1.94  % (32268)------------------------------
% 2.50/1.94  % (32268)------------------------------
% 2.50/1.94  % (32270)ott+1010_1:1_au=on:s2a=on:sd=7:ss=axioms:st=1.5:i=343:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/343Mi)
% 2.50/1.94  % (32271)ott+1010_1:4_cbe=off:chr=on:hfsq=on:hfsqr=1,16:hud=3:sac=on:sp=unary_frequency:ss=axioms:st=5.0:tnu=2:i=109:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/109Mi)
% 2.50/1.95  % (32272)dis+10_1:1_au=on:c=on:e2e=on:fsr=off:sos=all:sp=const_frequency:ss=axioms:i=253:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/253Mi)
% 2.50/1.96  % (32270)Refutation not found, incomplete strategy
% 2.50/1.96  % (32270)------------------------------
% 2.50/1.96  % (32270)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.96  % (32270)Termination reason: Refutation not found, incomplete strategy
% 2.50/1.96  
% 2.50/1.96  
% 2.50/1.96  % (32270)Memory used [KB]: 6780
% 2.50/1.96  % (32270)Time elapsed: 0.017 s
% 2.50/1.96  % (32270)Instructions burned: 52 (million)
% 2.50/1.96  % (32270)------------------------------
% 2.50/1.96  % (32270)------------------------------
% 2.50/1.97  % (32273)lrs+10_1:1_au=on:cnfonf=off:sd=1:sgt=16:ss=axioms:i=140:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/140Mi)
% 2.50/1.98  % (32271)Instruction limit reached!
% 2.50/1.98  % (32271)------------------------------
% 2.50/1.98  % (32271)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.98  % (32271)Termination reason: Unknown
% 2.50/1.98  % (32271)Termination phase: Property scanning
% 2.50/1.98  
% 2.50/1.98  % (32271)Memory used [KB]: 4093
% 2.50/1.98  % (32271)Time elapsed: 0.036 s
% 2.50/1.98  % (32271)Instructions burned: 111 (million)
% 2.50/1.98  % (32271)------------------------------
% 2.50/1.98  % (32271)------------------------------
% 2.50/1.98  % (32269)Instruction limit reached!
% 2.50/1.98  % (32269)------------------------------
% 2.50/1.98  % (32269)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.98  % (32269)Termination reason: Unknown
% 2.50/1.98  % (32269)Termination phase: Property scanning
% 2.50/1.98  
% 2.50/1.98  % (32269)Memory used [KB]: 4221
% 2.50/1.98  % (32269)Time elapsed: 0.046 s
% 2.50/1.98  % (32269)Instructions burned: 151 (million)
% 2.50/1.98  % (32269)------------------------------
% 2.50/1.98  % (32269)------------------------------
% 2.50/1.98  % (32259)Instruction limit reached!
% 2.50/1.98  % (32259)------------------------------
% 2.50/1.98  % (32259)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/1.98  % (32259)Termination reason: Unknown
% 2.50/1.98  % (32259)Termination phase: Saturation
% 2.50/1.98  
% 2.50/1.98  % (32259)Memory used [KB]: 2430
% 2.50/1.98  % (32259)Time elapsed: 0.111 s
% 2.50/1.98  % (32259)Instructions burned: 434 (million)
% 2.50/1.98  % (32259)------------------------------
% 2.50/1.98  % (32259)------------------------------
% 2.50/1.99  % (32274)dis+1010_16:1_acc=model:au=on:avsq=on:cond=fast:plsq=on:plsqc=2:plsqr=9267,262144:i=614:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/614Mi)
% 2.50/1.99  % (32275)lrs+1002_1:1_e2e=on:fde=unused:fe=axiom:prag=on:sd=1:sos=on:ss=axioms:st=2.0:i=202:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/202Mi)
% 2.50/1.99  % (32276)dis+1002_1:1_au=on:cs=on:ins=3:kws=inv_frequency:nwc=10.0:ss=axioms:st=3.0:i=339:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/339Mi)
% 2.50/2.01  % (32273)Instruction limit reached!
% 2.50/2.01  % (32273)------------------------------
% 2.50/2.01  % (32273)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.50/2.01  % (32273)Termination reason: Unknown
% 2.50/2.01  % (32273)Termination phase: Property scanning
% 2.50/2.01  
% 2.50/2.01  % (32273)Memory used [KB]: 4349
% 2.50/2.01  % (32273)Time elapsed: 0.040 s
% 2.50/2.01  % (32273)Instructions burned: 142 (million)
% 2.50/2.01  % (32273)------------------------------
% 2.50/2.01  % (32273)------------------------------
% 5.97/2.01  % (32263)Instruction limit reached!
% 5.97/2.01  % (32263)------------------------------
% 5.97/2.01  % (32263)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.01  % (32263)Termination reason: Unknown
% 5.97/2.01  % (32263)Termination phase: Saturation
% 5.97/2.01  
% 5.97/2.01  % (32263)Memory used [KB]: 6652
% 5.97/2.01  % (32263)Time elapsed: 0.111 s
% 5.97/2.01  % (32263)Instructions burned: 453 (million)
% 5.97/2.01  % (32263)------------------------------
% 5.97/2.01  % (32263)------------------------------
% 5.97/2.02  % (32277)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=283:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/283Mi)
% 5.97/2.02  % (32278)dis+2_1:1_cha=on:hud=7:nwc=3.0:prag=on:tnu=2:i=134:si=on:rtra=on_0 on DTF2THF_31880 for (2995ds/134Mi)
% 5.97/2.03  % (32272)Instruction limit reached!
% 5.97/2.03  % (32272)------------------------------
% 5.97/2.03  % (32272)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.03  % (32272)Termination reason: Unknown
% 5.97/2.03  % (32272)Termination phase: Saturation
% 5.97/2.03  
% 5.97/2.03  % (32272)Memory used [KB]: 7291
% 5.97/2.03  % (32272)Time elapsed: 0.077 s
% 5.97/2.03  % (32272)Instructions burned: 254 (million)
% 5.97/2.03  % (32272)------------------------------
% 5.97/2.03  % (32272)------------------------------
% 5.97/2.04  % (32279)dis+1010_1:64_cnfonf=lazy_simp:fd=off:i=298:si=on:rtra=on_0 on DTF2THF_31880 for (2994ds/298Mi)
% 5.97/2.05  % (32275)Instruction limit reached!
% 5.97/2.05  % (32275)------------------------------
% 5.97/2.05  % (32275)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.05  % (32275)Termination reason: Unknown
% 5.97/2.05  % (32275)Termination phase: Saturation
% 5.97/2.05  
% 5.97/2.05  % (32275)Memory used [KB]: 4605
% 5.97/2.05  % (32275)Time elapsed: 0.061 s
% 5.97/2.05  % (32275)Instructions burned: 204 (million)
% 5.97/2.05  % (32275)------------------------------
% 5.97/2.05  % (32275)------------------------------
% 5.97/2.06  % (32278)Instruction limit reached!
% 5.97/2.06  % (32278)------------------------------
% 5.97/2.06  % (32278)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.06  % (32278)Termination reason: Unknown
% 5.97/2.06  % (32278)Termination phase: Property scanning
% 5.97/2.06  
% 5.97/2.06  % (32278)Memory used [KB]: 4349
% 5.97/2.06  % (32278)Time elapsed: 0.038 s
% 5.97/2.06  % (32278)Instructions burned: 135 (million)
% 5.97/2.06  % (32278)------------------------------
% 5.97/2.06  % (32278)------------------------------
% 5.97/2.06  % (32280)lrs+2_1:8_erd=off:plsq=on:plsqr=32,1:sos=on:i=192:si=on:rtra=on_0 on DTF2THF_31880 for (2994ds/192Mi)
% 5.97/2.07  % (32281)lrs+10_1:1_bd=off:hud=1:nm=0:prag=on:sd=2:sgt=32:sos=all:ss=axioms:i=258:si=on:rtra=on_0 on DTF2THF_31880 for (2994ds/258Mi)
% 5.97/2.09  % (32276)Instruction limit reached!
% 5.97/2.09  % (32276)------------------------------
% 5.97/2.09  % (32276)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.09  % (32276)Termination reason: Unknown
% 5.97/2.09  % (32276)Termination phase: Saturation
% 5.97/2.09  
% 5.97/2.09  % (32276)Memory used [KB]: 9594
% 5.97/2.09  % (32276)Time elapsed: 0.093 s
% 5.97/2.09  % (32276)Instructions burned: 342 (million)
% 5.97/2.09  % (32276)------------------------------
% 5.97/2.09  % (32276)------------------------------
% 5.97/2.09  % (32277)Instruction limit reached!
% 5.97/2.09  % (32277)------------------------------
% 5.97/2.09  % (32277)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.97/2.09  % (32277)Termination reason: Unknown
% 5.97/2.09  % (32277)Termination phase: Saturation
% 5.97/2.09  
% 5.97/2.09  % (32277)Memory used [KB]: 6780
% 5.97/2.09  % (32277)Time elapsed: 0.074 s
% 5.97/2.09  % (32277)Instructions burned: 285 (million)
% 5.97/2.09  % (32277)------------------------------
% 5.97/2.09  % (32277)------------------------------
% 5.97/2.10  % (32282)lrs+1002_1:1024_au=on:cond=fast:ntd=on:piset=and:plsq=on:plsqc=1:plsqr=183491,1048576:sac=on:tgt=ground:i=90:si=on:rtra=on_0 on DTF2THF_31880 for (2994ds/90Mi)
% 5.97/2.10  % (32283)dis+1004_16:1_avsq=on:avsqr=1,16:cnfonf=lazy_gen:cs=on:fe=off:tgt=ground:tnu=1:i=231:si=on:rtra=on_0 on DTF2THF_31880 for (2994ds/231Mi)
% 6.47/2.11  % (32279)Instruction limit reached!
% 6.47/2.11  % (32279)------------------------------
% 6.47/2.11  % (32279)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.11  % (32279)Termination reason: Unknown
% 6.47/2.11  % (32279)Termination phase: Saturation
% 6.47/2.11  
% 6.47/2.11  % (32279)Memory used [KB]: 6780
% 6.47/2.11  % (32279)Time elapsed: 0.078 s
% 6.47/2.11  % (32279)Instructions burned: 301 (million)
% 6.47/2.11  % (32279)------------------------------
% 6.47/2.11  % (32279)------------------------------
% 6.47/2.12  % (32280)Instruction limit reached!
% 6.47/2.12  % (32280)------------------------------
% 6.47/2.12  % (32280)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.12  % (32280)Termination reason: Unknown
% 6.47/2.12  % (32280)Termination phase: Property scanning
% 6.47/2.12  
% 6.47/2.12  % (32280)Memory used [KB]: 4349
% 6.47/2.12  % (32280)Time elapsed: 0.057 s
% 6.47/2.12  % (32280)Instructions burned: 194 (million)
% 6.47/2.12  % (32280)------------------------------
% 6.47/2.12  % (32280)------------------------------
% 6.47/2.12  % (32282)Instruction limit reached!
% 6.47/2.12  % (32282)------------------------------
% 6.47/2.12  % (32282)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.12  % (32282)Termination reason: Unknown
% 6.47/2.12  % (32282)Termination phase: Preprocessing 3
% 6.47/2.12  
% 6.47/2.12  % (32282)Memory used [KB]: 4093
% 6.47/2.12  % (32282)Time elapsed: 0.028 s
% 6.47/2.12  % (32282)Instructions burned: 91 (million)
% 6.47/2.12  % (32282)------------------------------
% 6.47/2.12  % (32282)------------------------------
% 6.47/2.12  % (32284)lrs+1002_1:1_au=on:s2a=on:sgt=32:slsq=on:slsqc=1:slsql=off:ss=axioms:i=458:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/458Mi)
% 6.47/2.13  % (32285)lrs+1010_1:16_add=large:amm=off:anc=all_dependent:chr=on:fd=off:ins=2:sp=const_max:tnu=5:uhcvi=on:i=31:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/31Mi)
% 6.47/2.13  % (32286)lrs+10_1:1_cnfonf=lazy_gen:kws=inv_precedence:nwc=10.0:s2a=on:sp=weighted_frequency:ss=axioms:i=297:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/297Mi)
% 6.47/2.13  % (32274)First to succeed.
% 6.47/2.14  % (32281)Instruction limit reached!
% 6.47/2.14  % (32281)------------------------------
% 6.47/2.14  % (32281)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.14  % (32281)Termination reason: Unknown
% 6.47/2.14  % (32281)Termination phase: Property scanning
% 6.47/2.14  
% 6.47/2.14  % (32281)Memory used [KB]: 7803
% 6.47/2.14  % (32281)Time elapsed: 0.070 s
% 6.47/2.14  % (32281)Instructions burned: 259 (million)
% 6.47/2.14  % (32281)------------------------------
% 6.47/2.14  % (32281)------------------------------
% 6.47/2.14  % (32285)Instruction limit reached!
% 6.47/2.14  % (32285)------------------------------
% 6.47/2.14  % (32285)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.14  % (32285)Termination reason: Unknown
% 6.47/2.14  % (32285)Termination phase: Property scanning
% 6.47/2.14  
% 6.47/2.14  % (32285)Memory used [KB]: 2174
% 6.47/2.14  % (32285)Time elapsed: 0.011 s
% 6.47/2.14  % (32285)Instructions burned: 31 (million)
% 6.47/2.14  % (32285)------------------------------
% 6.47/2.14  % (32285)------------------------------
% 6.47/2.15  % (32287)dis+2_1:4_amm=off:au=on:cbe=off:cnfonf=lazy_gen:hfaw=0:hfsq=on:hfsql=off:plsq=on:plsqc=1:plsqr=35,4:sac=on:i=987:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/987Mi)
% 6.47/2.15  % (32288)lrs+10_1:1024_avsq=on:avsqc=4:avsqr=584411,1048576:bd=off:bet=on:br=off:chr=on:fsd=on:fsdmm=1:hud=10:nm=0:ntd=on:nwc=9.0:piset=or:plsq=on:plsqc=2:plsql=on:plsqr=852219,1048576:rawr=on:sp=const_frequency:spb=units:i=182:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/182Mi)
% 6.47/2.16  % (32283)Instruction limit reached!
% 6.47/2.16  % (32283)------------------------------
% 6.47/2.16  % (32283)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.16  % (32283)Termination reason: Unknown
% 6.47/2.16  % (32283)Termination phase: Saturation
% 6.47/2.16  
% 6.47/2.16  % (32283)Memory used [KB]: 7036
% 6.47/2.16  % (32283)Time elapsed: 0.059 s
% 6.47/2.16  % (32283)Instructions burned: 233 (million)
% 6.47/2.16  % (32283)------------------------------
% 6.47/2.16  % (32283)------------------------------
% 6.47/2.16  % (32256)Instruction limit reached!
% 6.47/2.16  % (32256)------------------------------
% 6.47/2.16  % (32256)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.16  % (32256)Termination reason: Unknown
% 6.47/2.16  % (32256)Termination phase: Saturation
% 6.47/2.16  
% 6.47/2.16  % (32256)Memory used [KB]: 11513
% 6.47/2.16  % (32256)Time elapsed: 0.360 s
% 6.47/2.16  % (32256)Instructions burned: 1087 (million)
% 6.47/2.16  % (32256)------------------------------
% 6.47/2.16  % (32256)------------------------------
% 6.47/2.17  % (32289)dis+10_1:1_au=on:e2e=on:fde=none:nwc=10.0:s2a=on:s2at=2.0:i=182:si=on:rtra=on_0 on DTF2THF_31880 for (2993ds/182Mi)
% 6.47/2.17  % (32274)Refutation found. Thanks to Tanya!
% 6.47/2.17  % SZS status Theorem for DTF2THF_31880
% 6.47/2.17  % SZS output start Proof for DTF2THF_31880
% 6.47/2.17  thf(type_def_5, type, term: $tType).
% 6.47/2.17  thf(type_def_7, type, subst: $tType).
% 6.47/2.17  thf(type_def_8, type, d_term: $tType).
% 6.47/2.17  thf(type_def_9, type, d_subst: $tType).
% 6.47/2.17  thf(func_def_0, type, term: $tType).
% 6.47/2.17  thf(func_def_1, type, subst: $tType).
% 6.47/2.17  thf(func_def_2, type, one: term).
% 6.47/2.17  thf(func_def_3, type, ap: term > term > term).
% 6.47/2.17  thf(func_def_4, type, lam: term > term).
% 6.47/2.17  thf(func_def_5, type, sub: term > subst > term).
% 6.47/2.17  thf(func_def_6, type, id: subst).
% 6.47/2.17  thf(func_def_7, type, sh: subst).
% 6.47/2.17  thf(func_def_8, type, push: term > subst > subst).
% 6.47/2.17  thf(func_def_9, type, comp: subst > subst > subst).
% 6.47/2.17  thf(func_def_10, type, var: term > $o).
% 6.47/2.17  thf(func_def_18, type, hoasap: subst > term > subst > term > term).
% 6.47/2.17  thf(func_def_73, type, hoaslam: subst > (subst > term > term) > term).
% 6.47/2.17  thf(func_def_86, type, hoasinduction_p_and_p_prime: (subst > term > subst > $o) > (term > $o) > $o).
% 6.47/2.17  thf(func_def_107, type, hoasvar: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_121, type, pushprop_p_and_p_prime: term > subst > (term > $o) > (term > $o) > $o).
% 6.47/2.17  thf(func_def_124, type, d_term: $tType).
% 6.47/2.17  thf(func_def_125, type, d_subst: $tType).
% 6.47/2.17  thf(func_def_126, type, d2term: d_term > term).
% 6.47/2.17  thf(func_def_127, type, d2subst: d_subst > subst).
% 6.47/2.17  thf(func_def_128, type, d_one: d_term).
% 6.47/2.17  thf(func_def_129, type, d_id: d_subst).
% 6.47/2.17  thf(func_def_143, type, sP1: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_144, type, sP2: (term > $o) > $o).
% 6.47/2.17  thf(func_def_148, type, sP6: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_150, type, sP8: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_152, type, sP10: (term > $o) > $o).
% 6.47/2.17  thf(func_def_155, type, sP13: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_156, type, sP14: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_158, type, sP16: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_161, type, sP19: (term > $o) > $o).
% 6.47/2.17  thf(func_def_165, type, sP23: (term > $o) > $o).
% 6.47/2.17  thf(func_def_166, type, sP24: (term > $o) > $o).
% 6.47/2.17  thf(func_def_169, type, sP27: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_170, type, sP28: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_171, type, sP29: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_172, type, sP30: (term > $o) > $o).
% 6.47/2.17  thf(func_def_173, type, sP31: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_179, type, sP37: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_181, type, sP39: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_182, type, sP40: (term > $o) > $o).
% 6.47/2.17  thf(func_def_183, type, sP41: (term > $o) > $o).
% 6.47/2.17  thf(func_def_186, type, sP44: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_188, type, sP46: (term > $o) > $o).
% 6.47/2.17  thf(func_def_189, type, sP47: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_190, type, sP48: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_197, type, sP55: (term > $o) > $o).
% 6.47/2.17  thf(func_def_199, type, sP57: (subst > term > subst > $o) > $o).
% 6.47/2.17  thf(func_def_201, type, sK59: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_202, type, sK60: term).
% 6.47/2.17  thf(func_def_203, type, sK61: term > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_204, type, sK62: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_205, type, sK63: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_206, type, sK64: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_207, type, sK65: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_208, type, sK66: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_209, type, sK67: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_210, type, sK68: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_211, type, sK69: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_212, type, sK70: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_213, type, sK71: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_214, type, sK72: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_215, type, sK73: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_216, type, sK74: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_217, type, sK75: subst > term > term).
% 6.47/2.17  thf(func_def_218, type, sK76: subst > term > term).
% 6.47/2.17  thf(func_def_219, type, sK77: term).
% 6.47/2.17  thf(func_def_220, type, sK78: subst).
% 6.47/2.17  thf(func_def_221, type, sK79: subst).
% 6.47/2.17  thf(func_def_222, type, sK80: term).
% 6.47/2.17  thf(func_def_223, type, sK81: term).
% 6.47/2.17  thf(func_def_224, type, sK82: term).
% 6.47/2.17  thf(func_def_225, type, sK83: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_226, type, sK84: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_227, type, sK85: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_228, type, sK86: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_229, type, sK87: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_230, type, sK88: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_231, type, sK89: subst).
% 6.47/2.17  thf(func_def_232, type, sK90: term).
% 6.47/2.17  thf(func_def_233, type, sK91: (term > $o) > term).
% 6.47/2.17  thf(func_def_234, type, sK92: (term > $o) > term).
% 6.47/2.17  thf(func_def_235, type, sK93: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_236, type, sK94: term).
% 6.47/2.17  thf(func_def_237, type, sK95: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_238, type, sK96: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_239, type, sK97: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_240, type, sK98: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_241, type, sK99: term > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_242, type, sK100: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_243, type, sK101: term).
% 6.47/2.17  thf(func_def_244, type, sK102: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_245, type, sK103: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_246, type, sK104: term).
% 6.47/2.17  thf(func_def_247, type, sK105: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_248, type, sK106: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_249, type, sK107: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_250, type, sK108: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_251, type, sK109: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_252, type, sK110: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_253, type, sK111: term).
% 6.47/2.17  thf(func_def_254, type, sK112: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_255, type, sK113: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_256, type, sK114: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_257, type, sK115: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_258, type, sK116: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_259, type, sK117: term > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_260, type, sK118: (subst > term > subst > $o) > term > $o).
% 6.47/2.17  thf(func_def_261, type, sK119: (term > $o) > term).
% 6.47/2.17  thf(func_def_262, type, sK120: (term > $o) > term).
% 6.47/2.17  thf(func_def_263, type, sK121: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_264, type, sK122: (term > $o) > term).
% 6.47/2.17  thf(func_def_265, type, sK123: term > $o).
% 6.47/2.17  thf(func_def_266, type, sK124: term).
% 6.47/2.17  thf(func_def_267, type, sK125: term > term).
% 6.47/2.17  thf(func_def_268, type, sK126: term).
% 6.47/2.17  thf(func_def_269, type, sK127: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_270, type, sK128: term).
% 6.47/2.17  thf(func_def_271, type, sK129: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_272, type, sK130: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_273, type, sK131: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_274, type, sK132: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_275, type, sK133: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_276, type, sK134: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_277, type, sK135: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_278, type, sK136: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_279, type, sK137: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_280, type, sK138: (term > $o) > term > term).
% 6.47/2.17  thf(func_def_281, type, sK139: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_282, type, sK140: (subst > term > subst > $o) > (term > $o) > term).
% 6.47/2.17  thf(func_def_283, type, sK141: term).
% 6.47/2.17  thf(func_def_284, type, sK142: term > $o).
% 6.47/2.17  thf(func_def_285, type, sK143: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_286, type, sK144: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_287, type, sK145: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_288, type, sK146: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_289, type, sK147: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_290, type, sK148: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_291, type, sK149: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_292, type, sK150: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_293, type, sK151: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_294, type, sK152: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_295, type, sK153: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_296, type, sK154: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_297, type, sK155: (term > $o) > term).
% 6.47/2.17  thf(func_def_298, type, sK156: (term > $o) > term).
% 6.47/2.17  thf(func_def_299, type, sK157: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_300, type, sK158: term).
% 6.47/2.17  thf(func_def_301, type, sK159: term > $o).
% 6.47/2.17  thf(func_def_302, type, sK160: term).
% 6.47/2.17  thf(func_def_303, type, sK161: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_304, type, sK162: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_305, type, sK163: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_306, type, sK164: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_307, type, sK165: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_308, type, sK166: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_309, type, sK167: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_310, type, sK168: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_311, type, sK169: (term > $o) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_312, type, sK170: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_313, type, sK171: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_314, type, sK172: (term > $o) > term).
% 6.47/2.17  thf(func_def_315, type, sK173: (term > $o) > term).
% 6.47/2.17  thf(func_def_316, type, sK174: subst).
% 6.47/2.17  thf(func_def_317, type, sK175: term).
% 6.47/2.17  thf(func_def_318, type, sK176: subst).
% 6.47/2.17  thf(func_def_319, type, sK177: subst).
% 6.47/2.17  thf(func_def_320, type, sK178: term).
% 6.47/2.17  thf(func_def_321, type, sK179: term).
% 6.47/2.17  thf(func_def_322, type, sK180: term > $o).
% 6.47/2.17  thf(func_def_323, type, sK181: subst).
% 6.47/2.17  thf(func_def_324, type, sK182: term > $o).
% 6.47/2.17  thf(func_def_325, type, sK183: term).
% 6.47/2.17  thf(func_def_326, type, sK184: term > term).
% 6.47/2.17  thf(func_def_327, type, sK185: (term > $o) > term).
% 6.47/2.17  thf(func_def_328, type, sK186: (term > $o) > subst > term).
% 6.47/2.17  thf(func_def_329, type, sK187: (term > $o) > term).
% 6.47/2.17  thf(func_def_330, type, sK188: (term > $o) > term).
% 6.47/2.17  thf(func_def_331, type, sK189: (term > $o) > term).
% 6.47/2.17  thf(func_def_332, type, sK190: (term > $o) > term).
% 6.47/2.17  thf(func_def_333, type, sK191: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_334, type, sK192: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_335, type, sK193: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_336, type, sK194: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_337, type, sK195: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_338, type, sK196: term).
% 6.47/2.17  thf(func_def_339, type, sK197: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_340, type, sK198: term).
% 6.47/2.17  thf(func_def_341, type, sK199: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_342, type, sK200: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_343, type, sK201: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_344, type, sK202: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_345, type, sK203: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_346, type, sK204: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_347, type, sK205: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_348, type, sK206: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_349, type, sK207: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_350, type, sK208: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_351, type, sK209: term).
% 6.47/2.17  thf(func_def_352, type, sK210: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_353, type, sK211: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_354, type, sK212: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_355, type, sK213: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_356, type, sK214: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_357, type, sK215: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_358, type, sK216: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_359, type, sK217: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_360, type, sK218: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_361, type, sK219: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_362, type, sK220: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_363, type, sK221: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_364, type, sK222: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_365, type, sK223: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_366, type, sK224: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_367, type, sK225: term).
% 6.47/2.17  thf(func_def_368, type, sK226: term).
% 6.47/2.17  thf(func_def_369, type, sK227: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_370, type, sK228: (term > $o) > term).
% 6.47/2.17  thf(func_def_371, type, sK229: (term > $o) > term).
% 6.47/2.17  thf(func_def_372, type, sK230: term).
% 6.47/2.17  thf(func_def_373, type, sK231: term > $o).
% 6.47/2.17  thf(func_def_374, type, sK232: term > term).
% 6.47/2.17  thf(func_def_375, type, sK233: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_376, type, sK234: term).
% 6.47/2.17  thf(func_def_377, type, sK235: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_378, type, sK236: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_379, type, sK237: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_380, type, sK238: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_381, type, sK239: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_382, type, sK240: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_383, type, sK241: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_384, type, sK242: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_385, type, sK243: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_386, type, sK244: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_387, type, sK245: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_388, type, sK246: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_389, type, sK247: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_390, type, sK248: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_391, type, sK249: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_392, type, sK250: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_393, type, sK251: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_394, type, sK252: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_395, type, sK253: term).
% 6.47/2.17  thf(func_def_396, type, sK254: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_397, type, sK255: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_398, type, sK256: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_399, type, sK257: (term > $o) > term).
% 6.47/2.17  thf(func_def_400, type, sK258: (term > $o) > term).
% 6.47/2.17  thf(func_def_401, type, sK259: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_402, type, sK260: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_403, type, sK261: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_404, type, sK262: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_405, type, sK263: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_406, type, sK264: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_407, type, sK265: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_408, type, sK266: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_409, type, sK267: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_410, type, sK268: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_411, type, sK269: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_412, type, sK270: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_413, type, sK271: (term > $o) > subst > term).
% 6.47/2.17  thf(func_def_414, type, sK272: (term > $o) > term).
% 6.47/2.17  thf(func_def_415, type, sK273: term).
% 6.47/2.17  thf(func_def_416, type, sK274: subst).
% 6.47/2.17  thf(func_def_417, type, sK275: term > $o).
% 6.47/2.17  thf(func_def_418, type, sK276: term).
% 6.47/2.17  thf(func_def_419, type, sK277: term > term).
% 6.47/2.17  thf(func_def_420, type, sK278: term).
% 6.47/2.17  thf(func_def_421, type, sK279: term > $o).
% 6.47/2.17  thf(func_def_422, type, sK280: term > term).
% 6.47/2.17  thf(func_def_423, type, sK281: (term > $o) > term).
% 6.47/2.17  thf(func_def_424, type, sK282: (term > $o) > term).
% 6.47/2.17  thf(func_def_425, type, sK283: (term > $o) > term).
% 6.47/2.17  thf(func_def_426, type, sK284: (term > $o) > term).
% 6.47/2.17  thf(func_def_427, type, sK285: (term > $o) > term).
% 6.47/2.17  thf(func_def_428, type, sK286: (term > $o) > term).
% 6.47/2.17  thf(func_def_429, type, sK287: term > subst > term > term).
% 6.47/2.17  thf(func_def_430, type, sK288: term).
% 6.47/2.17  thf(func_def_431, type, sK289: term > $o).
% 6.47/2.17  thf(func_def_432, type, sK290: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_433, type, sK291: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_434, type, sK292: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_435, type, sK293: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_436, type, sK294: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_437, type, sK295: term).
% 6.47/2.17  thf(func_def_438, type, sK296: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_439, type, sK297: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_440, type, sK298: (subst > term > subst > $o) > (term > $o) > term).
% 6.47/2.17  thf(func_def_441, type, sK299: (term > $o) > term > term).
% 6.47/2.17  thf(func_def_442, type, sK300: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_443, type, sK301: term).
% 6.47/2.17  thf(func_def_444, type, sK302: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_445, type, sK303: term).
% 6.47/2.17  thf(func_def_446, type, sK304: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_447, type, sK305: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_448, type, sK306: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_449, type, sK307: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_450, type, sK308: term > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_451, type, sK309: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_452, type, sK310: term).
% 6.47/2.17  thf(func_def_453, type, sK311: term > $o).
% 6.47/2.17  thf(func_def_454, type, sK312: term > term).
% 6.47/2.17  thf(func_def_455, type, sK313: (term > $o) > term).
% 6.47/2.17  thf(func_def_456, type, sK314: (term > $o) > term).
% 6.47/2.17  thf(func_def_457, type, sK315: (term > $o) > term).
% 6.47/2.17  thf(func_def_458, type, sK316: (term > $o) > term).
% 6.47/2.17  thf(func_def_459, type, sK317: term).
% 6.47/2.17  thf(func_def_460, type, sK318: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_461, type, sK319: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_462, type, sK320: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_463, type, sK321: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_464, type, sK322: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_465, type, sK323: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_466, type, sK324: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_467, type, sK325: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_468, type, sK326: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_469, type, sK327: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_470, type, sK328: term).
% 6.47/2.17  thf(func_def_471, type, sK329: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_472, type, sK330: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_473, type, sK331: term).
% 6.47/2.17  thf(func_def_474, type, sK332: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_475, type, sK333: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_476, type, sK334: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_477, type, sK335: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_478, type, sK336: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_479, type, sK337: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_480, type, sK338: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_481, type, sK339: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_482, type, sK340: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_483, type, sK341: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_484, type, sK342: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_485, type, sK343: term).
% 6.47/2.17  thf(func_def_486, type, sK344: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_487, type, sK345: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_488, type, sK346: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_489, type, sK347: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_490, type, sK348: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_491, type, sK349: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_492, type, sK350: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_493, type, sK351: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_494, type, sK352: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_495, type, sK353: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_496, type, sK354: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_497, type, sK355: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_498, type, sK356: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_499, type, sK357: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_500, type, sK358: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_501, type, sK359: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_502, type, sK360: term).
% 6.47/2.17  thf(func_def_503, type, sK361: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_504, type, sK362: term > $o).
% 6.47/2.17  thf(func_def_505, type, sK363: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_506, type, sK364: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_507, type, sK365: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_508, type, sK366: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_509, type, sK367: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_510, type, sK368: (term > $o) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_511, type, sK369: (term > $o) > term > term).
% 6.47/2.17  thf(func_def_512, type, sK370: subst).
% 6.47/2.17  thf(func_def_513, type, sK371: term).
% 6.47/2.17  thf(func_def_514, type, sK372: term > $o).
% 6.47/2.17  thf(func_def_515, type, sK373: term > term).
% 6.47/2.17  thf(func_def_516, type, sK374: (term > $o) > term).
% 6.47/2.17  thf(func_def_517, type, sK375: (term > $o) > subst > term).
% 6.47/2.17  thf(func_def_518, type, sK376: (term > $o) > term).
% 6.47/2.17  thf(func_def_519, type, sK377: (term > $o) > term).
% 6.47/2.17  thf(func_def_520, type, sK378: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_521, type, sK379: term).
% 6.47/2.17  thf(func_def_522, type, sK380: term > $o).
% 6.47/2.17  thf(func_def_523, type, sK381: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_524, type, sK382: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_525, type, sK383: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_526, type, sK384: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_527, type, sK385: (term > $o) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_528, type, sK386: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_529, type, sK387: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_530, type, sK388: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_531, type, sK389: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_532, type, sK390: (term > $o) > term > term).
% 6.47/2.17  thf(func_def_533, type, sK391: term).
% 6.47/2.17  thf(func_def_534, type, sK392: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_535, type, sK393: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_536, type, sK394: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_537, type, sK395: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_538, type, sK396: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_539, type, sK397: term).
% 6.47/2.17  thf(func_def_540, type, sK398: term > $o).
% 6.47/2.17  thf(func_def_541, type, sK399: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_542, type, sK400: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_543, type, sK401: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_544, type, sK402: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_545, type, sK403: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_546, type, sK404: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_547, type, sK405: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_548, type, sK406: (subst > term > subst > $o) > subst).
% 6.47/2.17  thf(func_def_549, type, sK407: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_550, type, sK408: (subst > term > subst > $o) > (term > $o) > term).
% 6.47/2.17  thf(func_def_551, type, sK409: (term > $o) > term > term).
% 6.47/2.17  thf(func_def_552, type, sK410: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_553, type, sK411: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_554, type, sK412: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_555, type, sK413: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_556, type, sK414: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_557, type, sK415: (term > $o) > term).
% 6.47/2.17  thf(func_def_558, type, sK416: (term > $o) > term).
% 6.47/2.17  thf(func_def_559, type, sK417: (subst > term > subst > $o) > term > $o).
% 6.47/2.17  thf(func_def_560, type, sK418: term > $o).
% 6.47/2.17  thf(func_def_561, type, sK419: term).
% 6.47/2.17  thf(func_def_562, type, sK420: term > term).
% 6.47/2.17  thf(func_def_563, type, sK421: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_564, type, sK422: (term > $o) > term).
% 6.47/2.17  thf(func_def_565, type, sK423: term).
% 6.47/2.17  thf(func_def_566, type, sK424: term).
% 6.47/2.17  thf(func_def_567, type, sK425: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_568, type, sK426: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_569, type, sK427: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_570, type, sK428: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_571, type, sK429: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_572, type, sK430: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_573, type, sK431: term > (term > $o) > term).
% 6.47/2.17  thf(func_def_574, type, sK432: (term > $o) > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_575, type, sK433: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_576, type, sK434: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_577, type, sK435: term > $o).
% 6.47/2.17  thf(func_def_578, type, sK436: term).
% 6.47/2.17  thf(func_def_579, type, sK437: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_580, type, sK438: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_581, type, sK439: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_582, type, sK440: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_583, type, sK441: (term > $o) > term).
% 6.47/2.17  thf(func_def_584, type, sK442: (term > $o) > term).
% 6.47/2.17  thf(func_def_585, type, sK443: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_586, type, sK444: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_587, type, sK445: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_588, type, sK446: term).
% 6.47/2.17  thf(func_def_589, type, sK447: (subst > term > term) > term > subst).
% 6.47/2.17  thf(func_def_590, type, sK448: (subst > term > term) > term > subst).
% 6.47/2.17  thf(func_def_591, type, sK449: (subst > term > term) > term > term).
% 6.47/2.17  thf(func_def_592, type, sK450: (subst > term > term) > term > subst).
% 6.47/2.17  thf(func_def_593, type, sK451: (subst > term > term) > term > subst).
% 6.47/2.17  thf(func_def_594, type, sK452: (subst > term > term) > term > term).
% 6.47/2.17  thf(func_def_595, type, sK453: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_596, type, sK454: term > (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_597, type, sK455: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_598, type, sK456: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_599, type, sK457: term > $o).
% 6.47/2.17  thf(func_def_600, type, sK458: subst).
% 6.47/2.17  thf(func_def_601, type, sK459: term > $o).
% 6.47/2.17  thf(func_def_602, type, sK460: term).
% 6.47/2.17  thf(func_def_603, type, sK461: term).
% 6.47/2.17  thf(func_def_604, type, sK462: subst > d_subst).
% 6.47/2.17  thf(func_def_605, type, sK463: (term > $o) > term).
% 6.47/2.17  thf(func_def_606, type, sK464: (term > $o) > term).
% 6.47/2.17  thf(func_def_607, type, sK465: term > $o).
% 6.47/2.17  thf(func_def_608, type, sK466: term).
% 6.47/2.17  thf(func_def_609, type, sK467: term).
% 6.47/2.17  thf(func_def_610, type, sK468: subst).
% 6.47/2.17  thf(func_def_611, type, sK469: subst).
% 6.47/2.17  thf(func_def_612, type, sK470: subst).
% 6.47/2.17  thf(func_def_613, type, sK471: subst).
% 6.47/2.17  thf(func_def_614, type, sK472: subst).
% 6.47/2.17  thf(func_def_615, type, sK473: term).
% 6.47/2.17  thf(func_def_616, type, sK474: term).
% 6.47/2.17  thf(func_def_617, type, sK475: term).
% 6.47/2.17  thf(func_def_618, type, sK476: term).
% 6.47/2.17  thf(func_def_619, type, sK477: term).
% 6.47/2.17  thf(func_def_620, type, sK478: term).
% 6.47/2.17  thf(func_def_621, type, sK479: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_622, type, sK480: (subst > term > subst > $o) > term).
% 6.47/2.17  thf(func_def_623, type, sK481: term).
% 6.47/2.17  thf(func_def_624, type, sK482: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_625, type, sK483: term).
% 6.47/2.17  thf(func_def_626, type, sK484: term).
% 6.47/2.17  thf(func_def_627, type, sK485: term > $o).
% 6.47/2.17  thf(func_def_628, type, sK486: term > $o).
% 6.47/2.17  thf(func_def_629, type, sK487: subst).
% 6.47/2.17  thf(func_def_630, type, sK488: subst > (term > $o) > (term > $o) > term > term).
% 6.47/2.17  thf(func_def_631, type, sK489: subst).
% 6.47/2.17  thf(func_def_632, type, sK490: term).
% 6.47/2.17  thf(func_def_633, type, sK491: subst > (term > $o) > term > term > $o).
% 6.47/2.17  thf(func_def_634, type, sK492: term).
% 6.47/2.17  thf(func_def_635, type, sK493: term > $o).
% 6.47/2.17  thf(func_def_636, type, sK494: subst).
% 6.47/2.17  thf(func_def_637, type, sK495: (term > $o) > term).
% 6.47/2.17  thf(func_def_638, type, sK496: term).
% 6.47/2.17  thf(func_def_639, type, sK497: term).
% 6.47/2.17  thf(func_def_640, type, sK498: term).
% 6.47/2.17  thf(func_def_641, type, sK499: term).
% 6.47/2.17  thf(func_def_642, type, sK500: term).
% 6.47/2.17  thf(func_def_643, type, sK501: term).
% 6.47/2.17  thf(func_def_644, type, sK502: term).
% 6.47/2.17  thf(func_def_645, type, sK503: term).
% 6.47/2.17  thf(func_def_646, type, sK504: term).
% 6.47/2.17  thf(func_def_647, type, sK505: term).
% 6.47/2.17  thf(func_def_648, type, sK506: term).
% 6.47/2.17  thf(func_def_649, type, sK507: term).
% 6.47/2.17  thf(func_def_650, type, sK508: term).
% 6.47/2.17  thf(func_def_651, type, sK509: subst).
% 6.47/2.17  thf(func_def_652, type, sK510: term).
% 6.47/2.17  thf(func_def_653, type, sK511: term > subst > term > term).
% 6.47/2.17  thf(func_def_654, type, sK512: term).
% 6.47/2.17  thf(func_def_655, type, sK513: term).
% 6.47/2.17  thf(func_def_656, type, sK514: term).
% 6.47/2.17  thf(func_def_657, type, sK515: term).
% 6.47/2.17  thf(func_def_658, type, sK516: term).
% 6.47/2.17  thf(func_def_659, type, sK517: term).
% 6.47/2.17  thf(func_def_660, type, sK518: subst).
% 6.47/2.17  thf(func_def_661, type, sK519: term > subst > term > term).
% 6.47/2.17  thf(func_def_662, type, sK520: term).
% 6.47/2.17  thf(func_def_663, type, sK521: term > $o).
% 6.47/2.17  thf(func_def_664, type, sK522: term).
% 6.47/2.17  thf(func_def_665, type, sK523: term > $o).
% 6.47/2.17  thf(func_def_666, type, sK524: subst).
% 6.47/2.17  thf(func_def_667, type, sK525: subst > (term > $o) > term > (term > $o) > term).
% 6.47/2.17  thf(func_def_668, type, sK526: subst).
% 6.47/2.17  thf(func_def_669, type, sK527: subst).
% 6.47/2.17  thf(func_def_670, type, sK528: subst).
% 6.47/2.17  thf(func_def_671, type, sK529: term).
% 6.47/2.17  thf(func_def_672, type, sK530: term).
% 6.47/2.17  thf(func_def_673, type, sK531: term > (term > $o) > subst > term > $o).
% 6.47/2.17  thf(func_def_674, type, sK532: subst).
% 6.47/2.17  thf(func_def_675, type, sK533: term > $o).
% 6.47/2.17  thf(func_def_676, type, sK534: term).
% 6.47/2.17  thf(func_def_677, type, sK535: (term > $o) > term).
% 6.47/2.17  thf(func_def_678, type, sK536: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_679, type, sK537: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_680, type, sK538: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_681, type, sK539: term).
% 6.47/2.17  thf(func_def_682, type, sK540: term).
% 6.47/2.17  thf(func_def_683, type, sK541: subst > term > term).
% 6.47/2.17  thf(func_def_684, type, sK542: (subst > term > subst > $o) > term > $o).
% 6.47/2.17  thf(func_def_685, type, sK543: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_686, type, sK544: (term > $o) > term).
% 6.47/2.17  thf(func_def_687, type, sK545: subst).
% 6.47/2.17  thf(func_def_688, type, sK546: term).
% 6.47/2.17  thf(func_def_689, type, sK547: term).
% 6.47/2.17  thf(func_def_690, type, sK548: subst).
% 6.47/2.17  thf(func_def_691, type, sK549: term).
% 6.47/2.17  thf(func_def_692, type, sK550: term > $o).
% 6.47/2.17  thf(func_def_693, type, sK551: term).
% 6.47/2.17  thf(func_def_694, type, sK552: term > $o).
% 6.47/2.17  thf(func_def_695, type, sK553: subst).
% 6.47/2.17  thf(func_def_696, type, sK554: term).
% 6.47/2.17  thf(func_def_697, type, sK555: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_698, type, sK556: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_699, type, sK557: term > subst > term > term).
% 6.47/2.17  thf(func_def_700, type, sK558: term).
% 6.47/2.17  thf(func_def_701, type, sK559: term).
% 6.47/2.17  thf(func_def_702, type, sK560: subst).
% 6.47/2.17  thf(func_def_703, type, sK561: term).
% 6.47/2.17  thf(func_def_704, type, sK562: term).
% 6.47/2.17  thf(func_def_705, type, sK563: term).
% 6.47/2.17  thf(func_def_706, type, sK564: term).
% 6.47/2.17  thf(func_def_707, type, sK565: term).
% 6.47/2.17  thf(func_def_708, type, sK566: term).
% 6.47/2.17  thf(func_def_709, type, sK567: term).
% 6.47/2.17  thf(func_def_710, type, sK568: term).
% 6.47/2.17  thf(func_def_711, type, sK569: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_712, type, sK570: (term > $o) > term).
% 6.47/2.17  thf(func_def_713, type, sK571: (subst > term > subst > $o) > term > $o).
% 6.47/2.17  thf(func_def_714, type, sK572: subst > term > term).
% 6.47/2.17  thf(func_def_715, type, sK573: subst > term > term).
% 6.47/2.17  thf(func_def_716, type, sK574: subst).
% 6.47/2.17  thf(func_def_717, type, sK575: term).
% 6.47/2.17  thf(func_def_718, type, sK576: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_719, type, sK577: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_720, type, sK578: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_721, type, sK579: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_722, type, sK580: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_723, type, sK581: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_724, type, sK582: term).
% 6.47/2.17  thf(func_def_725, type, sK583: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_726, type, sK584: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_727, type, sK585: term > subst > term > term).
% 6.47/2.17  thf(func_def_728, type, sK586: term).
% 6.47/2.17  thf(func_def_729, type, sK587: term).
% 6.47/2.17  thf(func_def_730, type, sK588: term).
% 6.47/2.17  thf(func_def_731, type, sK589: term).
% 6.47/2.17  thf(func_def_732, type, sK590: term > d_term).
% 6.47/2.17  thf(func_def_734, type, sK592: subst > term > subst > $o).
% 6.47/2.17  thf(func_def_735, type, sK593: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_736, type, sK594: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_737, type, sK595: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_738, type, sK596: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_739, type, sK597: (subst > term > term) > subst).
% 6.47/2.17  thf(func_def_740, type, sK598: (subst > term > term) > term).
% 6.47/2.17  thf(func_def_741, type, sK599: term).
% 6.47/2.17  thf(func_def_742, type, sK600: (subst > term > subst > $o) > subst > term > term).
% 6.47/2.17  thf(func_def_743, type, sK601: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_744, type, sK602: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_745, type, sK603: (subst > term > subst > $o) > term > term).
% 6.47/2.17  thf(func_def_747, type, ph604: !>[X0: $tType]:(X0)).
% 6.47/2.17  thf(f4867,plain,(
% 6.47/2.17    $false),
% 6.47/2.17    inference(avatar_sat_refutation,[status(thm)],[f2034,f3868,f3884,f3952,f4367,f4609,f4708,f4814,f4843,f4853,f4856,f4866])).
% 6.47/2.17  thf(f4866,plain,(
% 6.47/2.17    spl591_460 | ~spl591_462),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f4865,f3882,f3874])).
% 6.47/2.17  thf(f3874,definition,(
% 6.47/2.17    spl591_460 <=> ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_460])],[avatar_definition])).
% 6.47/2.17  thf(f3882,definition,(
% 6.47/2.17    spl591_462 <=> ! [X1 : subst > term > term] : (((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ (sK596 @ X1) @ (sK593 @ X1))) != (sub @ (X1 @ (sK595 @ X1) @ (sK596 @ X1)) @ (sK593 @ X1))) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_462])],[avatar_definition])).
% 6.47/2.17  thf(f4865,plain,(
% 6.47/2.17    ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | ~spl591_462),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f4864,f4733])).
% 6.47/2.17  thf(f4733,plain,(
% 6.47/2.17    ( ! [X272 : term] : (((d2term @ d_one) = X272)) )),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f1036,f1210])).
% 6.47/2.17  thf(f1210,plain,(
% 6.47/2.17    ( ! [X38 : d_term] : ((d_one = X38)) )),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f545,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & ((sP58 = $true) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | (sP58 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & ((pushprop_lem1 = $true) | (((sK459 @ sK460) = $true) & ($true != (sK457 @ (sub @ sK460 @ (push @ sK461 @ sK458)))))) & (! [X5 : term > $o,X6 : subst,X7 : term > $o,X8 : term,X9 : term] : (($true != (X7 @ X8)) | ((X5 @ (sub @ X8 @ (push @ X9 @ X6))) = $true)) | (pushprop_lem1 != $true)) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X10 : d_subst,X11 : d_subst] : ((X10 = X11) | ((d2subst @ X10) != (d2subst @ X11))) & (pushprop_lem3v2_lthm = $true) & ((sP56 = $true) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (sP56 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X12 : subst] : ((d2subst @ (sK462 @ X12)) = X12) & (! [X14 : term > $o,X15 : term] : (((sP55 @ X14) = $true) | (((X14 @ (sK463 @ X14)) = $true) & ((X14 @ (lam @ (sK463 @ X14))) != $true)) | ((X14 @ X15) = $true) | (($true != (X14 @ (sK464 @ X14))) & ($true = (var @ (sK464 @ X14))))) | (induction != $true)) & ((induction = $true) | (($true != (sP55 @ sK465)) & ! [X20 : term] : (($true != (sK465 @ X20)) | ($true = (sK465 @ (lam @ X20)))) & ($true != (sK465 @ sK466)) & ! [X21 : term] : (($true = (sK465 @ X21)) | ((var @ X21) != $true)))) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (! [X22 : term,X23 : subst] : ((comp @ sh @ (push @ X22 @ X23)) = X23) | (axshiftcons != $true)) & ((axshiftcons = $true) | (sK468 != (comp @ sh @ (push @ sK467 @ sK468)))) & ((substmonoid_lthm = $true) | (! [X26 : subst] : ((comp @ X26 @ id) = X26) & ((sK469 != (comp @ id @ sK469)) | ((comp @ sK470 @ id) != sK470)) & ! [X29 : subst] : ((comp @ id @ X29) = X29))) & ((sK471 != (comp @ sK471 @ id)) | (! [X31 : subst] : ((comp @ id @ X31) = X31) & ! [X32 : subst] : ((comp @ X32 @ id) = X32)) | ((comp @ id @ sK472) != sK472) | (substmonoid_lthm != $true)) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3a_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3aa_lthm != $true)) & ((sP51 = $true) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (sP51 != $true)) & (pushprop_lem0_gthm = $true) & ((shinj = $true) | (((sub @ sK473 @ sh) = (sub @ sK474 @ sh)) & (sK474 != sK473))) & (! [X36 : term,X37 : term] : (((sub @ X36 @ sh) != (sub @ X37 @ sh)) | (X36 = X37)) | (shinj != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & ! [X38 : d_term] : (d_one = X38) & (! [X39 : term,X40 : term,X41 : term,X42 : term] : (((ap @ X39 @ X40) != (ap @ X42 @ X41)) | (X39 = X42)) | (apinj1 != $true)) & ((apinj1 = $true) | (((ap @ sK478 @ sK477) = (ap @ sK475 @ sK476)) & (sK475 != sK478))) & (induction2lem_gthm = $true) & (($true = sP43) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | ($true != sP43)) & (! [X47 : term,X48 : subst > term > subst > $o] : ((($true = (X48 @ id @ (sK480 @ X48) @ id)) & ((X48 @ id @ (sK479 @ X48) @ id) = $true) & ($true != (X48 @ id @ (ap @ (sub @ (sK480 @ X48) @ id) @ (sK479 @ X48)) @ id))) | ($true = (X48 @ id @ X47 @ id)) | ($true = (sP39 @ X48))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | (! [X53 : term,X54 : term] : (((sK482 @ id @ X54 @ id) != $true) | ((sK482 @ id @ X53 @ id) != $true) | ($true = (sK482 @ id @ (ap @ (sub @ X54 @ id) @ X53) @ id))) & ($true != (sK482 @ id @ sK481 @ id)) & ($true != (sP39 @ sK482)))) & ((axvarid = $true) | ((sub @ sK483 @ id) != sK483)) & (! [X56 : term] : ((sub @ X56 @ id) = X56) | (axvarid != $true)) & ((pushprop_lem1v2_lthm = $true) | ((((sK486 @ one) != $true) & ($true = (sK485 @ sK484)) & ! [X61 : term] : ((sK486 @ X61) = (sK485 @ (sub @ X61 @ (push @ sK484 @ sK487))))) & ! [X62 : subst,X63 : term] : ((sub @ one @ (push @ X63 @ X62)) = X63))) & (! [X64 : term,X65 : term > $o,X66 : term > $o,X67 : subst] : (($true = (X66 @ one)) | ((X65 @ X64) != $true) | ((X66 @ (sK488 @ X67 @ X66 @ X65 @ X64)) != (X65 @ (sub @ (sK488 @ X67 @ X66 @ X65 @ X64) @ (push @ X64 @ X67))))) | ((sub @ one @ (push @ sK490 @ sK489)) != sK490) | (pushprop_lem1v2_lthm != $true)) & (! [X71 : term,X72 : term > $o,X73 : subst] : ! [X75 : term] : ((X72 @ (sub @ X75 @ (push @ X71 @ X73))) = (sK491 @ X73 @ X72 @ X71 @ X75)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X79 : term > $o] : ((sK493 @ (sub @ (sK495 @ X79) @ (push @ sK492 @ sK494))) != (X79 @ (sK495 @ X79)))) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X81 : term,X82 : term,X83 : term,X84 : term] : (((ap @ (sub @ X83 @ id) @ X81) != (ap @ (sub @ X84 @ id) @ X82)) | (X81 = X82)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | (((ap @ (sub @ sK498 @ id) @ sK496) = (ap @ (sub @ sK499 @ id) @ sK497)) & (sK497 != sK496))) & (axclos = $true) & ! [X89 : d_term,X90 : d_term] : ((X89 = X90) | ((d2term @ X89) != (d2term @ X90))) & (termmset_gthm = $true) & ((hoasinduction_lem2 = $true) | ($true != sP38)) & (($true = sP38) | (hoasinduction_lem2 != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & (((sK501 != sK500) & ((ap @ sK500 @ sK502) = (ap @ sK501 @ sK503))) | ! [X95 : term,X96 : term,X97 : term,X98 : term] : ((X96 = X98) | ((ap @ (sub @ X98 @ id) @ X97) != (ap @ (sub @ X96 @ id) @ X95))) | ((sub @ sK504 @ id) != sK504) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X100 : term,X101 : term,X102 : term,X103 : term] : ((X100 = X101) | ((ap @ X101 @ X103) != (ap @ X100 @ X102))) & ((sK506 != sK508) & ((ap @ (sub @ sK506 @ id) @ sK505) = (ap @ (sub @ sK508 @ id) @ sK507))) & ! [X108 : term] : ((sub @ X108 @ id) = X108))) & ((axidl = $true) | (sK509 != (comp @ id @ sK509))) & (! [X110 : subst] : ((comp @ id @ X110) = X110) | (axidl != $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3b_lthm = $true) | ! [X112 : subst > term > term] : ((X112 @ sh @ one) != (sub @ sK510 @ (push @ one @ sh)))) & (! [X113 : term] : ((sK511 @ X113 @ sh @ one) = (sub @ X113 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP36) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP36)) & (! [X115 : term,X116 : term,X117 : term,X118 : term] : (((ap @ (sub @ X117 @ id) @ X116) != (ap @ (sub @ X115 @ id) @ X118)) | (X115 = X117)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | (((ap @ (sub @ sK514 @ id) @ sK513) = (ap @ (sub @ sK512 @ id) @ sK515)) & (sK514 != sK512))) & ((termmset_lthm = $true) | ((sK516 != (sub @ sK516 @ id)) & ! [X124 : term] : ((sub @ X124 @ id) = X124))) & (! [X125 : term] : ((sub @ X125 @ id) = X125) | (sK517 != (sub @ sK517 @ id)) | (termmset_lthm != $true)) & (ulamvarsh = $true) & ((axidr = $true) | ((comp @ sK518 @ id) != sK518)) & (! [X128 : subst] : ((comp @ X128 @ id) = X128) | (axidr != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X129 : term] : ((sub @ X129 @ (push @ one @ sh)) = (sK519 @ X129 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ! [X132 : subst > term > term] : ((X132 @ sh @ one) != (sub @ sK520 @ (push @ one @ sh)))) & ((pushprop_lem1v2 = $true) | (($true = (sK521 @ sK522)) & ! [X137 : term] : ((sK523 @ X137) = (sK521 @ (sub @ X137 @ (push @ sK522 @ sK524)))) & ((sK523 @ one) != $true))) & (! [X138 : term > $o,X139 : term,X140 : term > $o,X141 : subst] : (($true != (X138 @ X139)) | ((X138 @ (sub @ (sK525 @ X141 @ X140 @ X139 @ X138) @ (push @ X139 @ X141))) != (X140 @ (sK525 @ X141 @ X140 @ X139 @ X138))) | ($true = (X140 @ one))) | (pushprop_lem1v2 != $true)) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & ((hoasinduction_lthm = $true) | (sP35 != $true)) & ((sP35 = $true) | (hoasinduction_lthm != $true)) & (pushprop_lem3v2 = $true) & (($true = sP26) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP26)) & (hoasinduction_lem1v2_gthm = $true) & ((substmonoid = $true) | ((comp @ id @ sK526) != sK526) | (sK527 != (comp @ sK527 @ id))) & ((! [X145 : subst] : ((comp @ id @ X145) = X145) & ! [X146 : subst] : ((comp @ X146 @ id) = X146)) | (substmonoid != $true)) & (! [X147 : subst] : ((push @ (sub @ one @ X147) @ (comp @ sh @ X147)) = X147) | (axscons != $true)) & ((axscons = $true) | ((push @ (sub @ one @ sK528) @ (comp @ sh @ sK528)) != sK528)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((laminj = $true) | (((lam @ sK529) = (lam @ sK530)) & (sK529 != sK530))) & (! [X151 : term,X152 : term] : (((lam @ X152) != (lam @ X151)) | (X151 = X152)) | (laminj != $true)) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X153 : subst,X154 : term > $o,X155 : term] : ! [X157 : term] : ((X154 @ (sub @ X157 @ (push @ X155 @ X153))) = (sK531 @ X155 @ X154 @ X153 @ X157)) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ! [X161 : term > $o] : ((X161 @ (sK535 @ X161)) != (sK533 @ (sub @ (sK535 @ X161) @ (push @ sK534 @ sK532))))) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & (($true = sP22) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ($true != sP22)) & (! [X163 : term,X164 : term,X165 : subst > term > term] : (((X165 @ (comp @ (sK536 @ X165) @ (sK537 @ X165)) @ (sub @ (sK538 @ X165) @ (sK537 @ X165))) != (sub @ (X165 @ (sK536 @ X165) @ (sK538 @ X165)) @ (sK537 @ X165))) | ((lam @ (X165 @ sh @ one)) != (ap @ (sub @ X164 @ id) @ X163))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | (! [X172 : subst,X173 : subst,X174 : term] : ((sub @ (sK541 @ X172 @ X174) @ X173) = (sK541 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173))) & ((ap @ (sub @ sK540 @ id) @ sK539) = (lam @ (sK541 @ sh @ one))))) & (axmap = $true) & (! [X175 : subst > term > subst > $o] : ! [X177 : term] : ((X175 @ id @ X177 @ id) = (sK542 @ X175 @ X177)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X179 : term > $o] : ((X179 @ (sK544 @ X179)) != (sK543 @ id @ (sK544 @ X179) @ id))) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3aa = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3aa != $true)) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (((comp @ sh @ (push @ sK546 @ sK545)) != sK545) | ((sub @ one @ (push @ sK547 @ sK548)) != sK547) | ! [X185 : term,X186 : term > $o,X187 : term,X188 : term > $o,X189 : subst] : (($true = (X188 @ (sub @ X185 @ (push @ X187 @ X189)))) | ($true != (X186 @ X185))) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X190 : subst,X191 : term] : ((comp @ sh @ (push @ X191 @ X190)) = X190) & ! [X192 : term,X193 : subst] : ((sub @ one @ (push @ X192 @ X193)) = X192) & (($true != (sK552 @ (sub @ sK549 @ (push @ sK551 @ sK553)))) & ($true = (sK550 @ sK549))))) & ((induction2 = $true) | ($true != sP20)) & (($true = sP20) | (induction2 != $true)) & ((hoasinduction_lem3_lthm = $true) | ($true != sP18)) & (($true = sP18) | (hoasinduction_lem3_lthm != $true)) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction = $true) | ($true != sP15)) & (($true = sP15) | (hoasinduction != $true)) & ((sP12 = $true) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3v2a = $true) | (sP12 != $true)) & ((hoasinduction_lem3v2_f = $true) | ! [X200 : subst > term > term] : ((sub @ sK554 @ (push @ (sK556 @ X200) @ (sK555 @ X200))) != (X200 @ (sK555 @ X200) @ (sK556 @ X200)))) & (! [X203 : term] : ! [X205 : subst,X206 : term] : ((sub @ X203 @ (push @ X206 @ X205)) = (sK557 @ X203 @ X205 @ X206)) | (hoasinduction_lem3v2_f != $true)) & (hoasapinj2_gthm = $true) & ((induction2lem = $true) | ($true != sP11)) & (($true = sP11) | (induction2lem != $true)) & ((hoasinduction_lem3v2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (hoasinduction_lem3v2_lthm != $true)) & (lamnotap != $true) & ((hoasinduction_lem3v2 = $true) | ($true != sP7)) & (($true = sP7) | (hoasinduction_lem3v2 != $true)) & (($true = sP5) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | ($true != sP5)) & (($true = sP0) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP0)) & ((termmset = $true) | ((sub @ sK558 @ id) != sK558)) & (! [X208 : term] : ((sub @ X208 @ id) = X208) | (termmset != $true)) & (hoasinduction_lem3_gthm = $true) & (! [X209 : term,X210 : subst] : ((sub @ one @ (push @ X209 @ X210)) = X209) | (axvarcons != $true)) & ((axvarcons = $true) | (sK559 != (sub @ one @ (push @ sK559 @ sK560)))) & (hoaslamnotvar_gthm = $true) & ((hoasapinj2_lthm = $true) | ((((ap @ (sub @ sK563 @ id) @ sK564) = (ap @ (sub @ sK561 @ id) @ sK562)) & (sK562 != sK564)) & ! [X217 : term,X218 : term,X219 : term,X220 : term] : (((ap @ X218 @ X217) != (ap @ X219 @ X220)) | (X217 = X220)))) & (! [X221 : term,X222 : term,X223 : term,X224 : term] : (((ap @ (sub @ X223 @ id) @ X224) != (ap @ (sub @ X221 @ id) @ X222)) | (X222 = X224)) | (((ap @ sK567 @ sK568) = (ap @ sK566 @ sK565)) & (sK565 != sK568)) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lem0 = $true) | ! [X230 : term > $o] : ((X230 @ (sK570 @ X230)) != (sK569 @ id @ (sK570 @ X230) @ id))) & (! [X232 : subst > term > subst > $o] : ! [X234 : term] : ((X232 @ id @ X234 @ id) = (sK571 @ X232 @ X234)) | (hoasinduction_lem0 != $true)) & ((hoaslaminj = $true) | (! [X239 : subst,X240 : subst,X241 : term] : ((sub @ (sK573 @ X240 @ X241) @ X239) = (sK573 @ (comp @ X240 @ X239) @ (sub @ X241 @ X239))) & ! [X242 : term,X243 : subst,X244 : subst] : ((sK572 @ (comp @ X243 @ X244) @ (sub @ X242 @ X244)) = (sub @ (sK572 @ X243 @ X242) @ X244)) & ((sK573 @ sK574 @ sK575) != (sK572 @ sK574 @ sK575)) & ((lam @ (sK572 @ sh @ one)) = (lam @ (sK573 @ sh @ one))))) & (! [X245 : subst > term > term,X246 : subst > term > term,X247 : subst,X248 : term] : (((sub @ (X246 @ (sK577 @ X246) @ (sK578 @ X246)) @ (sK576 @ X246)) != (X246 @ (comp @ (sK577 @ X246) @ (sK576 @ X246)) @ (sub @ (sK578 @ X246) @ (sK576 @ X246)))) | ((sub @ (X245 @ (sK580 @ X245) @ (sK579 @ X245)) @ (sK581 @ X245)) != (X245 @ (comp @ (sK580 @ X245) @ (sK581 @ X245)) @ (sub @ (sK579 @ X245) @ (sK581 @ X245)))) | ((X246 @ X247 @ X248) = (X245 @ X247 @ X248)) | ((lam @ (X246 @ sh @ one)) != (lam @ (X245 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X256 : subst > term > term] : ((sub @ sK582 @ (push @ (sK584 @ X256) @ (sK583 @ X256))) != (X256 @ (sK583 @ X256) @ (sK584 @ X256)))) & (! [X259 : term] : ! [X261 : subst,X262 : term] : ((sub @ X259 @ (push @ X262 @ X261)) = (sK585 @ X259 @ X261 @ X262)) | (hoasinduction_lem3v2_f_lthm != $true)) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & ((apinj2 = $true) | ((sK587 != sK586) & ((ap @ sK589 @ sK587) = (ap @ sK588 @ sK586)))) & (! [X267 : term,X268 : term,X269 : term,X270 : term] : ((X267 = X268) | ((ap @ X270 @ X268) != (ap @ X269 @ X267))) | (apinj2 != $true)) & ! [X271 : d_subst] : (d_id = X271) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X272 : term] : ((d2term @ (sK590 @ X272)) = X272)),
% 6.47/2.17    inference(skolemisation,[status(esa),new_symbols(skolem,[sK457,sK458,sK459,sK460,sK461,sK462,sK463,sK464,sK465,sK466,sK467,sK468,sK469,sK470,sK471,sK472,sK473,sK474,sK475,sK476,sK477,sK478,sK479,sK480,sK481,sK482,sK483,sK484,sK485,sK486,sK487,sK488,sK489,sK490,sK491,sK492,sK493,sK494,sK495,sK496,sK497,sK498,sK499,sK500,sK501,sK502,sK503,sK504,sK505,sK506,sK507,sK508,sK509,sK510,sK511,sK512,sK513,sK514,sK515,sK516,sK517,sK518,sK519,sK520,sK521,sK522,sK523,sK524,sK525,sK526,sK527,sK528,sK529,sK530,sK531,sK532,sK533,sK534,sK535,sK536,sK537,sK538,sK539,sK540,sK541,sK542,sK543,sK544,sK545,sK546,sK547,sK548,sK549,sK550,sK551,sK552,sK553,sK554,sK555,sK556,sK557,sK558,sK559,sK560,sK561,sK562,sK563,sK564,sK565,sK566,sK567,sK568,sK569,sK570,sK571,sK572,sK573,sK574,sK575,sK576,sK577,sK578,sK579,sK580,sK581,sK582,sK583,sK584,sK585,sK586,sK587,sK588,sK589,sK590])],[f475,f544,f543,f542,f541,f540,f539,f538,f537,f536,f535,f534,f533,f532,f531,f530,f529,f528,f527,f526,f525,f524,f523,f522,f521,f520,f519,f518,f517,f516,f515,f514,f513,f512,f511,f510,f509,f508,f507,f506,f505,f504,f503,f502,f501,f500,f499,f498,f497,f496,f495,f494,f493,f492,f491,f490,f489,f488,f487,f486,f485,f484,f483,f482,f481,f480,f479,f478,f477,f476])).
% 6.47/2.17  thf(f476,plain,(
% 6.47/2.17    ? [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term,X4 : term] : (($true = (X2 @ X3)) & ($true != (X0 @ (sub @ X3 @ (push @ X4 @ X1))))) => (((sK459 @ sK460) = $true) & ($true != (sK457 @ (sub @ sK460 @ (push @ sK461 @ sK458)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f477,plain,(
% 6.47/2.17    ! [X12 : subst] : (? [X13 : d_subst] : ((d2subst @ X13) = X12) => ((d2subst @ (sK462 @ X12)) = X12))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f478,plain,(
% 6.47/2.17    ! [X14 : term > $o] : (? [X16 : term] : (($true = (X14 @ X16)) & ($true != (X14 @ (lam @ X16)))) => (((X14 @ (sK463 @ X14)) = $true) & ((X14 @ (lam @ (sK463 @ X14))) != $true)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f479,plain,(
% 6.47/2.17    ! [X14 : term > $o] : (? [X17 : term] : (($true != (X14 @ X17)) & ($true = (var @ X17))) => (($true != (X14 @ (sK464 @ X14))) & ($true = (var @ (sK464 @ X14)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f480,plain,(
% 6.47/2.17    ? [X18 : term > $o,X19 : term] : (($true != (sP55 @ X18)) & ! [X20 : term] : (($true != (X18 @ X20)) | ($true = (X18 @ (lam @ X20)))) & ((X18 @ X19) != $true) & ! [X21 : term] : (($true = (X18 @ X21)) | ((var @ X21) != $true))) => (($true != (sP55 @ sK465)) & ! [X20 : term] : (($true != (sK465 @ X20)) | ($true = (sK465 @ (lam @ X20)))) & ($true != (sK465 @ sK466)) & ! [X21 : term] : (($true = (sK465 @ X21)) | ((var @ X21) != $true)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f481,plain,(
% 6.47/2.17    ? [X24 : term,X25 : subst] : ((comp @ sh @ (push @ X24 @ X25)) != X25) => (sK468 != (comp @ sh @ (push @ sK467 @ sK468)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f482,plain,(
% 6.47/2.17    ? [X27 : subst] : ((comp @ id @ X27) != X27) => (sK469 != (comp @ id @ sK469))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f483,plain,(
% 6.47/2.17    ? [X28 : subst] : ((comp @ X28 @ id) != X28) => ((comp @ sK470 @ id) != sK470)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f484,plain,(
% 6.47/2.17    ? [X30 : subst] : ((comp @ X30 @ id) != X30) => (sK471 != (comp @ sK471 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f485,plain,(
% 6.47/2.17    ? [X33 : subst] : ((comp @ id @ X33) != X33) => ((comp @ id @ sK472) != sK472)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f486,plain,(
% 6.47/2.17    ? [X34 : term,X35 : term] : (((sub @ X35 @ sh) = (sub @ X34 @ sh)) & (X34 != X35)) => (((sub @ sK473 @ sh) = (sub @ sK474 @ sh)) & (sK474 != sK473))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f487,plain,(
% 6.47/2.17    ? [X43 : term,X44 : term,X45 : term,X46 : term] : (((ap @ X43 @ X44) = (ap @ X46 @ X45)) & (X43 != X46)) => (((ap @ sK478 @ sK477) = (ap @ sK475 @ sK476)) & (sK475 != sK478))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f488,plain,(
% 6.47/2.17    ! [X48 : subst > term > subst > $o] : (? [X49 : term,X50 : term] : (((X48 @ id @ X50 @ id) = $true) & ($true = (X48 @ id @ X49 @ id)) & ($true != (X48 @ id @ (ap @ (sub @ X50 @ id) @ X49) @ id))) => (($true = (X48 @ id @ (sK480 @ X48) @ id)) & ((X48 @ id @ (sK479 @ X48) @ id) = $true) & ($true != (X48 @ id @ (ap @ (sub @ (sK480 @ X48) @ id) @ (sK479 @ X48)) @ id))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f489,plain,(
% 6.47/2.17    ? [X51 : term,X52 : subst > term > subst > $o] : (! [X53 : term,X54 : term] : (($true != (X52 @ id @ X54 @ id)) | ($true != (X52 @ id @ X53 @ id)) | ($true = (X52 @ id @ (ap @ (sub @ X54 @ id) @ X53) @ id))) & ($true != (X52 @ id @ X51 @ id)) & ($true != (sP39 @ X52))) => (! [X54 : term,X53 : term] : (((sK482 @ id @ X54 @ id) != $true) | ((sK482 @ id @ X53 @ id) != $true) | ($true = (sK482 @ id @ (ap @ (sub @ X54 @ id) @ X53) @ id))) & ($true != (sK482 @ id @ sK481 @ id)) & ($true != (sP39 @ sK482)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f490,plain,(
% 6.47/2.17    ? [X55 : term] : ((sub @ X55 @ id) != X55) => ((sub @ sK483 @ id) != sK483)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f491,plain,(
% 6.47/2.17    ? [X57 : term,X58 : term > $o,X59 : term > $o,X60 : subst] : (($true != (X59 @ one)) & ((X58 @ X57) = $true) & ! [X61 : term] : ((X59 @ X61) = (X58 @ (sub @ X61 @ (push @ X57 @ X60))))) => (((sK486 @ one) != $true) & ($true = (sK485 @ sK484)) & ! [X61 : term] : ((sK486 @ X61) = (sK485 @ (sub @ X61 @ (push @ sK484 @ sK487)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f492,plain,(
% 6.47/2.17    ! [X64 : term,X65 : term > $o,X66 : term > $o,X67 : subst] : (? [X68 : term] : ((X66 @ X68) != (X65 @ (sub @ X68 @ (push @ X64 @ X67)))) => ((X66 @ (sK488 @ X67 @ X66 @ X65 @ X64)) != (X65 @ (sub @ (sK488 @ X67 @ X66 @ X65 @ X64) @ (push @ X64 @ X67)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f493,plain,(
% 6.47/2.17    ? [X69 : subst,X70 : term] : ((sub @ one @ (push @ X70 @ X69)) != X70) => ((sub @ one @ (push @ sK490 @ sK489)) != sK490)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f494,plain,(
% 6.47/2.17    ! [X71 : term,X72 : term > $o,X73 : subst] : (? [X74 : term > $o] : ! [X75 : term] : ((X72 @ (sub @ X75 @ (push @ X71 @ X73))) = (X74 @ X75)) => ! [X75 : term] : ((X72 @ (sub @ X75 @ (push @ X71 @ X73))) = (sK491 @ X73 @ X72 @ X71 @ X75)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f495,plain,(
% 6.47/2.17    ? [X76 : term,X77 : term > $o,X78 : subst] : ! [X79 : term > $o] : ? [X80 : term] : ((X77 @ (sub @ X80 @ (push @ X76 @ X78))) != (X79 @ X80)) => ! [X79 : term > $o] : ? [X80 : term] : ((X79 @ X80) != (sK493 @ (sub @ X80 @ (push @ sK492 @ sK494))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f496,plain,(
% 6.47/2.17    ! [X79 : term > $o] : (? [X80 : term] : ((X79 @ X80) != (sK493 @ (sub @ X80 @ (push @ sK492 @ sK494)))) => ((sK493 @ (sub @ (sK495 @ X79) @ (push @ sK492 @ sK494))) != (X79 @ (sK495 @ X79))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f497,plain,(
% 6.47/2.17    ? [X85 : term,X86 : term,X87 : term,X88 : term] : (((ap @ (sub @ X88 @ id) @ X86) = (ap @ (sub @ X87 @ id) @ X85)) & (X85 != X86)) => (((ap @ (sub @ sK498 @ id) @ sK496) = (ap @ (sub @ sK499 @ id) @ sK497)) & (sK497 != sK496))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f498,plain,(
% 6.47/2.17    ? [X91 : term,X92 : term,X93 : term,X94 : term] : ((X91 != X92) & ((ap @ X91 @ X93) = (ap @ X92 @ X94))) => ((sK501 != sK500) & ((ap @ sK500 @ sK502) = (ap @ sK501 @ sK503)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f499,plain,(
% 6.47/2.17    ? [X99 : term] : ((sub @ X99 @ id) != X99) => ((sub @ sK504 @ id) != sK504)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f500,plain,(
% 6.47/2.17    ? [X104 : term,X105 : term,X106 : term,X107 : term] : ((X105 != X107) & ((ap @ (sub @ X105 @ id) @ X104) = (ap @ (sub @ X107 @ id) @ X106))) => ((sK506 != sK508) & ((ap @ (sub @ sK506 @ id) @ sK505) = (ap @ (sub @ sK508 @ id) @ sK507)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f501,plain,(
% 6.47/2.17    ? [X109 : subst] : ((comp @ id @ X109) != X109) => (sK509 != (comp @ id @ sK509))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f502,plain,(
% 6.47/2.17    ? [X111 : term] : ! [X112 : subst > term > term] : ((sub @ X111 @ (push @ one @ sh)) != (X112 @ sh @ one)) => ! [X112 : subst > term > term] : ((X112 @ sh @ one) != (sub @ sK510 @ (push @ one @ sh)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f503,plain,(
% 6.47/2.17    ! [X113 : term] : (? [X114 : subst > term > term] : ((sub @ X113 @ (push @ one @ sh)) = (X114 @ sh @ one)) => ((sK511 @ X113 @ sh @ one) = (sub @ X113 @ (push @ one @ sh))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f504,plain,(
% 6.47/2.17    ? [X119 : term,X120 : term,X121 : term,X122 : term] : (((ap @ (sub @ X121 @ id) @ X120) = (ap @ (sub @ X119 @ id) @ X122)) & (X119 != X121)) => (((ap @ (sub @ sK514 @ id) @ sK513) = (ap @ (sub @ sK512 @ id) @ sK515)) & (sK514 != sK512))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f505,plain,(
% 6.47/2.17    ? [X123 : term] : ((sub @ X123 @ id) != X123) => (sK516 != (sub @ sK516 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f506,plain,(
% 6.47/2.17    ? [X126 : term] : ((sub @ X126 @ id) != X126) => (sK517 != (sub @ sK517 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f507,plain,(
% 6.47/2.17    ? [X127 : subst] : ((comp @ X127 @ id) != X127) => ((comp @ sK518 @ id) != sK518)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f508,plain,(
% 6.47/2.17    ! [X129 : term] : (? [X130 : subst > term > term] : ((sub @ X129 @ (push @ one @ sh)) = (X130 @ sh @ one)) => ((sub @ X129 @ (push @ one @ sh)) = (sK519 @ X129 @ sh @ one)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f509,plain,(
% 6.47/2.17    ? [X131 : term] : ! [X132 : subst > term > term] : ((X132 @ sh @ one) != (sub @ X131 @ (push @ one @ sh))) => ! [X132 : subst > term > term] : ((X132 @ sh @ one) != (sub @ sK520 @ (push @ one @ sh)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f510,plain,(
% 6.47/2.17    ? [X133 : term > $o,X134 : term,X135 : term > $o,X136 : subst] : (($true = (X133 @ X134)) & ! [X137 : term] : ((X135 @ X137) = (X133 @ (sub @ X137 @ (push @ X134 @ X136)))) & ($true != (X135 @ one))) => (($true = (sK521 @ sK522)) & ! [X137 : term] : ((sK523 @ X137) = (sK521 @ (sub @ X137 @ (push @ sK522 @ sK524)))) & ((sK523 @ one) != $true))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f511,plain,(
% 6.47/2.17    ! [X138 : term > $o,X139 : term,X140 : term > $o,X141 : subst] : (? [X142 : term] : ((X138 @ (sub @ X142 @ (push @ X139 @ X141))) != (X140 @ X142)) => ((X138 @ (sub @ (sK525 @ X141 @ X140 @ X139 @ X138) @ (push @ X139 @ X141))) != (X140 @ (sK525 @ X141 @ X140 @ X139 @ X138))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f512,plain,(
% 6.47/2.17    ? [X143 : subst] : ((comp @ id @ X143) != X143) => ((comp @ id @ sK526) != sK526)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f513,plain,(
% 6.47/2.17    ? [X144 : subst] : ((comp @ X144 @ id) != X144) => (sK527 != (comp @ sK527 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f514,plain,(
% 6.47/2.17    ? [X148 : subst] : ((push @ (sub @ one @ X148) @ (comp @ sh @ X148)) != X148) => ((push @ (sub @ one @ sK528) @ (comp @ sh @ sK528)) != sK528)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f515,plain,(
% 6.47/2.17    ? [X149 : term,X150 : term] : (((lam @ X150) = (lam @ X149)) & (X149 != X150)) => (((lam @ sK529) = (lam @ sK530)) & (sK529 != sK530))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f516,plain,(
% 6.47/2.17    ! [X153 : subst,X154 : term > $o,X155 : term] : (? [X156 : term > $o] : ! [X157 : term] : ((X154 @ (sub @ X157 @ (push @ X155 @ X153))) = (X156 @ X157)) => ! [X157 : term] : ((X154 @ (sub @ X157 @ (push @ X155 @ X153))) = (sK531 @ X155 @ X154 @ X153 @ X157)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f517,plain,(
% 6.47/2.17    ? [X158 : subst,X159 : term > $o,X160 : term] : ! [X161 : term > $o] : ? [X162 : term] : ((X159 @ (sub @ X162 @ (push @ X160 @ X158))) != (X161 @ X162)) => ! [X161 : term > $o] : ? [X162 : term] : ((X161 @ X162) != (sK533 @ (sub @ X162 @ (push @ sK534 @ sK532))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f518,plain,(
% 6.47/2.17    ! [X161 : term > $o] : (? [X162 : term] : ((X161 @ X162) != (sK533 @ (sub @ X162 @ (push @ sK534 @ sK532)))) => ((X161 @ (sK535 @ X161)) != (sK533 @ (sub @ (sK535 @ X161) @ (push @ sK534 @ sK532)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f519,plain,(
% 6.47/2.17    ! [X165 : subst > term > term] : (? [X166 : subst,X167 : subst,X168 : term] : ((X165 @ (comp @ X166 @ X167) @ (sub @ X168 @ X167)) != (sub @ (X165 @ X166 @ X168) @ X167)) => ((X165 @ (comp @ (sK536 @ X165) @ (sK537 @ X165)) @ (sub @ (sK538 @ X165) @ (sK537 @ X165))) != (sub @ (X165 @ (sK536 @ X165) @ (sK538 @ X165)) @ (sK537 @ X165))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f520,plain,(
% 6.47/2.17    ? [X169 : term,X170 : term,X171 : subst > term > term] : (! [X172 : subst,X173 : subst,X174 : term] : ((sub @ (X171 @ X172 @ X174) @ X173) = (X171 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173))) & ((ap @ (sub @ X170 @ id) @ X169) = (lam @ (X171 @ sh @ one)))) => (! [X174 : term,X173 : subst,X172 : subst] : ((sub @ (sK541 @ X172 @ X174) @ X173) = (sK541 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173))) & ((ap @ (sub @ sK540 @ id) @ sK539) = (lam @ (sK541 @ sh @ one))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f521,plain,(
% 6.47/2.17    ! [X175 : subst > term > subst > $o] : (? [X176 : term > $o] : ! [X177 : term] : ((X175 @ id @ X177 @ id) = (X176 @ X177)) => ! [X177 : term] : ((X175 @ id @ X177 @ id) = (sK542 @ X175 @ X177)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f522,plain,(
% 6.47/2.17    ? [X178 : subst > term > subst > $o] : ! [X179 : term > $o] : ? [X180 : term] : ((X179 @ X180) != (X178 @ id @ X180 @ id)) => ! [X179 : term > $o] : ? [X180 : term] : ((X179 @ X180) != (sK543 @ id @ X180 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f523,plain,(
% 6.47/2.17    ! [X179 : term > $o] : (? [X180 : term] : ((X179 @ X180) != (sK543 @ id @ X180 @ id)) => ((X179 @ (sK544 @ X179)) != (sK543 @ id @ (sK544 @ X179) @ id)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f524,plain,(
% 6.47/2.17    ? [X181 : subst,X182 : term] : ((comp @ sh @ (push @ X182 @ X181)) != X181) => ((comp @ sh @ (push @ sK546 @ sK545)) != sK545)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f525,plain,(
% 6.47/2.17    ? [X183 : term,X184 : subst] : ((sub @ one @ (push @ X183 @ X184)) != X183) => ((sub @ one @ (push @ sK547 @ sK548)) != sK547)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f526,plain,(
% 6.47/2.17    ? [X194 : term,X195 : term > $o,X196 : term,X197 : term > $o,X198 : subst] : (($true != (X197 @ (sub @ X194 @ (push @ X196 @ X198)))) & ($true = (X195 @ X194))) => (($true != (sK552 @ (sub @ sK549 @ (push @ sK551 @ sK553)))) & ($true = (sK550 @ sK549)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f527,plain,(
% 6.47/2.17    ? [X199 : term] : ! [X200 : subst > term > term] : ? [X201 : subst,X202 : term] : ((X200 @ X201 @ X202) != (sub @ X199 @ (push @ X202 @ X201))) => ! [X200 : subst > term > term] : ? [X202 : term,X201 : subst] : ((sub @ sK554 @ (push @ X202 @ X201)) != (X200 @ X201 @ X202))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f528,plain,(
% 6.47/2.17    ! [X200 : subst > term > term] : (? [X202 : term,X201 : subst] : ((sub @ sK554 @ (push @ X202 @ X201)) != (X200 @ X201 @ X202)) => ((sub @ sK554 @ (push @ (sK556 @ X200) @ (sK555 @ X200))) != (X200 @ (sK555 @ X200) @ (sK556 @ X200))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f529,plain,(
% 6.47/2.17    ! [X203 : term] : (? [X204 : subst > term > term] : ! [X205 : subst,X206 : term] : ((sub @ X203 @ (push @ X206 @ X205)) = (X204 @ X205 @ X206)) => ! [X206 : term,X205 : subst] : ((sub @ X203 @ (push @ X206 @ X205)) = (sK557 @ X203 @ X205 @ X206)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f530,plain,(
% 6.47/2.17    ? [X207 : term] : ((sub @ X207 @ id) != X207) => ((sub @ sK558 @ id) != sK558)),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f531,plain,(
% 6.47/2.17    ? [X211 : term,X212 : subst] : ((sub @ one @ (push @ X211 @ X212)) != X211) => (sK559 != (sub @ one @ (push @ sK559 @ sK560)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f532,plain,(
% 6.47/2.17    ? [X213 : term,X214 : term,X215 : term,X216 : term] : (((ap @ (sub @ X215 @ id) @ X216) = (ap @ (sub @ X213 @ id) @ X214)) & (X214 != X216)) => (((ap @ (sub @ sK563 @ id) @ sK564) = (ap @ (sub @ sK561 @ id) @ sK562)) & (sK562 != sK564))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f533,plain,(
% 6.47/2.17    ? [X225 : term,X226 : term,X227 : term,X228 : term] : (((ap @ X226 @ X225) = (ap @ X227 @ X228)) & (X225 != X228)) => (((ap @ sK567 @ sK568) = (ap @ sK566 @ sK565)) & (sK565 != sK568))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f534,plain,(
% 6.47/2.17    ? [X229 : subst > term > subst > $o] : ! [X230 : term > $o] : ? [X231 : term] : ((X230 @ X231) != (X229 @ id @ X231 @ id)) => ! [X230 : term > $o] : ? [X231 : term] : ((X230 @ X231) != (sK569 @ id @ X231 @ id))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f535,plain,(
% 6.47/2.17    ! [X230 : term > $o] : (? [X231 : term] : ((X230 @ X231) != (sK569 @ id @ X231 @ id)) => ((X230 @ (sK570 @ X230)) != (sK569 @ id @ (sK570 @ X230) @ id)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f536,plain,(
% 6.47/2.17    ! [X232 : subst > term > subst > $o] : (? [X233 : term > $o] : ! [X234 : term] : ((X232 @ id @ X234 @ id) = (X233 @ X234)) => ! [X234 : term] : ((X232 @ id @ X234 @ id) = (sK571 @ X232 @ X234)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f537,plain,(
% 6.47/2.17    ? [X235 : subst > term > term,X236 : subst > term > term,X237 : subst,X238 : term] : (! [X239 : subst,X240 : subst,X241 : term] : ((X236 @ (comp @ X240 @ X239) @ (sub @ X241 @ X239)) = (sub @ (X236 @ X240 @ X241) @ X239)) & ! [X242 : term,X243 : subst,X244 : subst] : ((X235 @ (comp @ X243 @ X244) @ (sub @ X242 @ X244)) = (sub @ (X235 @ X243 @ X242) @ X244)) & ((X235 @ X237 @ X238) != (X236 @ X237 @ X238)) & ((lam @ (X235 @ sh @ one)) = (lam @ (X236 @ sh @ one)))) => (! [X241 : term,X240 : subst,X239 : subst] : ((sub @ (sK573 @ X240 @ X241) @ X239) = (sK573 @ (comp @ X240 @ X239) @ (sub @ X241 @ X239))) & ! [X244 : subst,X243 : subst,X242 : term] : ((sK572 @ (comp @ X243 @ X244) @ (sub @ X242 @ X244)) = (sub @ (sK572 @ X243 @ X242) @ X244)) & ((sK573 @ sK574 @ sK575) != (sK572 @ sK574 @ sK575)) & ((lam @ (sK572 @ sh @ one)) = (lam @ (sK573 @ sh @ one))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f538,plain,(
% 6.47/2.17    ! [X246 : subst > term > term] : (? [X249 : subst,X250 : subst,X251 : term] : ((sub @ (X246 @ X250 @ X251) @ X249) != (X246 @ (comp @ X250 @ X249) @ (sub @ X251 @ X249))) => ((sub @ (X246 @ (sK577 @ X246) @ (sK578 @ X246)) @ (sK576 @ X246)) != (X246 @ (comp @ (sK577 @ X246) @ (sK576 @ X246)) @ (sub @ (sK578 @ X246) @ (sK576 @ X246)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f539,plain,(
% 6.47/2.17    ! [X245 : subst > term > term] : (? [X252 : term,X253 : subst,X254 : subst] : ((X245 @ (comp @ X253 @ X254) @ (sub @ X252 @ X254)) != (sub @ (X245 @ X253 @ X252) @ X254)) => ((sub @ (X245 @ (sK580 @ X245) @ (sK579 @ X245)) @ (sK581 @ X245)) != (X245 @ (comp @ (sK580 @ X245) @ (sK581 @ X245)) @ (sub @ (sK579 @ X245) @ (sK581 @ X245)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f540,plain,(
% 6.47/2.17    ? [X255 : term] : ! [X256 : subst > term > term] : ? [X257 : subst,X258 : term] : ((sub @ X255 @ (push @ X258 @ X257)) != (X256 @ X257 @ X258)) => ! [X256 : subst > term > term] : ? [X258 : term,X257 : subst] : ((sub @ sK582 @ (push @ X258 @ X257)) != (X256 @ X257 @ X258))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f541,plain,(
% 6.47/2.17    ! [X256 : subst > term > term] : (? [X258 : term,X257 : subst] : ((sub @ sK582 @ (push @ X258 @ X257)) != (X256 @ X257 @ X258)) => ((sub @ sK582 @ (push @ (sK584 @ X256) @ (sK583 @ X256))) != (X256 @ (sK583 @ X256) @ (sK584 @ X256))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f542,plain,(
% 6.47/2.17    ! [X259 : term] : (? [X260 : subst > term > term] : ! [X261 : subst,X262 : term] : ((sub @ X259 @ (push @ X262 @ X261)) = (X260 @ X261 @ X262)) => ! [X262 : term,X261 : subst] : ((sub @ X259 @ (push @ X262 @ X261)) = (sK585 @ X259 @ X261 @ X262)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f543,plain,(
% 6.47/2.17    ? [X263 : term,X264 : term,X265 : term,X266 : term] : ((X263 != X264) & ((ap @ X266 @ X264) = (ap @ X265 @ X263))) => ((sK587 != sK586) & ((ap @ sK589 @ sK587) = (ap @ sK588 @ sK586)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f544,plain,(
% 6.47/2.17    ! [X272 : term] : (? [X273 : d_term] : ((d2term @ X273) = X272) => ((d2term @ (sK590 @ X272)) = X272))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f475,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & ((sP58 = $true) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | (sP58 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & ((pushprop_lem1 = $true) | ? [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term,X4 : term] : (($true = (X2 @ X3)) & ($true != (X0 @ (sub @ X3 @ (push @ X4 @ X1)))))) & (! [X5 : term > $o,X6 : subst,X7 : term > $o,X8 : term,X9 : term] : (($true != (X7 @ X8)) | ((X5 @ (sub @ X8 @ (push @ X9 @ X6))) = $true)) | (pushprop_lem1 != $true)) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X10 : d_subst,X11 : d_subst] : ((X10 = X11) | ((d2subst @ X10) != (d2subst @ X11))) & (pushprop_lem3v2_lthm = $true) & ((sP56 = $true) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (sP56 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X12 : subst] : ? [X13 : d_subst] : ((d2subst @ X13) = X12) & (! [X14 : term > $o,X15 : term] : (((sP55 @ X14) = $true) | ? [X16 : term] : (($true = (X14 @ X16)) & ($true != (X14 @ (lam @ X16)))) | ((X14 @ X15) = $true) | ? [X17 : term] : (($true != (X14 @ X17)) & ($true = (var @ X17)))) | (induction != $true)) & ((induction = $true) | ? [X18 : term > $o,X19 : term] : (($true != (sP55 @ X18)) & ! [X20 : term] : (($true != (X18 @ X20)) | ($true = (X18 @ (lam @ X20)))) & ((X18 @ X19) != $true) & ! [X21 : term] : (($true = (X18 @ X21)) | ((var @ X21) != $true)))) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (! [X22 : term,X23 : subst] : ((comp @ sh @ (push @ X22 @ X23)) = X23) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X24 : term,X25 : subst] : ((comp @ sh @ (push @ X24 @ X25)) != X25)) & ((substmonoid_lthm = $true) | (! [X26 : subst] : ((comp @ X26 @ id) = X26) & (? [X27 : subst] : ((comp @ id @ X27) != X27) | ? [X28 : subst] : ((comp @ X28 @ id) != X28)) & ! [X29 : subst] : ((comp @ id @ X29) = X29))) & (? [X30 : subst] : ((comp @ X30 @ id) != X30) | (! [X31 : subst] : ((comp @ id @ X31) = X31) & ! [X32 : subst] : ((comp @ X32 @ id) = X32)) | ? [X33 : subst] : ((comp @ id @ X33) != X33) | (substmonoid_lthm != $true)) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3a_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3aa_lthm != $true)) & ((sP51 = $true) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (sP51 != $true)) & (pushprop_lem0_gthm = $true) & ((shinj = $true) | ? [X34 : term,X35 : term] : (((sub @ X35 @ sh) = (sub @ X34 @ sh)) & (X34 != X35))) & (! [X36 : term,X37 : term] : (((sub @ X36 @ sh) != (sub @ X37 @ sh)) | (X36 = X37)) | (shinj != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & ! [X38 : d_term] : (d_one = X38) & (! [X39 : term,X40 : term,X41 : term,X42 : term] : (((ap @ X39 @ X40) != (ap @ X42 @ X41)) | (X39 = X42)) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X43 : term,X44 : term,X45 : term,X46 : term] : (((ap @ X43 @ X44) = (ap @ X46 @ X45)) & (X43 != X46))) & (induction2lem_gthm = $true) & (($true = sP43) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | ($true != sP43)) & (! [X47 : term,X48 : subst > term > subst > $o] : (? [X49 : term,X50 : term] : (((X48 @ id @ X50 @ id) = $true) & ($true = (X48 @ id @ X49 @ id)) & ($true != (X48 @ id @ (ap @ (sub @ X50 @ id) @ X49) @ id))) | ($true = (X48 @ id @ X47 @ id)) | ($true = (sP39 @ X48))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X51 : term,X52 : subst > term > subst > $o] : (! [X53 : term,X54 : term] : (($true != (X52 @ id @ X54 @ id)) | ($true != (X52 @ id @ X53 @ id)) | ($true = (X52 @ id @ (ap @ (sub @ X54 @ id) @ X53) @ id))) & ($true != (X52 @ id @ X51 @ id)) & ($true != (sP39 @ X52)))) & ((axvarid = $true) | ? [X55 : term] : ((sub @ X55 @ id) != X55)) & (! [X56 : term] : ((sub @ X56 @ id) = X56) | (axvarid != $true)) & ((pushprop_lem1v2_lthm = $true) | (? [X57 : term,X58 : term > $o,X59 : term > $o,X60 : subst] : (($true != (X59 @ one)) & ((X58 @ X57) = $true) & ! [X61 : term] : ((X59 @ X61) = (X58 @ (sub @ X61 @ (push @ X57 @ X60))))) & ! [X62 : subst,X63 : term] : ((sub @ one @ (push @ X63 @ X62)) = X63))) & (! [X64 : term,X65 : term > $o,X66 : term > $o,X67 : subst] : (($true = (X66 @ one)) | ((X65 @ X64) != $true) | ? [X68 : term] : ((X66 @ X68) != (X65 @ (sub @ X68 @ (push @ X64 @ X67))))) | ? [X69 : subst,X70 : term] : ((sub @ one @ (push @ X70 @ X69)) != X70) | (pushprop_lem1v2_lthm != $true)) & (! [X71 : term,X72 : term > $o,X73 : subst] : ? [X74 : term > $o] : ! [X75 : term] : ((X72 @ (sub @ X75 @ (push @ X71 @ X73))) = (X74 @ X75)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X76 : term,X77 : term > $o,X78 : subst] : ! [X79 : term > $o] : ? [X80 : term] : ((X77 @ (sub @ X80 @ (push @ X76 @ X78))) != (X79 @ X80))) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X81 : term,X82 : term,X83 : term,X84 : term] : (((ap @ (sub @ X83 @ id) @ X81) != (ap @ (sub @ X84 @ id) @ X82)) | (X81 = X82)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X85 : term,X86 : term,X87 : term,X88 : term] : (((ap @ (sub @ X88 @ id) @ X86) = (ap @ (sub @ X87 @ id) @ X85)) & (X85 != X86))) & (axclos = $true) & ! [X89 : d_term,X90 : d_term] : ((X89 = X90) | ((d2term @ X89) != (d2term @ X90))) & (termmset_gthm = $true) & ((hoasinduction_lem2 = $true) | ($true != sP38)) & (($true = sP38) | (hoasinduction_lem2 != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & (? [X91 : term,X92 : term,X93 : term,X94 : term] : ((X91 != X92) & ((ap @ X91 @ X93) = (ap @ X92 @ X94))) | ! [X95 : term,X96 : term,X97 : term,X98 : term] : ((X96 = X98) | ((ap @ (sub @ X98 @ id) @ X97) != (ap @ (sub @ X96 @ id) @ X95))) | ? [X99 : term] : ((sub @ X99 @ id) != X99) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X100 : term,X101 : term,X102 : term,X103 : term] : ((X100 = X101) | ((ap @ X101 @ X103) != (ap @ X100 @ X102))) & ? [X104 : term,X105 : term,X106 : term,X107 : term] : ((X105 != X107) & ((ap @ (sub @ X105 @ id) @ X104) = (ap @ (sub @ X107 @ id) @ X106))) & ! [X108 : term] : ((sub @ X108 @ id) = X108))) & ((axidl = $true) | ? [X109 : subst] : ((comp @ id @ X109) != X109)) & (! [X110 : subst] : ((comp @ id @ X110) = X110) | (axidl != $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3b_lthm = $true) | ? [X111 : term] : ! [X112 : subst > term > term] : ((sub @ X111 @ (push @ one @ sh)) != (X112 @ sh @ one))) & (! [X113 : term] : ? [X114 : subst > term > term] : ((sub @ X113 @ (push @ one @ sh)) = (X114 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP36) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP36)) & (! [X115 : term,X116 : term,X117 : term,X118 : term] : (((ap @ (sub @ X117 @ id) @ X116) != (ap @ (sub @ X115 @ id) @ X118)) | (X115 = X117)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X119 : term,X120 : term,X121 : term,X122 : term] : (((ap @ (sub @ X121 @ id) @ X120) = (ap @ (sub @ X119 @ id) @ X122)) & (X119 != X121))) & ((termmset_lthm = $true) | (? [X123 : term] : ((sub @ X123 @ id) != X123) & ! [X124 : term] : ((sub @ X124 @ id) = X124))) & (! [X125 : term] : ((sub @ X125 @ id) = X125) | ? [X126 : term] : ((sub @ X126 @ id) != X126) | (termmset_lthm != $true)) & (ulamvarsh = $true) & ((axidr = $true) | ? [X127 : subst] : ((comp @ X127 @ id) != X127)) & (! [X128 : subst] : ((comp @ X128 @ id) = X128) | (axidr != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X129 : term] : ? [X130 : subst > term > term] : ((sub @ X129 @ (push @ one @ sh)) = (X130 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X131 : term] : ! [X132 : subst > term > term] : ((X132 @ sh @ one) != (sub @ X131 @ (push @ one @ sh)))) & ((pushprop_lem1v2 = $true) | ? [X133 : term > $o,X134 : term,X135 : term > $o,X136 : subst] : (($true = (X133 @ X134)) & ! [X137 : term] : ((X135 @ X137) = (X133 @ (sub @ X137 @ (push @ X134 @ X136)))) & ($true != (X135 @ one)))) & (! [X138 : term > $o,X139 : term,X140 : term > $o,X141 : subst] : (($true != (X138 @ X139)) | ? [X142 : term] : ((X138 @ (sub @ X142 @ (push @ X139 @ X141))) != (X140 @ X142)) | ($true = (X140 @ one))) | (pushprop_lem1v2 != $true)) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & ((hoasinduction_lthm = $true) | (sP35 != $true)) & ((sP35 = $true) | (hoasinduction_lthm != $true)) & (pushprop_lem3v2 = $true) & (($true = sP26) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP26)) & (hoasinduction_lem1v2_gthm = $true) & ((substmonoid = $true) | ? [X143 : subst] : ((comp @ id @ X143) != X143) | ? [X144 : subst] : ((comp @ X144 @ id) != X144)) & ((! [X145 : subst] : ((comp @ id @ X145) = X145) & ! [X146 : subst] : ((comp @ X146 @ id) = X146)) | (substmonoid != $true)) & (! [X147 : subst] : ((push @ (sub @ one @ X147) @ (comp @ sh @ X147)) = X147) | (axscons != $true)) & ((axscons = $true) | ? [X148 : subst] : ((push @ (sub @ one @ X148) @ (comp @ sh @ X148)) != X148)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((laminj = $true) | ? [X149 : term,X150 : term] : (((lam @ X150) = (lam @ X149)) & (X149 != X150))) & (! [X151 : term,X152 : term] : (((lam @ X152) != (lam @ X151)) | (X151 = X152)) | (laminj != $true)) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X153 : subst,X154 : term > $o,X155 : term] : ? [X156 : term > $o] : ! [X157 : term] : ((X154 @ (sub @ X157 @ (push @ X155 @ X153))) = (X156 @ X157)) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X158 : subst,X159 : term > $o,X160 : term] : ! [X161 : term > $o] : ? [X162 : term] : ((X159 @ (sub @ X162 @ (push @ X160 @ X158))) != (X161 @ X162))) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & (($true = sP22) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ($true != sP22)) & (! [X163 : term,X164 : term,X165 : subst > term > term] : (? [X166 : subst,X167 : subst,X168 : term] : ((X165 @ (comp @ X166 @ X167) @ (sub @ X168 @ X167)) != (sub @ (X165 @ X166 @ X168) @ X167)) | ((lam @ (X165 @ sh @ one)) != (ap @ (sub @ X164 @ id) @ X163))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X169 : term,X170 : term,X171 : subst > term > term] : (! [X172 : subst,X173 : subst,X174 : term] : ((sub @ (X171 @ X172 @ X174) @ X173) = (X171 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173))) & ((ap @ (sub @ X170 @ id) @ X169) = (lam @ (X171 @ sh @ one))))) & (axmap = $true) & (! [X175 : subst > term > subst > $o] : ? [X176 : term > $o] : ! [X177 : term] : ((X175 @ id @ X177 @ id) = (X176 @ X177)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X178 : subst > term > subst > $o] : ! [X179 : term > $o] : ? [X180 : term] : ((X179 @ X180) != (X178 @ id @ X180 @ id))) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3aa = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3aa != $true)) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (? [X181 : subst,X182 : term] : ((comp @ sh @ (push @ X182 @ X181)) != X181) | ? [X183 : term,X184 : subst] : ((sub @ one @ (push @ X183 @ X184)) != X183) | ! [X185 : term,X186 : term > $o,X187 : term,X188 : term > $o,X189 : subst] : (($true = (X188 @ (sub @ X185 @ (push @ X187 @ X189)))) | ($true != (X186 @ X185))) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X190 : subst,X191 : term] : ((comp @ sh @ (push @ X191 @ X190)) = X190) & ! [X192 : term,X193 : subst] : ((sub @ one @ (push @ X192 @ X193)) = X192) & ? [X194 : term,X195 : term > $o,X196 : term,X197 : term > $o,X198 : subst] : (($true != (X197 @ (sub @ X194 @ (push @ X196 @ X198)))) & ($true = (X195 @ X194))))) & ((induction2 = $true) | ($true != sP20)) & (($true = sP20) | (induction2 != $true)) & ((hoasinduction_lem3_lthm = $true) | ($true != sP18)) & (($true = sP18) | (hoasinduction_lem3_lthm != $true)) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction = $true) | ($true != sP15)) & (($true = sP15) | (hoasinduction != $true)) & ((sP12 = $true) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3v2a = $true) | (sP12 != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X199 : term] : ! [X200 : subst > term > term] : ? [X201 : subst,X202 : term] : ((X200 @ X201 @ X202) != (sub @ X199 @ (push @ X202 @ X201)))) & (! [X203 : term] : ? [X204 : subst > term > term] : ! [X205 : subst,X206 : term] : ((sub @ X203 @ (push @ X206 @ X205)) = (X204 @ X205 @ X206)) | (hoasinduction_lem3v2_f != $true)) & (hoasapinj2_gthm = $true) & ((induction2lem = $true) | ($true != sP11)) & (($true = sP11) | (induction2lem != $true)) & ((hoasinduction_lem3v2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (hoasinduction_lem3v2_lthm != $true)) & (lamnotap != $true) & ((hoasinduction_lem3v2 = $true) | ($true != sP7)) & (($true = sP7) | (hoasinduction_lem3v2 != $true)) & (($true = sP5) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | ($true != sP5)) & (($true = sP0) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP0)) & ((termmset = $true) | ? [X207 : term] : ((sub @ X207 @ id) != X207)) & (! [X208 : term] : ((sub @ X208 @ id) = X208) | (termmset != $true)) & (hoasinduction_lem3_gthm = $true) & (! [X209 : term,X210 : subst] : ((sub @ one @ (push @ X209 @ X210)) = X209) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X211 : term,X212 : subst] : ((sub @ one @ (push @ X211 @ X212)) != X211)) & (hoaslamnotvar_gthm = $true) & ((hoasapinj2_lthm = $true) | (? [X213 : term,X214 : term,X215 : term,X216 : term] : (((ap @ (sub @ X215 @ id) @ X216) = (ap @ (sub @ X213 @ id) @ X214)) & (X214 != X216)) & ! [X217 : term,X218 : term,X219 : term,X220 : term] : (((ap @ X218 @ X217) != (ap @ X219 @ X220)) | (X217 = X220)))) & (! [X221 : term,X222 : term,X223 : term,X224 : term] : (((ap @ (sub @ X223 @ id) @ X224) != (ap @ (sub @ X221 @ id) @ X222)) | (X222 = X224)) | ? [X225 : term,X226 : term,X227 : term,X228 : term] : (((ap @ X226 @ X225) = (ap @ X227 @ X228)) & (X225 != X228)) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lem0 = $true) | ? [X229 : subst > term > subst > $o] : ! [X230 : term > $o] : ? [X231 : term] : ((X230 @ X231) != (X229 @ id @ X231 @ id))) & (! [X232 : subst > term > subst > $o] : ? [X233 : term > $o] : ! [X234 : term] : ((X232 @ id @ X234 @ id) = (X233 @ X234)) | (hoasinduction_lem0 != $true)) & ((hoaslaminj = $true) | ? [X235 : subst > term > term,X236 : subst > term > term,X237 : subst,X238 : term] : (! [X239 : subst,X240 : subst,X241 : term] : ((X236 @ (comp @ X240 @ X239) @ (sub @ X241 @ X239)) = (sub @ (X236 @ X240 @ X241) @ X239)) & ! [X242 : term,X243 : subst,X244 : subst] : ((X235 @ (comp @ X243 @ X244) @ (sub @ X242 @ X244)) = (sub @ (X235 @ X243 @ X242) @ X244)) & ((X235 @ X237 @ X238) != (X236 @ X237 @ X238)) & ((lam @ (X235 @ sh @ one)) = (lam @ (X236 @ sh @ one))))) & (! [X245 : subst > term > term,X246 : subst > term > term,X247 : subst,X248 : term] : (? [X249 : subst,X250 : subst,X251 : term] : ((sub @ (X246 @ X250 @ X251) @ X249) != (X246 @ (comp @ X250 @ X249) @ (sub @ X251 @ X249))) | ? [X252 : term,X253 : subst,X254 : subst] : ((X245 @ (comp @ X253 @ X254) @ (sub @ X252 @ X254)) != (sub @ (X245 @ X253 @ X252) @ X254)) | ((X246 @ X247 @ X248) = (X245 @ X247 @ X248)) | ((lam @ (X246 @ sh @ one)) != (lam @ (X245 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X255 : term] : ! [X256 : subst > term > term] : ? [X257 : subst,X258 : term] : ((sub @ X255 @ (push @ X258 @ X257)) != (X256 @ X257 @ X258))) & (! [X259 : term] : ? [X260 : subst > term > term] : ! [X261 : subst,X262 : term] : ((sub @ X259 @ (push @ X262 @ X261)) = (X260 @ X261 @ X262)) | (hoasinduction_lem3v2_f_lthm != $true)) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & ((apinj2 = $true) | ? [X263 : term,X264 : term,X265 : term,X266 : term] : ((X263 != X264) & ((ap @ X266 @ X264) = (ap @ X265 @ X263)))) & (! [X267 : term,X268 : term,X269 : term,X270 : term] : ((X267 = X268) | ((ap @ X270 @ X268) != (ap @ X269 @ X267))) | (apinj2 != $true)) & ! [X271 : d_subst] : (d_id = X271) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X272 : term] : ? [X273 : d_term] : ((d2term @ X273) = X272)),
% 6.47/2.17    inference(rectify,[status(thm)],[f474])).
% 6.47/2.17  thf(f474,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & ((sP58 = $true) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | (sP58 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & ((pushprop_lem1 = $true) | ? [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true = (X145 @ X146)) & ($true != (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144))))) | (pushprop_lem1 != $true)) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X56 : d_subst,X57 : d_subst] : ((X56 = X57) | ((d2subst @ X56) != (d2subst @ X57))) & (pushprop_lem3v2_lthm = $true) & ((sP56 = $true) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (sP56 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & (! [X5 : term > $o,X6 : term] : (($true = (sP55 @ X5)) | ? [X7 : term] : (($true = (X5 @ X7)) & ((X5 @ (lam @ X7)) != $true)) | ($true = (X5 @ X6)) | ? [X10 : term] : (($true != (X5 @ X10)) & ($true = (var @ X10)))) | (induction != $true)) & ((induction = $true) | ? [X5 : term > $o,X6 : term] : (($true != (sP55 @ X5)) & ! [X7 : term] : (($true != (X5 @ X7)) | ((X5 @ (lam @ X7)) = $true)) & ($true != (X5 @ X6)) & ! [X10 : term] : (($true = (X5 @ X10)) | ($true != (var @ X10))))) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) != X286)) & ((substmonoid_lthm = $true) | (! [X61 : subst] : ((comp @ X61 @ id) = X61) & (? [X63 : subst] : ((comp @ id @ X63) != X63) | ? [X62 : subst] : ((comp @ X62 @ id) != X62)) & ! [X60 : subst] : ((comp @ id @ X60) = X60))) & (? [X61 : subst] : ((comp @ X61 @ id) != X61) | (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62)) | ? [X60 : subst] : ((comp @ id @ X60) != X60) | (substmonoid_lthm != $true)) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3a_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3aa_lthm != $true)) & ((sP51 = $true) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (sP51 != $true)) & (pushprop_lem0_gthm = $true) & ((shinj = $true) | ? [X448 : term,X449 : term] : (((sub @ X448 @ sh) = (sub @ X449 @ sh)) & (X448 != X449))) & (! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449)) | (shinj != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & ! [X513 : d_term] : (d_one = X513) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) = (ap @ X101 @ X102)) & (X101 != X104))) & (induction2lem_gthm = $true) & (($true = sP43) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | ($true != sP43)) & (! [X247 : term,X248 : subst > term > subst > $o] : (? [X254 : term,X255 : term] : (($true = (X248 @ id @ X255 @ id)) & ($true = (X248 @ id @ X254 @ id)) & ($true != (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)) | ((sP39 @ X248) = $true)) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X247 : term,X248 : subst > term > subst > $o] : (! [X254 : term,X255 : term] : (($true != (X248 @ id @ X255 @ id)) | ($true != (X248 @ id @ X254 @ id)) | ($true = (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) & ($true != (X248 @ id @ X247 @ id)) & ((sP39 @ X248) != $true))) & ((axvarid = $true) | ? [X80 : term] : ((sub @ X80 @ id) != X80)) & (! [X80 : term] : ((sub @ X80 @ id) = X80) | (axvarid != $true)) & ((pushprop_lem1v2_lthm = $true) | (? [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true != (X110 @ one)) & ($true = (X109 @ X108)) & ! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112))) & ! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107))) & (! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true = (X110 @ one)) | ($true != (X109 @ X108)) | ? [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) != (X110 @ X112))) | ? [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) != X107) | (pushprop_lem1v2_lthm != $true)) & (! [X0 : term,X1 : term > $o,X2 : subst] : ? [X3 : term > $o] : ! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X0 : term,X1 : term > $o,X2 : subst] : ! [X3 : term > $o] : ? [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) != (X3 @ X4))) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) = (ap @ (sub @ X13 @ id) @ X11)) & (X11 != X12))) & (axclos = $true) & ! [X207 : d_term,X208 : d_term] : ((X207 = X208) | ((d2term @ X208) != (d2term @ X207))) & (termmset_gthm = $true) & ((hoasinduction_lem2 = $true) | ($true != sP38)) & (($true = sP38) | (hoasinduction_lem2 != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & (? [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 != X506) & ((ap @ X506 @ X508) = (ap @ X505 @ X507))) | ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511))) | ? [X504 : term] : ((sub @ X504 @ id) != X504) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 = X506) | ((ap @ X506 @ X508) != (ap @ X505 @ X507))) & ? [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 != X512) & ((ap @ (sub @ X510 @ id) @ X509) = (ap @ (sub @ X512 @ id) @ X511))) & ! [X504 : term] : ((sub @ X504 @ id) = X504))) & ((axidl = $true) | ? [X539 : subst] : ((comp @ id @ X539) != X539)) & (! [X539 : subst] : ((comp @ id @ X539) = X539) | (axidl != $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3b_lthm = $true) | ? [X283 : term] : ! [X284 : subst > term > term] : ((X284 @ sh @ one) != (sub @ X283 @ (push @ one @ sh)))) & (! [X283 : term] : ? [X284 : subst > term > term] : ((X284 @ sh @ one) = (sub @ X283 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP36) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP36)) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) = (ap @ (sub @ X287 @ id) @ X290)) & (X287 != X289))) & ((termmset_lthm = $true) | (? [X294 : term] : ((sub @ X294 @ id) != X294) & ! [X293 : term] : ((sub @ X293 @ id) = X293))) & (! [X294 : term] : ((sub @ X294 @ id) = X294) | ? [X293 : term] : ((sub @ X293 @ id) != X293) | (termmset_lthm != $true)) & (ulamvarsh = $true) & ((axidr = $true) | ? [X374 : subst] : ((comp @ X374 @ id) != X374)) & (! [X374 : subst] : ((comp @ X374 @ id) = X374) | (axidr != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X141 : term] : ? [X142 : subst > term > term] : ((X142 @ sh @ one) = (sub @ X141 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X141 : term] : ! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh)))) & ((pushprop_lem1v2 = $true) | ? [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true = (X27 @ X28)) & ! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) & ($true != (X29 @ one)))) & (! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true != (X27 @ X28)) | ? [X31 : term] : ((X29 @ X31) != (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one))) | (pushprop_lem1v2 != $true)) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & ((hoasinduction_lthm = $true) | (sP35 != $true)) & ((sP35 = $true) | (hoasinduction_lthm != $true)) & (pushprop_lem3v2 = $true) & (($true = sP26) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP26)) & (hoasinduction_lem1v2_gthm = $true) & ((substmonoid = $true) | ? [X210 : subst] : ((comp @ id @ X210) != X210) | ? [X209 : subst] : ((comp @ X209 @ id) != X209)) & ((! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209)) | (substmonoid != $true)) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) | (axscons != $true)) & ((axscons = $true) | ? [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) != X217)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((laminj = $true) | ? [X307 : term,X308 : term] : (((lam @ X307) = (lam @ X308)) & (X307 != X308))) & (! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308)) | (laminj != $true)) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X443 : subst,X444 : term > $o,X445 : term] : ? [X446 : term > $o] : ! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X443 : subst,X444 : term > $o,X445 : term] : ! [X446 : term > $o] : ? [X447 : term] : ((X446 @ X447) != (X444 @ (sub @ X447 @ (push @ X445 @ X443))))) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & (($true = sP22) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ($true != sP22)) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (? [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) != (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X211 : term,X212 : term,X213 : subst > term > term] : (! [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) = (sub @ (X213 @ X214 @ X216) @ X215)) & ((lam @ (X213 @ sh @ one)) = (ap @ (sub @ X212 @ id) @ X211)))) & (axmap = $true) & (! [X186 : subst > term > subst > $o] : ? [X187 : term > $o] : ! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X186 : subst > term > subst > $o] : ! [X187 : term > $o] : ? [X188 : term] : ((X186 @ id @ X188 @ id) != (X187 @ X188))) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3aa = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3aa != $true)) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (? [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) != X34) | ? [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) != X32) | ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36))) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) & ! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) & ? [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) != $true) & ($true = (X37 @ X36))))) & ((induction2 = $true) | ($true != sP20)) & (($true = sP20) | (induction2 != $true)) & ((hoasinduction_lem3_lthm = $true) | ($true != sP18)) & (($true = sP18) | (hoasinduction_lem3_lthm != $true)) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction = $true) | ($true != sP15)) & (($true = sP15) | (hoasinduction != $true)) & ((sP12 = $true) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3v2a = $true) | (sP12 != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X385 : term] : ! [X386 : subst > term > term] : ? [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) != (X386 @ X387 @ X388))) & (! [X385 : term] : ? [X386 : subst > term > term] : ! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388)) | (hoasinduction_lem3v2_f != $true)) & (hoasapinj2_gthm = $true) & ((induction2lem = $true) | ($true != sP11)) & (($true = sP11) | (induction2lem != $true)) & ((hoasinduction_lem3v2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (hoasinduction_lem3v2_lthm != $true)) & (lamnotap != $true) & ((hoasinduction_lem3v2 = $true) | ($true != sP7)) & (($true = sP7) | (hoasinduction_lem3v2 != $true)) & (($true = sP5) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | ($true != sP5)) & (($true = sP0) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP0)) & ((termmset = $true) | ? [X355 : term] : ((sub @ X355 @ id) != X355)) & (! [X355 : term] : ((sub @ X355 @ id) = X355) | (termmset != $true)) & (hoasinduction_lem3_gthm = $true) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) != X291)) & (hoaslamnotvar_gthm = $true) & ((hoasapinj2_lthm = $true) | (? [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) = (ap @ (sub @ X301 @ id) @ X302)) & (X300 != X302)) & ! [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) != (ap @ X296 @ X295)) | (X295 = X298)))) & (! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)) | ? [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) = (ap @ X296 @ X295)) & (X295 != X298)) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lem0 = $true) | ? [X121 : subst > term > subst > $o] : ! [X122 : term > $o] : ? [X123 : term] : ((X121 @ id @ X123 @ id) != (X122 @ X123))) & (! [X121 : subst > term > subst > $o] : ? [X122 : term > $o] : ! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123)) | (hoasinduction_lem0 != $true)) & ((hoaslaminj = $true) | ? [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) & ! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100)) & ((X91 @ X93 @ X94) != (X92 @ X93 @ X94)) & ((lam @ (X92 @ sh @ one)) = (lam @ (X91 @ sh @ one))))) & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (? [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) != (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ? [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) != (sub @ (X91 @ X99 @ X98) @ X100)) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X303 : term] : ! [X304 : subst > term > term] : ? [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) != (X304 @ X305 @ X306))) & (! [X303 : term] : ? [X304 : subst > term > term] : ! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306)) | (hoasinduction_lem3v2_f_lthm != $true)) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & ((apinj2 = $true) | ? [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 != X257) & ((ap @ X258 @ X256) = (ap @ X259 @ X257)))) & (! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257))) | (apinj2 != $true)) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58)),
% 6.47/2.17    inference(flattening,[status(thm)],[f473])).
% 6.47/2.17  thf(f473,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & (((sP58 = $true) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | (sP58 != $true))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & (((pushprop_lem1 = $true) | ? [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true = (X145 @ X146)) & ($true != (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144))))) | (pushprop_lem1 != $true))) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X56 : d_subst,X57 : d_subst] : ((X56 = X57) | ((d2subst @ X56) != (d2subst @ X57))) & (pushprop_lem3v2_lthm = $true) & (((sP56 = $true) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (sP56 != $true))) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & ((! [X5 : term > $o,X6 : term] : (($true = (sP55 @ X5)) | ? [X7 : term] : (($true = (X5 @ X7)) & ((X5 @ (lam @ X7)) != $true)) | ($true = (X5 @ X6)) | ? [X10 : term] : (($true != (X5 @ X10)) & ($true = (var @ X10)))) | (induction != $true)) & ((induction = $true) | ? [X5 : term > $o,X6 : term] : (($true != (sP55 @ X5)) & ! [X7 : term] : (($true != (X5 @ X7)) | ((X5 @ (lam @ X7)) = $true)) & ($true != (X5 @ X6)) & ! [X10 : term] : (($true = (X5 @ X10)) | ($true != (var @ X10)))))) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & ((! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) != X286))) & (((substmonoid_lthm = $true) | (! [X61 : subst] : ((comp @ X61 @ id) = X61) & (? [X63 : subst] : ((comp @ id @ X63) != X63) | ? [X62 : subst] : ((comp @ X62 @ id) != X62)) & ! [X60 : subst] : ((comp @ id @ X60) = X60))) & ((? [X61 : subst] : ((comp @ X61 @ id) != X61) | (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62)) | ? [X60 : subst] : ((comp @ id @ X60) != X60)) | (substmonoid_lthm != $true))) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & (((hoasinduction_lem3a_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3a_lthm != $true))) & (((hoasinduction_lem3aa_lthm = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3aa_lthm != $true))) & (((sP51 = $true) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (sP51 != $true))) & (pushprop_lem0_gthm = $true) & (((shinj = $true) | ? [X448 : term,X449 : term] : (((sub @ X448 @ sh) = (sub @ X449 @ sh)) & (X448 != X449))) & (! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449)) | (shinj != $true))) & (((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true))) & ! [X513 : d_term] : (d_one = X513) & ((! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) = (ap @ X101 @ X102)) & (X101 != X104)))) & (induction2lem_gthm = $true) & ((($true = sP43) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | ($true != sP43))) & ((! [X247 : term,X248 : subst > term > subst > $o] : (? [X254 : term,X255 : term] : (($true = (X248 @ id @ X255 @ id)) & ($true = (X248 @ id @ X254 @ id)) & ($true != (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)) | ((sP39 @ X248) = $true)) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X247 : term,X248 : subst > term > subst > $o] : (! [X254 : term,X255 : term] : (($true != (X248 @ id @ X255 @ id)) | ($true != (X248 @ id @ X254 @ id)) | ($true = (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) & ($true != (X248 @ id @ X247 @ id)) & ((sP39 @ X248) != $true)))) & (((axvarid = $true) | ? [X80 : term] : ((sub @ X80 @ id) != X80)) & (! [X80 : term] : ((sub @ X80 @ id) = X80) | (axvarid != $true))) & (((pushprop_lem1v2_lthm = $true) | (? [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true != (X110 @ one)) & ($true = (X109 @ X108)) & ! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112))) & ! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107))) & ((! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true = (X110 @ one)) | ($true != (X109 @ X108)) | ? [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) != (X110 @ X112))) | ? [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) != X107)) | (pushprop_lem1v2_lthm != $true))) & ((! [X0 : term,X1 : term > $o,X2 : subst] : ? [X3 : term > $o] : ! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X0 : term,X1 : term > $o,X2 : subst] : ! [X3 : term > $o] : ? [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) != (X3 @ X4)))) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) = (ap @ (sub @ X13 @ id) @ X11)) & (X11 != X12)))) & (axclos = $true) & ! [X207 : d_term,X208 : d_term] : ((X207 = X208) | ((d2term @ X208) != (d2term @ X207))) & (termmset_gthm = $true) & (((hoasinduction_lem2 = $true) | ($true != sP38)) & (($true = sP38) | (hoasinduction_lem2 != $true))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & (((? [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 != X506) & ((ap @ X506 @ X508) = (ap @ X505 @ X507))) | ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511))) | ? [X504 : term] : ((sub @ X504 @ id) != X504)) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 = X506) | ((ap @ X506 @ X508) != (ap @ X505 @ X507))) & ? [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 != X512) & ((ap @ (sub @ X510 @ id) @ X509) = (ap @ (sub @ X512 @ id) @ X511))) & ! [X504 : term] : ((sub @ X504 @ id) = X504)))) & (((axidl = $true) | ? [X539 : subst] : ((comp @ id @ X539) != X539)) & (! [X539 : subst] : ((comp @ id @ X539) = X539) | (axidl != $true))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (((hoasinduction_lem3b_lthm = $true) | ? [X283 : term] : ! [X284 : subst > term > term] : ((X284 @ sh @ one) != (sub @ X283 @ (push @ one @ sh)))) & (! [X283 : term] : ? [X284 : subst > term > term] : ((X284 @ sh @ one) = (sub @ X283 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((($true = sP36) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP36))) & ((! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) = (ap @ (sub @ X287 @ id) @ X290)) & (X287 != X289)))) & (((termmset_lthm = $true) | (? [X294 : term] : ((sub @ X294 @ id) != X294) & ! [X293 : term] : ((sub @ X293 @ id) = X293))) & ((! [X294 : term] : ((sub @ X294 @ id) = X294) | ? [X293 : term] : ((sub @ X293 @ id) != X293)) | (termmset_lthm != $true))) & (ulamvarsh = $true) & (((axidr = $true) | ? [X374 : subst] : ((comp @ X374 @ id) != X374)) & (! [X374 : subst] : ((comp @ X374 @ id) = X374) | (axidr != $true))) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((! [X141 : term] : ? [X142 : subst > term > term] : ((X142 @ sh @ one) = (sub @ X141 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X141 : term] : ! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh))))) & (((pushprop_lem1v2 = $true) | ? [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true = (X27 @ X28)) & ! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) & ($true != (X29 @ one)))) & (! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true != (X27 @ X28)) | ? [X31 : term] : ((X29 @ X31) != (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one))) | (pushprop_lem1v2 != $true))) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & (((hoasinduction_lthm = $true) | (sP35 != $true)) & ((sP35 = $true) | (hoasinduction_lthm != $true))) & (pushprop_lem3v2 = $true) & ((($true = sP26) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP26))) & (hoasinduction_lem1v2_gthm = $true) & (((substmonoid = $true) | (? [X210 : subst] : ((comp @ id @ X210) != X210) | ? [X209 : subst] : ((comp @ X209 @ id) != X209))) & ((! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209)) | (substmonoid != $true))) & ((! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) | (axscons != $true)) & ((axscons = $true) | ? [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) != X217))) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (((laminj = $true) | ? [X307 : term,X308 : term] : (((lam @ X307) = (lam @ X308)) & (X307 != X308))) & (! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308)) | (laminj != $true))) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & ((! [X443 : subst,X444 : term > $o,X445 : term] : ? [X446 : term > $o] : ! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X443 : subst,X444 : term > $o,X445 : term] : ! [X446 : term > $o] : ? [X447 : term] : ((X446 @ X447) != (X444 @ (sub @ X447 @ (push @ X445 @ X443)))))) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & ((($true = sP22) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ($true != sP22))) & ((! [X211 : term,X212 : term,X213 : subst > term > term] : (? [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) != (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X211 : term,X212 : term,X213 : subst > term > term] : (! [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) = (sub @ (X213 @ X214 @ X216) @ X215)) & ((lam @ (X213 @ sh @ one)) = (ap @ (sub @ X212 @ id) @ X211))))) & (axmap = $true) & ((! [X186 : subst > term > subst > $o] : ? [X187 : term > $o] : ! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X186 : subst > term > subst > $o] : ! [X187 : term > $o] : ? [X188 : term] : ((X186 @ id @ X188 @ id) != (X187 @ X188)))) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & (((hoasinduction_lem3aa = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3aa != $true))) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (((? [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) != X34) | ? [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) != X32) | ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36)))) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) & ! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) & ? [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) != $true) & ($true = (X37 @ X36)))))) & (((induction2 = $true) | ($true != sP20)) & (($true = sP20) | (induction2 != $true))) & (((hoasinduction_lem3_lthm = $true) | ($true != sP18)) & (($true = sP18) | (hoasinduction_lem3_lthm != $true))) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (((hoasinduction = $true) | ($true != sP15)) & (($true = sP15) | (hoasinduction != $true))) & (((sP12 = $true) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3v2a = $true) | (sP12 != $true))) & (((hoasinduction_lem3v2_f = $true) | ? [X385 : term] : ! [X386 : subst > term > term] : ? [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) != (X386 @ X387 @ X388))) & (! [X385 : term] : ? [X386 : subst > term > term] : ! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388)) | (hoasinduction_lem3v2_f != $true))) & (hoasapinj2_gthm = $true) & (((induction2lem = $true) | ($true != sP11)) & (($true = sP11) | (induction2lem != $true))) & (((hoasinduction_lem3v2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (hoasinduction_lem3v2_lthm != $true))) & (lamnotap != $true) & (((hoasinduction_lem3v2 = $true) | ($true != sP7)) & (($true = sP7) | (hoasinduction_lem3v2 != $true))) & ((($true = sP5) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | ($true != sP5))) & ((($true = sP0) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP0))) & (((termmset = $true) | ? [X355 : term] : ((sub @ X355 @ id) != X355)) & (! [X355 : term] : ((sub @ X355 @ id) = X355) | (termmset != $true))) & (hoasinduction_lem3_gthm = $true) & ((! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) != X291))) & (hoaslamnotvar_gthm = $true) & (((hoasapinj2_lthm = $true) | (? [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) = (ap @ (sub @ X301 @ id) @ X302)) & (X300 != X302)) & ! [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) != (ap @ X296 @ X295)) | (X295 = X298)))) & ((! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)) | ? [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) = (ap @ X296 @ X295)) & (X295 != X298))) | (hoasapinj2_lthm != $true))) & (((hoasinduction_lem0 = $true) | ? [X121 : subst > term > subst > $o] : ! [X122 : term > $o] : ? [X123 : term] : ((X121 @ id @ X123 @ id) != (X122 @ X123))) & (! [X121 : subst > term > subst > $o] : ? [X122 : term > $o] : ! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123)) | (hoasinduction_lem0 != $true))) & (((hoaslaminj = $true) | ? [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) & ! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100)) & ((X91 @ X93 @ X94) != (X92 @ X93 @ X94)) & ((lam @ (X92 @ sh @ one)) = (lam @ (X91 @ sh @ one))))) & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (? [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) != (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ? [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) != (sub @ (X91 @ X99 @ X98) @ X100)) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one)))) | (hoaslaminj != $true))) & (((hoasinduction_lem3v2_f_lthm = $true) | ? [X303 : term] : ! [X304 : subst > term > term] : ? [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) != (X304 @ X305 @ X306))) & (! [X303 : term] : ? [X304 : subst > term > term] : ! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306)) | (hoasinduction_lem3v2_f_lthm != $true))) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & (((apinj2 = $true) | ? [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 != X257) & ((ap @ X258 @ X256) = (ap @ X259 @ X257)))) & (! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257))) | (apinj2 != $true))) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58)),
% 6.47/2.17    inference(nnf_transformation,[status(thm)],[f73])).
% 6.47/2.17  thf(f73,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & ((sP58 = $true) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X56 : d_subst,X57 : d_subst] : ((X56 = X57) | ((d2subst @ X56) != (d2subst @ X57))) & (pushprop_lem3v2_lthm = $true) & ((sP56 = $true) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & (! [X5 : term > $o,X6 : term] : (($true = (sP55 @ X5)) | ? [X7 : term] : (($true = (X5 @ X7)) & ((X5 @ (lam @ X7)) != $true)) | ($true = (X5 @ X6)) | ? [X10 : term] : (($true != (X5 @ X10)) & ($true = (var @ X10)))) <=> (induction = $true)) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) <=> (axshiftcons = $true)) & ((substmonoid_lthm = $true) <=> (? [X61 : subst] : ((comp @ X61 @ id) != X61) | (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62)) | ? [X60 : subst] : ((comp @ id @ X60) != X60))) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3a_lthm = $true) <=> (sP54 = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ($true = sP52)) & ((sP51 = $true) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lem0_gthm = $true) & ((shinj = $true) <=> ! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449))) & ((hoasinduction_lem2v2 = $true) <=> ($true = sP45)) & ! [X513 : d_term] : (d_one = X513) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (induction2lem_gthm = $true) & (($true = sP43) <=> (induction2lem_lthm = $true)) & (! [X247 : term,X248 : subst > term > subst > $o] : (? [X254 : term,X255 : term] : (($true = (X248 @ id @ X255 @ id)) & ($true = (X248 @ id @ X254 @ id)) & ($true != (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)) | ((sP39 @ X248) = $true)) <=> (hoasinduction_no_psi_cond = $true)) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true = (X110 @ one)) | ($true != (X109 @ X108)) | ? [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) != (X110 @ X112))) | ? [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) != X107))) & (! [X0 : term,X1 : term > $o,X2 : subst] : ? [X3 : term > $o] : ! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & (axclos = $true) & ! [X207 : d_term,X208 : d_term] : ((X207 = X208) | ((d2term @ X208) != (d2term @ X207))) & (termmset_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ($true = sP38)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & ((? [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 != X506) & ((ap @ X506 @ X508) = (ap @ X505 @ X507))) | ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511))) | ? [X504 : term] : ((sub @ X504 @ id) != X504)) <=> (hoasapinj1_lthm = $true)) & ((axidl = $true) <=> ! [X539 : subst] : ((comp @ id @ X539) = X539)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X283 : term] : ? [X284 : subst > term > term] : ((X284 @ sh @ one) = (sub @ X283 @ (push @ one @ sh)))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP36) <=> (hoasinduction_lem3a = $true)) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) <=> (hoasapinj1 = $true)) & ((termmset_lthm = $true) <=> (! [X294 : term] : ((sub @ X294 @ id) = X294) | ? [X293 : term] : ((sub @ X293 @ id) != X293))) & (ulamvarsh = $true) & ((axidr = $true) <=> ! [X374 : subst] : ((comp @ X374 @ id) = X374)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X141 : term] : ? [X142 : subst > term > term] : ((X142 @ sh @ one) = (sub @ X141 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true != (X27 @ X28)) | ? [X31 : term] : ((X29 @ X31) != (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one)))) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & ((hoasinduction_lthm = $true) <=> (sP35 = $true)) & (pushprop_lem3v2 = $true) & (($true = sP26) <=> (induction2_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((substmonoid = $true) <=> (! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209))) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) <=> (axscons = $true)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((laminj = $true) <=> ! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308))) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X443 : subst,X444 : term > $o,X445 : term] : ? [X446 : term > $o] : ! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443)))) <=> (pushprop_lem0 = $true)) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & (($true = sP22) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (? [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) != (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) <=> (hoaslamnotap = $true)) & (axmap = $true) & (! [X186 : subst > term > subst > $o] : ? [X187 : term > $o] : ! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188)) <=> (hoasinduction_lem0_lthm = $true)) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3aa = $true) <=> ($true = sP21)) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & ((? [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) != X34) | ? [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) != X32) | ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36)))) <=> (pushprop_lem1_lthm = $true)) & ((induction2 = $true) <=> ($true = sP20)) & ((hoasinduction_lem3_lthm = $true) <=> ($true = sP18)) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction = $true) <=> ($true = sP15)) & ((sP12 = $true) <=> (hoasinduction_lem3v2a = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X385 : term] : ? [X386 : subst > term > term] : ! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388))) & (hoasapinj2_gthm = $true) & ((induction2lem = $true) <=> ($true = sP11)) & ((hoasinduction_lem3v2_lthm = $true) <=> ($true = sP9)) & (lamnotap != $true) & ((hoasinduction_lem3v2 = $true) <=> ($true = sP7)) & (($true = sP5) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (($true = sP0) <=> (hoasinduction_lem3aaa = $true)) & ((termmset = $true) <=> ! [X355 : term] : ((sub @ X355 @ id) = X355)) & (hoasinduction_lem3_gthm = $true) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) <=> (axvarcons = $true)) & (hoaslamnotvar_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)) | ? [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) = (ap @ X296 @ X295)) & (X295 != X298)))) & ((hoasinduction_lem0 = $true) <=> ! [X121 : subst > term > subst > $o] : ? [X122 : term > $o] : ! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123))) & ((hoaslaminj = $true) <=> ! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (? [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) != (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ? [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) != (sub @ (X91 @ X99 @ X98) @ X100)) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))))) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X303 : term] : ? [X304 : subst > term > term] : ! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306))) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & ((apinj2 = $true) <=> ! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257)))) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58)),
% 6.47/2.17    inference(definition_folding,[status(thm)],[f13,f72,f71,f70,f69,f68,f67,f66,f65,f64,f63,f62,f61,f60,f59,f58,f57,f56,f55,f54,f53,f52,f51,f50,f49,f48,f47,f46,f45,f44,f43,f42,f41,f40,f39,f38,f37,f36,f35,f34,f33,f32,f31,f30,f29,f28,f27,f26,f25,f24,f23,f22,f21,f20,f19,f18,f17,f16,f15,f14])).
% 6.47/2.17  thf(f14,plain,(
% 6.47/2.17    ($true = sP0) <=> ! [X15 : subst > term > subst > $o,X16 : term] : (? [X26 : term] : (($true != (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)) & ($true = (X15 @ id @ X26 @ id))) | ? [X17 : term,X18 : subst > term > term] : (! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) & ! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) & ! [X19 : term] : (($true != (X15 @ id @ X19 @ id)) | ($true = (X15 @ id @ (X18 @ id @ X19) @ id))) & ($true != (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id))) | ($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f15,plain,(
% 6.47/2.17    ! [X347 : subst > term > subst > $o] : (((sP1 @ X347) = $true) <=> ? [X348 : term,X349 : term] : (($true = (X347 @ id @ X349 @ id)) & ($true = (X347 @ id @ X348 @ id)) & ((X347 @ id @ (ap @ (sub @ X348 @ id) @ X349) @ id) != $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f16,plain,(
% 6.47/2.17    ! [X328 : term > $o] : (($true = (sP2 @ X328)) <=> ! [X333 : term,X334 : term] : (($true != (X328 @ X334)) | ($true != (X328 @ X333)) | ((X328 @ (ap @ X333 @ X334)) = $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f17,plain,(
% 6.47/2.17    (sP3 = $true) <=> ? [X336 : subst > term > subst > $o,X337 : term > $o,X338 : term] : (! [X344 : term] : (($true = (X337 @ (sub @ X338 @ (push @ X344 @ id)))) | ($true != (X337 @ X344))) & ! [X345 : term] : ((X336 @ id @ X345 @ id) = (X337 @ X345)) & ((X337 @ (lam @ X338)) != $true) & ! [X339 : subst > term > term] : (? [X340 : term] : (($true != (X336 @ id @ (X339 @ id @ X340) @ id)) & ($true = (X336 @ id @ X340 @ id))) | ? [X341 : subst,X342 : subst,X343 : term] : ((sub @ (X339 @ X341 @ X343) @ X342) != (X339 @ (comp @ X341 @ X342) @ (sub @ X343 @ X342))) | ($true = (X336 @ id @ (lam @ (X339 @ sh @ one)) @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f18,plain,(
% 6.47/2.17    ($true = sP4) <=> ! [X346 : term,X347 : subst > term > subst > $o] : (? [X350 : subst > term > term] : (! [X354 : term] : (((X347 @ id @ (X350 @ id @ X354) @ id) = $true) | ($true != (X347 @ id @ X354 @ id))) & ((X347 @ id @ (lam @ (X350 @ sh @ one)) @ id) != $true) & ! [X351 : term,X352 : subst,X353 : subst] : ((X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352)) = (sub @ (X350 @ X353 @ X351) @ X352))) | ((sP1 @ X347) = $true) | ((X347 @ id @ X346 @ id) = $true))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f19,plain,(
% 6.47/2.17    ($true = sP5) <=> (? [X328 : term > $o,X329 : term] : (($true = (sP2 @ X328)) & ($true != (X328 @ X329)) & ! [X331 : term] : (? [X332 : term] : (($true != (X328 @ (sub @ X331 @ (push @ X332 @ id)))) & ($true = (X328 @ X332))) | ((X328 @ (lam @ X331)) = $true)) & ! [X330 : term] : (($true != (var @ X330)) | ($true = (X328 @ X330)))) | (sP3 = $true) | ? [X325 : subst > term > subst > $o] : ! [X326 : term > $o] : ? [X327 : term] : ((X325 @ id @ X327 @ id) != (X326 @ X327)) | ($true = sP4) | ? [X335 : term] : ((sub @ X335 @ id) != X335))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f20,plain,(
% 6.47/2.17    ! [X358 : subst > term > subst > $o] : (($true = (sP6 @ X358)) <=> ? [X360 : subst > term > term] : (! [X361 : term] : (($true != (X358 @ id @ X361 @ id)) | ($true = (X358 @ id @ (X360 @ id @ X361) @ id))) & ! [X362 : subst,X363 : term,X364 : subst] : ((X360 @ (comp @ X362 @ X364) @ (sub @ X363 @ X364)) = (sub @ (X360 @ X362 @ X363) @ X364)) & ((X358 @ id @ (lam @ (X360 @ sh @ one)) @ id) != $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f21,plain,(
% 6.47/2.17    ($true = sP7) <=> ! [X356 : term,X357 : term > $o,X358 : subst > term > subst > $o] : (((X357 @ (lam @ X356)) = $true) | ($true = (sP6 @ X358)) | ? [X366 : subst,X367 : subst,X368 : subst,X369 : term] : (($true = (X358 @ X368 @ X369 @ (comp @ X366 @ X367))) & ($true != (X358 @ (comp @ X368 @ X366) @ (sub @ X369 @ X366) @ X367))) | ? [X370 : subst,X371 : subst,X372 : subst,X373 : term] : (((X358 @ X371 @ X373 @ (comp @ X370 @ X372)) != $true) & ($true = (X358 @ (comp @ X371 @ X370) @ (sub @ X373 @ X370) @ X372))) | ? [X359 : term] : ((X358 @ id @ X359 @ id) != (X357 @ X359)) | ? [X365 : term] : (($true != (X357 @ (sub @ X356 @ (push @ X365 @ id)))) & ((X357 @ X365) = $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f22,plain,(
% 6.47/2.17    ! [X149 : subst > term > subst > $o] : (($true = (sP8 @ X149)) <=> ? [X161 : subst > term > term] : (! [X165 : term] : (($true != (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id))) & ($true != (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id)) & ! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f23,plain,(
% 6.47/2.17    ($true = sP9) <=> (! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (($true = (X151 @ (lam @ X150))) | ($true = (sP8 @ X149)) | ? [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true != (X149 @ X156 @ X154 @ (comp @ X153 @ X155))) & ($true = (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155))) | ? [X166 : term] : ((X149 @ id @ X166 @ id) != (X151 @ X166)) | ? [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true != (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) & ($true = (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ? [X152 : term] : (($true != (X151 @ (sub @ X150 @ (push @ X152 @ id)))) & ($true = (X151 @ X152)))) | ? [X148 : term] : ((sub @ X148 @ id) != X148))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f24,plain,(
% 6.47/2.17    ! [X262 : term > $o] : (($true = (sP10 @ X262)) <=> ? [X263 : term,X264 : term] : (($true = (X262 @ X263)) & ($true = (X262 @ X264)) & ($true != (X262 @ (ap @ X263 @ X264)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f25,plain,(
% 6.47/2.17    ($true = sP11) <=> ! [X260 : subst,X261 : term,X262 : term > $o] : (? [X266 : term] : (($true != (X262 @ (lam @ X266))) & ! [X267 : term] : (($true = (X262 @ (sub @ X266 @ (push @ X267 @ id)))) | ($true != (X262 @ X267)))) | ($true = (X262 @ (sub @ X261 @ X260))) | ? [X265 : term] : (($true = (var @ X265)) & ($true != (X262 @ (sub @ X265 @ X260)))) | ($true = (sP10 @ X262)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f26,plain,(
% 6.47/2.17    (sP12 = $true) <=> ! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (? [X86 : subst > term > term] : (((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) != $true) & ! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) & ! [X90 : term] : (($true = (X82 @ id @ (X86 @ id @ X90) @ id)) | ($true != (X82 @ id @ X90 @ id)))) | ? [X85 : term] : ((X83 @ X85) != (X82 @ id @ X85 @ id)) | ($true = (X83 @ (lam @ X81))) | ? [X84 : term] : (($true != (X83 @ (sub @ X81 @ (push @ X84 @ id)))) & ($true = (X83 @ X84))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f27,plain,(
% 6.47/2.17    ! [X189 : subst > term > subst > $o] : (($true = (sP13 @ X189)) <=> ? [X193 : subst > term > term] : (! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) & ($true != (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id)) & ! [X197 : term] : (((X189 @ id @ X197 @ id) != $true) | ($true = (X189 @ id @ (X193 @ id @ X197) @ id)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f28,plain,(
% 6.47/2.17    ! [X189 : subst > term > subst > $o] : (($true = (sP14 @ X189)) <=> ? [X191 : term,X192 : term] : (($true != (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id)) & ($true = (X189 @ id @ X192 @ id)) & ((X189 @ id @ X191 @ id) = $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f29,plain,(
% 6.47/2.17    ($true = sP15) <=> ! [X189 : subst > term > subst > $o,X190 : term] : (? [X198 : term] : (($true != (X189 @ id @ X198 @ id)) & ($true = (var @ (sub @ X198 @ id)))) | ? [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true != (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199)) & ($true = (X189 @ X201 @ X202 @ (comp @ X200 @ X199)))) | ($true = (X189 @ id @ X190 @ id)) | ($true = (sP14 @ X189)) | ($true = (sP13 @ X189)) | ? [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) != $true) & ($true = (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f30,plain,(
% 6.47/2.17    ! [X524 : subst > term > subst > $o] : (((sP16 @ X524) = $true) <=> ? [X533 : subst > term > term] : (! [X534 : term] : (($true = (X524 @ id @ (X533 @ id @ X534) @ id)) | ($true != (X524 @ id @ X534 @ id))) & ($true != (X524 @ id @ (lam @ (X533 @ sh @ one)) @ id)) & ! [X535 : subst,X536 : term,X537 : subst] : ((sub @ (X533 @ X537 @ X536) @ X535) = (X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f31,plain,(
% 6.47/2.17    ($true = sP17) <=> ? [X515 : term,X516 : subst > term > subst > $o] : (! [X522 : term] : (($true = (X516 @ id @ (sub @ X515 @ (push @ X522 @ id)) @ id)) | ($true != (X516 @ id @ X522 @ id))) & ((X516 @ id @ (lam @ (sub @ X515 @ (push @ one @ sh))) @ id) != $true) & ! [X517 : subst > term > term] : (((X516 @ id @ (lam @ (X517 @ sh @ one)) @ id) = $true) | ? [X518 : term] : (($true = (X516 @ id @ X518 @ id)) & ((X516 @ id @ (X517 @ id @ X518) @ id) != $true)) | ? [X519 : subst,X520 : term,X521 : subst] : ((X517 @ (comp @ X521 @ X519) @ (sub @ X520 @ X519)) != (sub @ (X517 @ X521 @ X520) @ X519))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f32,plain,(
% 6.47/2.17    ($true = sP18) <=> (! [X523 : term,X524 : subst > term > subst > $o] : (? [X538 : term] : (($true != (X524 @ id @ (sub @ X523 @ (push @ X538 @ id)) @ id)) & ($true = (X524 @ id @ X538 @ id))) | ((X524 @ id @ (lam @ X523) @ id) = $true) | ? [X525 : term,X526 : subst,X527 : subst,X528 : subst] : (((X524 @ X527 @ X525 @ (comp @ X526 @ X528)) != $true) & ($true = (X524 @ (comp @ X527 @ X526) @ (sub @ X525 @ X526) @ X528))) | ? [X529 : term,X530 : subst,X531 : subst,X532 : subst] : (($true = (X524 @ X532 @ X529 @ (comp @ X530 @ X531))) & ($true != (X524 @ (comp @ X532 @ X530) @ (sub @ X529 @ X530) @ X531))) | ((sP16 @ X524) = $true)) | ? [X514 : term] : ((sub @ X514 @ id) != X514) | ($true = sP17))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f33,plain,(
% 6.47/2.17    ! [X459 : term > $o] : (($true = (sP19 @ X459)) <=> ? [X462 : term,X463 : term] : (($true = (X459 @ X463)) & ((X459 @ X462) = $true) & ($true != (X459 @ (ap @ X463 @ X462)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f34,plain,(
% 6.47/2.17    ($true = sP20) <=> ! [X458 : term,X459 : term > $o] : (($true = (sP19 @ X459)) | ((X459 @ X458) = $true) | ? [X460 : term] : (! [X461 : term] : (($true != (X459 @ X461)) | ($true = (X459 @ (sub @ X460 @ (push @ X461 @ id))))) & ((X459 @ (lam @ X460)) != $true)) | ? [X464 : term] : (((X459 @ X464) != $true) & ($true = (var @ X464))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f35,plain,(
% 6.47/2.17    ($true = sP21) <=> ! [X375 : subst > term > subst > $o,X376 : term] : (($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) | ? [X382 : term] : (($true = (X375 @ id @ X382 @ id)) & ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) != $true)) | ? [X377 : subst > term > term] : (! [X378 : term] : (($true != (X375 @ id @ X378 @ id)) | ((X375 @ id @ (X377 @ id @ X378) @ id) = $true)) & ! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381)) & ($true != (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f36,plain,(
% 6.47/2.17    ($true = sP22) <=> (? [X268 : term] : ! [X269 : subst > term > term] : ? [X270 : subst,X271 : term] : ((sub @ X268 @ (push @ X271 @ X270)) != (X269 @ X270 @ X271)) | ! [X273 : term,X274 : term > $o,X275 : subst > term > subst > $o] : (? [X276 : term] : ((X274 @ X276) != (X275 @ id @ X276 @ id)) | ? [X277 : term] : (($true != (X274 @ (sub @ X273 @ (push @ X277 @ id)))) & ((X274 @ X277) = $true)) | ((X274 @ (lam @ X273)) = $true) | ? [X278 : subst > term > term] : (($true != (X275 @ id @ (lam @ (X278 @ sh @ one)) @ id)) & ! [X282 : term] : (((X275 @ id @ (X278 @ id @ X282) @ id) = $true) | ((X275 @ id @ X282 @ id) != $true)) & ! [X279 : subst,X280 : subst,X281 : term] : ((X278 @ (comp @ X280 @ X279) @ (sub @ X281 @ X279)) = (sub @ (X278 @ X280 @ X281) @ X279)))) | ? [X272 : term] : ((sub @ X272 @ id) != X272))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f37,plain,(
% 6.47/2.17    ! [X66 : term > $o] : (((sP23 @ X66) = $true) <=> ! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ((X66 @ X68) != $true) | ((X66 @ X69) != $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f38,plain,(
% 6.47/2.17    ! [X74 : term > $o] : (($true = (sP24 @ X74)) <=> ? [X78 : term,X79 : term] : (($true = (X74 @ X78)) & ((X74 @ (ap @ X79 @ X78)) != $true) & ($true = (X74 @ X79))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f39,plain,(
% 6.47/2.17    (sP25 = $true) <=> ! [X73 : term,X74 : term > $o] : (($true = (X74 @ X73)) | ? [X75 : term] : (($true != (X74 @ (lam @ X75))) & ! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ($true != (X74 @ X76)))) | ($true = (sP24 @ X74)) | ? [X77 : term] : (($true = (var @ X77)) & ($true != (X74 @ X77))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f40,plain,(
% 6.47/2.17    ($true = sP26) <=> (? [X64 : term] : ((sub @ X64 @ id) != X64) | (sP25 = $true) | ? [X65 : subst,X66 : term > $o,X67 : term] : (($true != (X66 @ (sub @ X67 @ X65))) & ((sP23 @ X66) = $true) & ! [X72 : term] : (((var @ X72) != $true) | ($true = (X66 @ (sub @ X72 @ X65)))) & ! [X70 : term] : (($true = (X66 @ (lam @ X70))) | ? [X71 : term] : (($true = (X66 @ X71)) & ($true != (X66 @ (sub @ X70 @ (push @ X71 @ id))))))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f41,plain,(
% 6.47/2.17    ! [X425 : subst > term > subst > $o] : (($true = (sP27 @ X425)) <=> ? [X432 : term,X433 : term] : (((X425 @ id @ X433 @ id) = $true) & ($true != (X425 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id)) & ($true = (X425 @ id @ X432 @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f42,plain,(
% 6.47/2.17    ! [X425 : subst > term > subst > $o] : (($true = (sP28 @ X425)) <=> ? [X434 : subst > term > term] : (($true != (X425 @ id @ (lam @ (X434 @ sh @ one)) @ id)) & ! [X438 : term] : (($true != (X425 @ id @ X438 @ id)) | ($true = (X425 @ id @ (X434 @ id @ X438) @ id))) & ! [X435 : subst,X436 : term,X437 : subst] : ((X434 @ (comp @ X437 @ X435) @ (sub @ X436 @ X435)) = (sub @ (X434 @ X437 @ X436) @ X435))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f43,plain,(
% 6.47/2.17    ! [X410 : subst > term > subst > $o] : (($true = (sP29 @ X410)) <=> ! [X411 : subst > term > term] : (? [X415 : term] : (((X410 @ id @ X415 @ id) = $true) & ((X410 @ id @ (X411 @ id @ X415) @ id) != $true)) | ($true = (X410 @ id @ (lam @ (X411 @ sh @ one)) @ id)) | ? [X412 : subst,X413 : subst,X414 : term] : ((X411 @ (comp @ X412 @ X413) @ (sub @ X414 @ X413)) != (sub @ (X411 @ X412 @ X414) @ X413))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f44,plain,(
% 6.47/2.17    ! [X390 : term > $o] : (((sP30 @ X390) = $true) <=> ! [X393 : term,X394 : term] : (($true != (X390 @ X393)) | ($true = (X390 @ (ap @ X393 @ X394))) | ((X390 @ X394) != $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f45,plain,(
% 6.47/2.17    ! [X398 : subst > term > subst > $o] : (($true = (sP31 @ X398)) <=> ! [X403 : term,X404 : term] : (((X398 @ id @ X404 @ id) != $true) | ($true = (X398 @ id @ (ap @ (sub @ X404 @ id) @ X403) @ id)) | ((X398 @ id @ X403 @ id) != $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f46,plain,(
% 6.47/2.17    ($true = sP32) <=> ? [X409 : term,X410 : subst > term > subst > $o] : (! [X421 : subst,X422 : subst,X423 : subst,X424 : term] : (((X410 @ (comp @ X422 @ X421) @ (sub @ X424 @ X421) @ X423) != $true) | ((X410 @ X422 @ X424 @ (comp @ X421 @ X423)) = $true)) & ! [X417 : subst,X418 : subst,X419 : subst,X420 : term] : (($true != (X410 @ X417 @ X420 @ (comp @ X418 @ X419))) | ($true = (X410 @ (comp @ X417 @ X418) @ (sub @ X420 @ X418) @ X419))) & ! [X416 : term] : (($true != (X410 @ id @ X416 @ id)) | ($true = (X410 @ id @ (sub @ X409 @ (push @ X416 @ id)) @ id))) & ($true != (X410 @ id @ (lam @ X409) @ id)) & ($true = (sP29 @ X410)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f47,plain,(
% 6.47/2.17    ($true = sP33) <=> ! [X425 : subst > term > subst > $o,X426 : term] : (? [X431 : term] : (($true = (var @ (sub @ X431 @ id))) & ((X425 @ id @ X431 @ id) != $true)) | ($true = (sP28 @ X425)) | ? [X439 : subst,X440 : term,X441 : subst,X442 : subst] : (($true != (X425 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442) @ X439)) & ((X425 @ X441 @ X440 @ (comp @ X442 @ X439)) = $true)) | ($true = (sP27 @ X425)) | ($true = (X425 @ id @ X426 @ id)) | ? [X427 : subst,X428 : subst,X429 : subst,X430 : term] : (((X425 @ (comp @ X429 @ X428) @ (sub @ X430 @ X428) @ X427) = $true) & ($true != (X425 @ X429 @ X430 @ (comp @ X428 @ X427)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f48,plain,(
% 6.47/2.17    ($true = sP34) <=> ? [X389 : term,X390 : term > $o] : (($true != (X390 @ X389)) & ! [X391 : term] : (((X390 @ (lam @ X391)) = $true) | ? [X392 : term] : (((X390 @ X392) = $true) & ($true != (X390 @ (sub @ X391 @ (push @ X392 @ id)))))) & ((sP30 @ X390) = $true) & ! [X395 : term] : (($true != (var @ X395)) | ($true = (X390 @ X395))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f49,plain,(
% 6.47/2.17    (sP35 = $true) <=> (? [X396 : term,X397 : term,X398 : subst > term > subst > $o] : (($true = (sP31 @ X398)) & ($true != (X398 @ id @ (ap @ X396 @ X397) @ id)) & ($true = (X398 @ id @ X397 @ id)) & ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X398 @ X401 @ X402 @ (comp @ X400 @ X399))) | ($true = (X398 @ (comp @ X401 @ X400) @ (sub @ X402 @ X400) @ X399))) & ! [X405 : term,X406 : subst,X407 : subst,X408 : subst] : (($true != (X398 @ (comp @ X407 @ X408) @ (sub @ X405 @ X408) @ X406)) | ($true = (X398 @ X407 @ X405 @ (comp @ X408 @ X406)))) & ((X398 @ id @ X396 @ id) = $true)) | ($true = sP34) | ($true = sP32) | ($true = sP33))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f50,plain,(
% 6.47/2.17    ($true = sP36) <=> ! [X450 : term,X451 : subst > term > subst > $o] : (($true = (X451 @ id @ (lam @ X450) @ id)) | ? [X452 : term] : (((X451 @ id @ (sub @ X450 @ (push @ X452 @ id)) @ id) != $true) & ($true = (X451 @ id @ X452 @ id))) | ? [X453 : subst > term > term] : (! [X455 : subst,X456 : subst,X457 : term] : ((X453 @ (comp @ X455 @ X456) @ (sub @ X457 @ X456)) = (sub @ (X453 @ X455 @ X457) @ X456)) & ($true != (X451 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X454 : term] : (($true != (X451 @ id @ X454 @ id)) | ($true = (X451 @ id @ (X453 @ id @ X454) @ id)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f51,plain,(
% 6.47/2.17    ! [X235 : subst > term > subst > $o] : (($true = (sP37 @ X235)) <=> ? [X241 : term,X242 : term] : (($true != (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id)) & ((X235 @ id @ X241 @ id) = $true) & ($true = (X235 @ id @ X242 @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f52,plain,(
% 6.47/2.17    ($true = sP38) <=> ! [X234 : term,X235 : subst > term > subst > $o,X236 : term] : (? [X243 : term,X244 : subst,X245 : subst,X246 : subst] : (($true != (X235 @ X244 @ X243 @ (comp @ X246 @ X245))) & ($true = (X235 @ (comp @ X244 @ X246) @ (sub @ X243 @ X246) @ X245))) | ? [X237 : subst,X238 : subst,X239 : term,X240 : subst] : (($true != (X235 @ (comp @ X237 @ X240) @ (sub @ X239 @ X240) @ X238)) & ($true = (X235 @ X237 @ X239 @ (comp @ X240 @ X238)))) | ($true = (sP37 @ X235)) | ($true = (X235 @ id @ (ap @ X234 @ X236) @ id)) | ($true != (X235 @ id @ X236 @ id)) | ($true != (X235 @ id @ X234 @ id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f53,plain,(
% 6.47/2.17    ! [X248 : subst > term > subst > $o] : (((sP39 @ X248) = $true) <=> ? [X249 : subst > term > term] : (((X248 @ id @ (lam @ (X249 @ sh @ one)) @ id) != $true) & ! [X250 : term] : (($true = (X248 @ id @ (X249 @ id @ X250) @ id)) | ($true != (X248 @ id @ X250 @ id))) & ! [X251 : subst,X252 : term,X253 : subst] : ((sub @ (X249 @ X253 @ X252) @ X251) = (X249 @ (comp @ X253 @ X251) @ (sub @ X252 @ X251)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f54,plain,(
% 6.47/2.17    ! [X179 : term > $o] : (($true = (sP40 @ X179)) <=> ? [X182 : term,X183 : term] : (($true = (X179 @ X183)) & ($true = (X179 @ X182)) & ($true != (X179 @ (ap @ X183 @ X182)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f55,plain,(
% 6.47/2.17    ! [X173 : term > $o] : (($true = (sP41 @ X173)) <=> ! [X176 : term,X177 : term] : (($true != (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true) | ($true != (X173 @ X176))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f56,plain,(
% 6.47/2.17    ($true = sP42) <=> ! [X178 : subst,X179 : term > $o,X180 : term] : (($true = (sP40 @ X179)) | ? [X184 : term] : (! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ($true != (X179 @ X185))) & ($true != (X179 @ (lam @ X184)))) | ($true = (X179 @ (sub @ X180 @ X178))) | ? [X181 : term] : (($true != (X179 @ (sub @ X181 @ X178))) & ($true = (var @ X181))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f57,plain,(
% 6.47/2.17    ($true = sP43) <=> (? [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) != X169) | ? [X171 : subst] : ((comp @ X171 @ id) != X171) | ? [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) != X168) | ? [X172 : term,X173 : term > $o] : (! [X175 : term] : (($true != (var @ X175)) | ((X173 @ X175) = $true)) & ! [X174 : term] : (((X173 @ X174) != $true) | ($true = (X173 @ (lam @ X174)))) & ($true != (X173 @ X172)) & ($true = (sP41 @ X173))) | ($true = sP42))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f58,plain,(
% 6.47/2.17    ! [X41 : subst > term > subst > $o] : (($true = (sP44 @ X41)) <=> ? [X45 : term,X46 : term] : (($true = (X41 @ id @ X46 @ id)) & ($true != (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id)) & ($true = (X41 @ id @ X45 @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f59,plain,(
% 6.47/2.17    ($true = sP45) <=> ! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (? [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true = (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55)) & ($true != (X41 @ X53 @ X54 @ (comp @ X52 @ X55)))) | ? [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true != (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) & ((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) = $true)) | ($true != (X43 @ X42)) | ($true = (X43 @ (ap @ X42 @ X44))) | ($true != (X43 @ X44)) | ($true = (sP44 @ X41)) | ? [X47 : term] : ((X43 @ X47) != (X41 @ id @ X47 @ id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f60,plain,(
% 6.47/2.17    ! [X468 : term > $o] : (($true = (sP46 @ X468)) <=> ! [X472 : term,X473 : term] : (((X468 @ X472) != $true) | ($true = (X468 @ (ap @ X472 @ X473))) | ($true != (X468 @ X473))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f61,plain,(
% 6.47/2.17    ! [X486 : subst > term > subst > $o] : (($true = (sP47 @ X486)) <=> ? [X492 : subst > term > term] : (! [X496 : term] : (($true != (X486 @ id @ X496 @ id)) | ((X486 @ id @ (X492 @ id @ X496) @ id) = $true)) & ($true != (X486 @ id @ (lam @ (X492 @ sh @ one)) @ id)) & ! [X493 : subst,X494 : subst,X495 : term] : ((X492 @ (comp @ X493 @ X494) @ (sub @ X495 @ X494)) = (sub @ (X492 @ X493 @ X495) @ X494))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f62,plain,(
% 6.47/2.17    ! [X486 : subst > term > subst > $o] : (($true = (sP48 @ X486)) <=> ? [X501 : term,X502 : term] : (($true = (X486 @ id @ X502 @ id)) & ($true = (X486 @ id @ X501 @ id)) & ($true != (X486 @ id @ (ap @ (sub @ X502 @ id) @ X501) @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f63,plain,(
% 6.47/2.17    (sP49 = $true) <=> ? [X476 : term,X477 : term > $o,X478 : subst > term > subst > $o] : (! [X479 : term] : (($true != (X477 @ X479)) | ($true = (X477 @ (sub @ X476 @ (push @ X479 @ id))))) & ! [X480 : subst > term > term] : (($true = (X478 @ id @ (lam @ (X480 @ sh @ one)) @ id)) | ? [X484 : term] : (((X478 @ id @ (X480 @ id @ X484) @ id) != $true) & ($true = (X478 @ id @ X484 @ id))) | ? [X481 : subst,X482 : subst,X483 : term] : ((sub @ (X480 @ X481 @ X483) @ X482) != (X480 @ (comp @ X481 @ X482) @ (sub @ X483 @ X482)))) & ($true != (X477 @ (lam @ X476))) & ! [X485 : term] : ((X478 @ id @ X485 @ id) = (X477 @ X485)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f64,plain,(
% 6.47/2.17    ($true = sP50) <=> ! [X486 : subst > term > subst > $o,X487 : term] : (($true = (X486 @ id @ X487 @ id)) | ($true = (sP48 @ X486)) | ($true = (sP47 @ X486)) | ? [X503 : term] : (($true != (X486 @ id @ X503 @ id)) & ((var @ (sub @ X503 @ id)) = $true)) | ? [X497 : subst,X498 : term,X499 : subst,X500 : subst] : (($true = (X486 @ (comp @ X500 @ X497) @ (sub @ X498 @ X497) @ X499)) & ($true != (X486 @ X500 @ X498 @ (comp @ X497 @ X499)))) | ? [X488 : subst,X489 : term,X490 : subst,X491 : subst] : (($true != (X486 @ (comp @ X490 @ X491) @ (sub @ X489 @ X491) @ X488)) & ($true = (X486 @ X490 @ X489 @ (comp @ X491 @ X488)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f65,plain,(
% 6.47/2.17    (sP51 = $true) <=> (($true = sP50) | ? [X465 : subst > term > subst > $o] : ! [X466 : term > $o] : ? [X467 : term] : ((X465 @ id @ X467 @ id) != (X466 @ X467)) | ? [X468 : term > $o,X469 : term] : (((X468 @ X469) != $true) & ! [X474 : term] : (((X468 @ X474) = $true) | ($true != (var @ X474))) & ($true = (sP46 @ X468)) & ! [X470 : term] : (? [X471 : term] : (((X468 @ (sub @ X470 @ (push @ X471 @ id))) != $true) & ((X468 @ X471) = $true)) | ($true = (X468 @ (lam @ X470))))) | ? [X475 : term] : ((sub @ X475 @ id) != X475) | (sP49 = $true))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f66,plain,(
% 6.47/2.17    ($true = sP52) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (? [X115 : subst > term > term] : (! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) & ($true != (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id)) & ! [X116 : term] : (($true != (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id)))) | ((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ? [X120 : term] : (($true = (X113 @ id @ X120 @ id)) & ($true != (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f67,plain,(
% 6.47/2.17    ($true = sP53) <=> ? [X125 : term,X126 : subst > term > subst > $o] : (! [X127 : term] : (($true != (X126 @ id @ X127 @ id)) | ($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id))) & ($true != (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) & ! [X128 : subst > term > term] : (? [X132 : term] : (($true = (X126 @ id @ X132 @ id)) & ($true != (X126 @ id @ (X128 @ id @ X132) @ id))) | ? [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) != (sub @ (X128 @ X129 @ X131) @ X130)) | ($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f68,plain,(
% 6.47/2.17    (sP54 = $true) <=> (! [X133 : subst > term > subst > $o,X134 : term] : (((X133 @ id @ (lam @ X134) @ id) = $true) | ? [X140 : term] : (($true != (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id)) & ($true = (X133 @ id @ X140 @ id))) | ? [X135 : subst > term > term] : (! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) & ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) != $true) & ! [X136 : term] : (($true = (X133 @ id @ (X135 @ id @ X136) @ id)) | ($true != (X133 @ id @ X136 @ id))))) | ? [X124 : term] : ((sub @ X124 @ id) != X124) | ($true = sP53))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f69,plain,(
% 6.47/2.17    ! [X5 : term > $o] : (($true = (sP55 @ X5)) <=> ? [X8 : term,X9 : term] : (($true != (X5 @ (ap @ X9 @ X8))) & ($true = (X5 @ X8)) & ((X5 @ X9) = $true)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f70,plain,(
% 6.47/2.17    (sP56 = $true) <=> (? [X220 : subst,X221 : term] : ((comp @ sh @ (push @ X221 @ X220)) != X220) | ? [X222 : term,X223 : term] : ((X222 != X223) & ((lam @ X223) = (lam @ X222))) | ! [X224 : subst > term > term,X225 : subst > term > term,X226 : term,X227 : subst] : (? [X228 : subst,X229 : term,X230 : subst] : ((X224 @ (comp @ X228 @ X230) @ (sub @ X229 @ X230)) != (sub @ (X224 @ X228 @ X229) @ X230)) | ? [X231 : subst,X232 : subst,X233 : term] : ((X225 @ (comp @ X232 @ X231) @ (sub @ X233 @ X231)) != (sub @ (X225 @ X232 @ X233) @ X231)) | ((X225 @ X227 @ X226) = (X224 @ X227 @ X226)) | ((lam @ (X225 @ sh @ one)) != (lam @ (X224 @ sh @ one)))) | ? [X218 : subst,X219 : term] : ((sub @ one @ (push @ X219 @ X218)) != X219))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f71,plain,(
% 6.47/2.17    ! [X309 : subst > term > subst > $o] : (($true = (sP57 @ X309)) <=> ? [X316 : subst > term > term] : (($true != (X309 @ id @ (lam @ (X316 @ sh @ one)) @ id)) & ! [X317 : term] : (((X309 @ id @ X317 @ id) != $true) | ($true = (X309 @ id @ (X316 @ id @ X317) @ id))) & ! [X318 : term,X319 : subst,X320 : subst] : ((sub @ (X316 @ X320 @ X318) @ X319) = (X316 @ (comp @ X320 @ X319) @ (sub @ X318 @ X319)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f72,plain,(
% 6.47/2.17    (sP58 = $true) <=> ! [X309 : subst > term > subst > $o,X310 : term] : (($true = (X309 @ id @ (lam @ X310) @ id)) | ? [X311 : term] : (($true != (X309 @ id @ (sub @ X310 @ (push @ X311 @ id)) @ id)) & ((X309 @ id @ X311 @ id) = $true)) | ? [X312 : term,X313 : subst,X314 : subst,X315 : subst] : (($true != (X309 @ (comp @ X315 @ X313) @ (sub @ X312 @ X313) @ X314)) & ($true = (X309 @ X315 @ X312 @ (comp @ X313 @ X314)))) | ($true = (sP57 @ X309)) | ? [X321 : subst,X322 : term,X323 : subst,X324 : subst] : (($true = (X309 @ (comp @ X324 @ X321) @ (sub @ X322 @ X321) @ X323)) & ($true != (X309 @ X324 @ X322 @ (comp @ X321 @ X323)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.47/2.17  thf(f13,plain,(
% 6.47/2.17    (pushprop_lem1_gthm = $true) & (! [X309 : subst > term > subst > $o,X310 : term] : (($true = (X309 @ id @ (lam @ X310) @ id)) | ? [X311 : term] : (($true != (X309 @ id @ (sub @ X310 @ (push @ X311 @ id)) @ id)) & ((X309 @ id @ X311 @ id) = $true)) | ? [X312 : term,X313 : subst,X314 : subst,X315 : subst] : (($true != (X309 @ (comp @ X315 @ X313) @ (sub @ X312 @ X313) @ X314)) & ($true = (X309 @ X315 @ X312 @ (comp @ X313 @ X314)))) | ? [X316 : subst > term > term] : (($true != (X309 @ id @ (lam @ (X316 @ sh @ one)) @ id)) & ! [X317 : term] : (((X309 @ id @ X317 @ id) != $true) | ($true = (X309 @ id @ (X316 @ id @ X317) @ id))) & ! [X318 : term,X319 : subst,X320 : subst] : ((sub @ (X316 @ X320 @ X318) @ X319) = (X316 @ (comp @ X320 @ X319) @ (sub @ X318 @ X319)))) | ? [X321 : subst,X322 : term,X323 : subst,X324 : subst] : (($true = (X309 @ (comp @ X324 @ X321) @ (sub @ X322 @ X321) @ X323)) & ($true != (X309 @ X324 @ X322 @ (comp @ X321 @ X323))))) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3a_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (axapp = $true) & (pushprop_lem1v2_gthm = $true) & (one = (d2term @ d_one)) & ! [X56 : d_subst,X57 : d_subst] : ((X56 = X57) | ((d2subst @ X56) != (d2subst @ X57))) & (pushprop_lem3v2_lthm = $true) & ((? [X220 : subst,X221 : term] : ((comp @ sh @ (push @ X221 @ X220)) != X220) | ? [X222 : term,X223 : term] : ((X222 != X223) & ((lam @ X223) = (lam @ X222))) | ! [X224 : subst > term > term,X225 : subst > term > term,X226 : term,X227 : subst] : (? [X228 : subst,X229 : term,X230 : subst] : ((X224 @ (comp @ X228 @ X230) @ (sub @ X229 @ X230)) != (sub @ (X224 @ X228 @ X229) @ X230)) | ? [X231 : subst,X232 : subst,X233 : term] : ((X225 @ (comp @ X232 @ X231) @ (sub @ X233 @ X231)) != (sub @ (X225 @ X232 @ X233) @ X231)) | ((X225 @ X227 @ X226) = (X224 @ X227 @ X226)) | ((lam @ (X225 @ sh @ one)) != (lam @ (X224 @ sh @ one)))) | ? [X218 : subst,X219 : term] : ((sub @ one @ (push @ X219 @ X218)) != X219)) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & (! [X5 : term > $o,X6 : term] : (? [X8 : term,X9 : term] : (($true != (X5 @ (ap @ X9 @ X8))) & ($true = (X5 @ X8)) & ((X5 @ X9) = $true)) | ? [X7 : term] : (($true = (X5 @ X7)) & ((X5 @ (lam @ X7)) != $true)) | ($true = (X5 @ X6)) | ? [X10 : term] : (($true != (X5 @ X10)) & ($true = (var @ X10)))) <=> (induction = $true)) & (hoasinduction_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) <=> (axshiftcons = $true)) & ((substmonoid_lthm = $true) <=> (? [X61 : subst] : ((comp @ X61 @ id) != X61) | (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62)) | ? [X60 : subst] : ((comp @ id @ X60) != X60))) & ((var @ (d2term @ d_one)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X133 : subst > term > subst > $o,X134 : term] : (((X133 @ id @ (lam @ X134) @ id) = $true) | ? [X140 : term] : (($true != (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id)) & ($true = (X133 @ id @ X140 @ id))) | ? [X135 : subst > term > term] : (! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) & ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) != $true) & ! [X136 : term] : (($true = (X133 @ id @ (X135 @ id @ X136) @ id)) | ($true != (X133 @ id @ X136 @ id))))) | ? [X124 : term] : ((sub @ X124 @ id) != X124) | ? [X125 : term,X126 : subst > term > subst > $o] : (! [X127 : term] : (($true != (X126 @ id @ X127 @ id)) | ($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id))) & ($true != (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) & ! [X128 : subst > term > term] : (? [X132 : term] : (($true = (X126 @ id @ X132 @ id)) & ($true != (X126 @ id @ (X128 @ id @ X132) @ id))) | ? [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) != (sub @ (X128 @ X129 @ X131) @ X130)) | ($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id)))))) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (? [X115 : subst > term > term] : (! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) & ($true != (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id)) & ! [X116 : term] : (($true != (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id)))) | ((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ? [X120 : term] : (($true = (X113 @ id @ X120 @ id)) & ($true != (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id))))) & ((! [X486 : subst > term > subst > $o,X487 : term] : (($true = (X486 @ id @ X487 @ id)) | ? [X501 : term,X502 : term] : (($true = (X486 @ id @ X502 @ id)) & ($true = (X486 @ id @ X501 @ id)) & ($true != (X486 @ id @ (ap @ (sub @ X502 @ id) @ X501) @ id))) | ? [X492 : subst > term > term] : (! [X496 : term] : (($true != (X486 @ id @ X496 @ id)) | ((X486 @ id @ (X492 @ id @ X496) @ id) = $true)) & ($true != (X486 @ id @ (lam @ (X492 @ sh @ one)) @ id)) & ! [X493 : subst,X494 : subst,X495 : term] : ((X492 @ (comp @ X493 @ X494) @ (sub @ X495 @ X494)) = (sub @ (X492 @ X493 @ X495) @ X494))) | ? [X503 : term] : (($true != (X486 @ id @ X503 @ id)) & ((var @ (sub @ X503 @ id)) = $true)) | ? [X497 : subst,X498 : term,X499 : subst,X500 : subst] : (($true = (X486 @ (comp @ X500 @ X497) @ (sub @ X498 @ X497) @ X499)) & ($true != (X486 @ X500 @ X498 @ (comp @ X497 @ X499)))) | ? [X488 : subst,X489 : term,X490 : subst,X491 : subst] : (($true != (X486 @ (comp @ X490 @ X491) @ (sub @ X489 @ X491) @ X488)) & ($true = (X486 @ X490 @ X489 @ (comp @ X491 @ X488))))) | ? [X465 : subst > term > subst > $o] : ! [X466 : term > $o] : ? [X467 : term] : ((X465 @ id @ X467 @ id) != (X466 @ X467)) | ? [X468 : term > $o,X469 : term] : (((X468 @ X469) != $true) & ! [X474 : term] : (((X468 @ X474) = $true) | ($true != (var @ X474))) & ! [X472 : term,X473 : term] : (((X468 @ X472) != $true) | ($true = (X468 @ (ap @ X472 @ X473))) | ($true != (X468 @ X473))) & ! [X470 : term] : (? [X471 : term] : (((X468 @ (sub @ X470 @ (push @ X471 @ id))) != $true) & ((X468 @ X471) = $true)) | ($true = (X468 @ (lam @ X470))))) | ? [X475 : term] : ((sub @ X475 @ id) != X475) | ? [X476 : term,X477 : term > $o,X478 : subst > term > subst > $o] : (! [X479 : term] : (($true != (X477 @ X479)) | ($true = (X477 @ (sub @ X476 @ (push @ X479 @ id))))) & ! [X480 : subst > term > term] : (($true = (X478 @ id @ (lam @ (X480 @ sh @ one)) @ id)) | ? [X484 : term] : (((X478 @ id @ (X480 @ id @ X484) @ id) != $true) & ($true = (X478 @ id @ X484 @ id))) | ? [X481 : subst,X482 : subst,X483 : term] : ((sub @ (X480 @ X481 @ X483) @ X482) != (X480 @ (comp @ X481 @ X482) @ (sub @ X483 @ X482)))) & ($true != (X477 @ (lam @ X476))) & ! [X485 : term] : ((X478 @ id @ X485 @ id) = (X477 @ X485)))) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lem0_gthm = $true) & ((shinj = $true) <=> ! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449))) & ((hoasinduction_lem2v2 = $true) <=> ! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (? [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true = (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55)) & ($true != (X41 @ X53 @ X54 @ (comp @ X52 @ X55)))) | ? [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true != (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) & ((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) = $true)) | ($true != (X43 @ X42)) | ($true = (X43 @ (ap @ X42 @ X44))) | ($true != (X43 @ X44)) | ? [X45 : term,X46 : term] : (($true = (X41 @ id @ X46 @ id)) & ($true != (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id)) & ($true = (X41 @ id @ X45 @ id))) | ? [X47 : term] : ((X43 @ X47) != (X41 @ id @ X47 @ id)))) & ! [X513 : d_term] : (d_one = X513) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (induction2lem_gthm = $true) & ((? [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) != X169) | ? [X171 : subst] : ((comp @ X171 @ id) != X171) | ? [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) != X168) | ? [X172 : term,X173 : term > $o] : (! [X175 : term] : (($true != (var @ X175)) | ((X173 @ X175) = $true)) & ! [X174 : term] : (((X173 @ X174) != $true) | ($true = (X173 @ (lam @ X174)))) & ($true != (X173 @ X172)) & ! [X176 : term,X177 : term] : (($true != (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true) | ($true != (X173 @ X176)))) | ! [X178 : subst,X179 : term > $o,X180 : term] : (? [X182 : term,X183 : term] : (($true = (X179 @ X183)) & ($true = (X179 @ X182)) & ($true != (X179 @ (ap @ X183 @ X182)))) | ? [X184 : term] : (! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ($true != (X179 @ X185))) & ($true != (X179 @ (lam @ X184)))) | ($true = (X179 @ (sub @ X180 @ X178))) | ? [X181 : term] : (($true != (X179 @ (sub @ X181 @ X178))) & ($true = (var @ X181))))) <=> (induction2lem_lthm = $true)) & (! [X247 : term,X248 : subst > term > subst > $o] : (? [X254 : term,X255 : term] : (($true = (X248 @ id @ X255 @ id)) & ($true = (X248 @ id @ X254 @ id)) & ($true != (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)) | ? [X249 : subst > term > term] : (((X248 @ id @ (lam @ (X249 @ sh @ one)) @ id) != $true) & ! [X250 : term] : (($true = (X248 @ id @ (X249 @ id @ X250) @ id)) | ($true != (X248 @ id @ X250 @ id))) & ! [X251 : subst,X252 : term,X253 : subst] : ((sub @ (X249 @ X253 @ X252) @ X251) = (X249 @ (comp @ X253 @ X251) @ (sub @ X252 @ X251))))) <=> (hoasinduction_no_psi_cond = $true)) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true = (X110 @ one)) | ($true != (X109 @ X108)) | ? [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) != (X110 @ X112))) | ? [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) != X107))) & (! [X0 : term,X1 : term > $o,X2 : subst] : ? [X3 : term > $o] : ! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & (axclos = $true) & ! [X207 : d_term,X208 : d_term] : ((X207 = X208) | ((d2term @ X208) != (d2term @ X207))) & (termmset_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X234 : term,X235 : subst > term > subst > $o,X236 : term] : (? [X243 : term,X244 : subst,X245 : subst,X246 : subst] : (($true != (X235 @ X244 @ X243 @ (comp @ X246 @ X245))) & ($true = (X235 @ (comp @ X244 @ X246) @ (sub @ X243 @ X246) @ X245))) | ? [X237 : subst,X238 : subst,X239 : term,X240 : subst] : (($true != (X235 @ (comp @ X237 @ X240) @ (sub @ X239 @ X240) @ X238)) & ($true = (X235 @ X237 @ X239 @ (comp @ X240 @ X238)))) | ? [X241 : term,X242 : term] : (($true != (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id)) & ((X235 @ id @ X241 @ id) = $true) & ($true = (X235 @ id @ X242 @ id))) | ($true = (X235 @ id @ (ap @ X234 @ X236) @ id)) | ($true != (X235 @ id @ X236 @ id)) | ($true != (X235 @ id @ X234 @ id)))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ((d2subst @ d_id) = sh) & ((? [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 != X506) & ((ap @ X506 @ X508) = (ap @ X505 @ X507))) | ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511))) | ? [X504 : term] : ((sub @ X504 @ id) != X504)) <=> (hoasapinj1_lthm = $true)) & ((axidl = $true) <=> ! [X539 : subst] : ((comp @ id @ X539) = X539)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X283 : term] : ? [X284 : subst > term > term] : ((X284 @ sh @ one) = (sub @ X283 @ (push @ one @ sh)))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (! [X450 : term,X451 : subst > term > subst > $o] : (($true = (X451 @ id @ (lam @ X450) @ id)) | ? [X452 : term] : (((X451 @ id @ (sub @ X450 @ (push @ X452 @ id)) @ id) != $true) & ($true = (X451 @ id @ X452 @ id))) | ? [X453 : subst > term > term] : (! [X455 : subst,X456 : subst,X457 : term] : ((X453 @ (comp @ X455 @ X456) @ (sub @ X457 @ X456)) = (sub @ (X453 @ X455 @ X457) @ X456)) & ($true != (X451 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X454 : term] : (($true != (X451 @ id @ X454 @ id)) | ($true = (X451 @ id @ (X453 @ id @ X454) @ id))))) <=> (hoasinduction_lem3a = $true)) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) <=> (hoasapinj1 = $true)) & ((termmset_lthm = $true) <=> (! [X294 : term] : ((sub @ X294 @ id) = X294) | ? [X293 : term] : ((sub @ X293 @ id) != X293))) & (ulamvarsh = $true) & ((axidr = $true) <=> ! [X374 : subst] : ((comp @ X374 @ id) = X374)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X141 : term] : ? [X142 : subst > term > term] : ((X142 @ sh @ one) = (sub @ X141 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true != (X27 @ X28)) | ? [X31 : term] : ((X29 @ X31) != (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one)))) & (axvarshift = $true) & (hoasinduction_lem1_gthm = $true) & (substmonoid_gthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axassoc = $true) & ((hoasinduction_lthm = $true) <=> (? [X396 : term,X397 : term,X398 : subst > term > subst > $o] : (! [X403 : term,X404 : term] : (((X398 @ id @ X404 @ id) != $true) | ($true = (X398 @ id @ (ap @ (sub @ X404 @ id) @ X403) @ id)) | ((X398 @ id @ X403 @ id) != $true)) & ($true != (X398 @ id @ (ap @ X396 @ X397) @ id)) & ($true = (X398 @ id @ X397 @ id)) & ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X398 @ X401 @ X402 @ (comp @ X400 @ X399))) | ($true = (X398 @ (comp @ X401 @ X400) @ (sub @ X402 @ X400) @ X399))) & ! [X405 : term,X406 : subst,X407 : subst,X408 : subst] : (($true != (X398 @ (comp @ X407 @ X408) @ (sub @ X405 @ X408) @ X406)) | ($true = (X398 @ X407 @ X405 @ (comp @ X408 @ X406)))) & ((X398 @ id @ X396 @ id) = $true)) | ? [X389 : term,X390 : term > $o] : (($true != (X390 @ X389)) & ! [X391 : term] : (((X390 @ (lam @ X391)) = $true) | ? [X392 : term] : (((X390 @ X392) = $true) & ($true != (X390 @ (sub @ X391 @ (push @ X392 @ id)))))) & ! [X393 : term,X394 : term] : (($true != (X390 @ X393)) | ($true = (X390 @ (ap @ X393 @ X394))) | ((X390 @ X394) != $true)) & ! [X395 : term] : (($true != (var @ X395)) | ($true = (X390 @ X395)))) | ? [X409 : term,X410 : subst > term > subst > $o] : (! [X421 : subst,X422 : subst,X423 : subst,X424 : term] : (((X410 @ (comp @ X422 @ X421) @ (sub @ X424 @ X421) @ X423) != $true) | ((X410 @ X422 @ X424 @ (comp @ X421 @ X423)) = $true)) & ! [X417 : subst,X418 : subst,X419 : subst,X420 : term] : (($true != (X410 @ X417 @ X420 @ (comp @ X418 @ X419))) | ($true = (X410 @ (comp @ X417 @ X418) @ (sub @ X420 @ X418) @ X419))) & ! [X416 : term] : (($true != (X410 @ id @ X416 @ id)) | ($true = (X410 @ id @ (sub @ X409 @ (push @ X416 @ id)) @ id))) & ($true != (X410 @ id @ (lam @ X409) @ id)) & ! [X411 : subst > term > term] : (? [X415 : term] : (((X410 @ id @ X415 @ id) = $true) & ((X410 @ id @ (X411 @ id @ X415) @ id) != $true)) | ($true = (X410 @ id @ (lam @ (X411 @ sh @ one)) @ id)) | ? [X412 : subst,X413 : subst,X414 : term] : ((X411 @ (comp @ X412 @ X413) @ (sub @ X414 @ X413)) != (sub @ (X411 @ X412 @ X414) @ X413)))) | ! [X425 : subst > term > subst > $o,X426 : term] : (? [X431 : term] : (($true = (var @ (sub @ X431 @ id))) & ((X425 @ id @ X431 @ id) != $true)) | ? [X434 : subst > term > term] : (($true != (X425 @ id @ (lam @ (X434 @ sh @ one)) @ id)) & ! [X438 : term] : (($true != (X425 @ id @ X438 @ id)) | ($true = (X425 @ id @ (X434 @ id @ X438) @ id))) & ! [X435 : subst,X436 : term,X437 : subst] : ((X434 @ (comp @ X437 @ X435) @ (sub @ X436 @ X435)) = (sub @ (X434 @ X437 @ X436) @ X435))) | ? [X439 : subst,X440 : term,X441 : subst,X442 : subst] : (($true != (X425 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442) @ X439)) & ((X425 @ X441 @ X440 @ (comp @ X442 @ X439)) = $true)) | ? [X432 : term,X433 : term] : (((X425 @ id @ X433 @ id) = $true) & ($true != (X425 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id)) & ($true = (X425 @ id @ X432 @ id))) | ($true = (X425 @ id @ X426 @ id)) | ? [X427 : subst,X428 : subst,X429 : subst,X430 : term] : (((X425 @ (comp @ X429 @ X428) @ (sub @ X430 @ X428) @ X427) = $true) & ($true != (X425 @ X429 @ X430 @ (comp @ X428 @ X427))))))) & (pushprop_lem3v2 = $true) & ((? [X64 : term] : ((sub @ X64 @ id) != X64) | ! [X73 : term,X74 : term > $o] : (($true = (X74 @ X73)) | ? [X75 : term] : (($true != (X74 @ (lam @ X75))) & ! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ($true != (X74 @ X76)))) | ? [X78 : term,X79 : term] : (($true = (X74 @ X78)) & ((X74 @ (ap @ X79 @ X78)) != $true) & ($true = (X74 @ X79))) | ? [X77 : term] : (($true = (var @ X77)) & ($true != (X74 @ X77)))) | ? [X65 : subst,X66 : term > $o,X67 : term] : (($true != (X66 @ (sub @ X67 @ X65))) & ! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ((X66 @ X68) != $true) | ((X66 @ X69) != $true)) & ! [X72 : term] : (((var @ X72) != $true) | ($true = (X66 @ (sub @ X72 @ X65)))) & ! [X70 : term] : (($true = (X66 @ (lam @ X70))) | ? [X71 : term] : (($true = (X66 @ X71)) & ($true != (X66 @ (sub @ X70 @ (push @ X71 @ id)))))))) <=> (induction2_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((substmonoid = $true) <=> (! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209))) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) <=> (axscons = $true)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((laminj = $true) <=> ! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308))) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X443 : subst,X444 : term > $o,X445 : term] : ? [X446 : term > $o] : ! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443)))) <=> (pushprop_lem0 = $true)) & (hoasapinj1_gthm = $true) & (pushprop_gthm = $true) & (hoasapnotvar_gthm = $true) & (axabs = $true) & ((? [X268 : term] : ! [X269 : subst > term > term] : ? [X270 : subst,X271 : term] : ((sub @ X268 @ (push @ X271 @ X270)) != (X269 @ X270 @ X271)) | ! [X273 : term,X274 : term > $o,X275 : subst > term > subst > $o] : (? [X276 : term] : ((X274 @ X276) != (X275 @ id @ X276 @ id)) | ? [X277 : term] : (($true != (X274 @ (sub @ X273 @ (push @ X277 @ id)))) & ((X274 @ X277) = $true)) | ((X274 @ (lam @ X273)) = $true) | ? [X278 : subst > term > term] : (($true != (X275 @ id @ (lam @ (X278 @ sh @ one)) @ id)) & ! [X282 : term] : (((X275 @ id @ (X278 @ id @ X282) @ id) = $true) | ((X275 @ id @ X282 @ id) != $true)) & ! [X279 : subst,X280 : subst,X281 : term] : ((X278 @ (comp @ X280 @ X279) @ (sub @ X281 @ X279)) = (sub @ (X278 @ X280 @ X281) @ X279)))) | ? [X272 : term] : ((sub @ X272 @ id) != X272)) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (? [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) != (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) <=> (hoaslamnotap = $true)) & (axmap = $true) & (! [X186 : subst > term > subst > $o] : ? [X187 : term > $o] : ! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188)) <=> (hoasinduction_lem0_lthm = $true)) & (hoaslamnotvar = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3aa = $true) <=> ! [X375 : subst > term > subst > $o,X376 : term] : (($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) | ? [X382 : term] : (($true = (X375 @ id @ X382 @ id)) & ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) != $true)) | ? [X377 : subst > term > term] : (! [X378 : term] : (($true != (X375 @ id @ X378 @ id)) | ((X375 @ id @ (X377 @ id @ X378) @ id) = $true)) & ! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381)) & ($true != (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id))))) & (pushprop_lem2v2_lthm = $true) & (lamnotvar = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & ((? [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) != X34) | ? [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) != X32) | ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36)))) <=> (pushprop_lem1_lthm = $true)) & ((induction2 = $true) <=> ! [X458 : term,X459 : term > $o] : (? [X462 : term,X463 : term] : (($true = (X459 @ X463)) & ((X459 @ X462) = $true) & ($true != (X459 @ (ap @ X463 @ X462)))) | ((X459 @ X458) = $true) | ? [X460 : term] : (! [X461 : term] : (($true != (X459 @ X461)) | ($true = (X459 @ (sub @ X460 @ (push @ X461 @ id))))) & ((X459 @ (lam @ X460)) != $true)) | ? [X464 : term] : (((X459 @ X464) != $true) & ($true = (var @ X464))))) & ((hoasinduction_lem3_lthm = $true) <=> (! [X523 : term,X524 : subst > term > subst > $o] : (? [X538 : term] : (($true != (X524 @ id @ (sub @ X523 @ (push @ X538 @ id)) @ id)) & ($true = (X524 @ id @ X538 @ id))) | ((X524 @ id @ (lam @ X523) @ id) = $true) | ? [X525 : term,X526 : subst,X527 : subst,X528 : subst] : (((X524 @ X527 @ X525 @ (comp @ X526 @ X528)) != $true) & ($true = (X524 @ (comp @ X527 @ X526) @ (sub @ X525 @ X526) @ X528))) | ? [X529 : term,X530 : subst,X531 : subst,X532 : subst] : (($true = (X524 @ X532 @ X529 @ (comp @ X530 @ X531))) & ($true != (X524 @ (comp @ X532 @ X530) @ (sub @ X529 @ X530) @ X531))) | ? [X533 : subst > term > term] : (! [X534 : term] : (($true = (X524 @ id @ (X533 @ id @ X534) @ id)) | ($true != (X524 @ id @ X534 @ id))) & ($true != (X524 @ id @ (lam @ (X533 @ sh @ one)) @ id)) & ! [X535 : subst,X536 : term,X537 : subst] : ((sub @ (X533 @ X537 @ X536) @ X535) = (X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535))))) | ? [X514 : term] : ((sub @ X514 @ id) != X514) | ? [X515 : term,X516 : subst > term > subst > $o] : (! [X522 : term] : (($true = (X516 @ id @ (sub @ X515 @ (push @ X522 @ id)) @ id)) | ($true != (X516 @ id @ X522 @ id))) & ((X516 @ id @ (lam @ (sub @ X515 @ (push @ one @ sh))) @ id) != $true) & ! [X517 : subst > term > term] : (((X516 @ id @ (lam @ (X517 @ sh @ one)) @ id) = $true) | ? [X518 : term] : (($true = (X516 @ id @ X518 @ id)) & ((X516 @ id @ (X517 @ id @ X518) @ id) != $true)) | ? [X519 : subst,X520 : term,X521 : subst] : ((X517 @ (comp @ X521 @ X519) @ (sub @ X520 @ X519)) != (sub @ (X517 @ X521 @ X520) @ X519)))))) & (ulamvarind = $true) & (hoaslamnotap_lthm = $true) & (induction2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction = $true) <=> ! [X189 : subst > term > subst > $o,X190 : term] : (? [X198 : term] : (($true != (X189 @ id @ X198 @ id)) & ($true = (var @ (sub @ X198 @ id)))) | ? [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true != (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199)) & ($true = (X189 @ X201 @ X202 @ (comp @ X200 @ X199)))) | ($true = (X189 @ id @ X190 @ id)) | ? [X191 : term,X192 : term] : (($true != (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id)) & ($true = (X189 @ id @ X192 @ id)) & ((X189 @ id @ X191 @ id) = $true)) | ? [X193 : subst > term > term] : (! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) & ($true != (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id)) & ! [X197 : term] : (((X189 @ id @ X197 @ id) != $true) | ($true = (X189 @ id @ (X193 @ id @ X197) @ id)))) | ? [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) != $true) & ($true = (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206))))) & (! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (? [X86 : subst > term > term] : (((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) != $true) & ! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) & ! [X90 : term] : (($true = (X82 @ id @ (X86 @ id @ X90) @ id)) | ($true != (X82 @ id @ X90 @ id)))) | ? [X85 : term] : ((X83 @ X85) != (X82 @ id @ X85 @ id)) | ($true = (X83 @ (lam @ X81))) | ? [X84 : term] : (($true != (X83 @ (sub @ X81 @ (push @ X84 @ id)))) & ($true = (X83 @ X84)))) <=> (hoasinduction_lem3v2a = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X385 : term] : ? [X386 : subst > term > term] : ! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388))) & (hoasapinj2_gthm = $true) & ((induction2lem = $true) <=> ! [X260 : subst,X261 : term,X262 : term > $o] : (? [X266 : term] : (($true != (X262 @ (lam @ X266))) & ! [X267 : term] : (($true = (X262 @ (sub @ X266 @ (push @ X267 @ id)))) | ($true != (X262 @ X267)))) | ($true = (X262 @ (sub @ X261 @ X260))) | ? [X265 : term] : (($true = (var @ X265)) & ($true != (X262 @ (sub @ X265 @ X260)))) | ? [X263 : term,X264 : term] : (($true = (X262 @ X263)) & ($true = (X262 @ X264)) & ($true != (X262 @ (ap @ X263 @ X264)))))) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (($true = (X151 @ (lam @ X150))) | ? [X161 : subst > term > term] : (! [X165 : term] : (($true != (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id))) & ($true != (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id)) & ! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162))) | ? [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true != (X149 @ X156 @ X154 @ (comp @ X153 @ X155))) & ($true = (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155))) | ? [X166 : term] : ((X149 @ id @ X166 @ id) != (X151 @ X166)) | ? [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true != (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) & ($true = (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ? [X152 : term] : (($true != (X151 @ (sub @ X150 @ (push @ X152 @ id)))) & ($true = (X151 @ X152)))) | ? [X148 : term] : ((sub @ X148 @ id) != X148))) & (lamnotap != $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X356 : term,X357 : term > $o,X358 : subst > term > subst > $o] : (((X357 @ (lam @ X356)) = $true) | ? [X360 : subst > term > term] : (! [X361 : term] : (($true != (X358 @ id @ X361 @ id)) | ($true = (X358 @ id @ (X360 @ id @ X361) @ id))) & ! [X362 : subst,X363 : term,X364 : subst] : ((X360 @ (comp @ X362 @ X364) @ (sub @ X363 @ X364)) = (sub @ (X360 @ X362 @ X363) @ X364)) & ((X358 @ id @ (lam @ (X360 @ sh @ one)) @ id) != $true)) | ? [X366 : subst,X367 : subst,X368 : subst,X369 : term] : (($true = (X358 @ X368 @ X369 @ (comp @ X366 @ X367))) & ($true != (X358 @ (comp @ X368 @ X366) @ (sub @ X369 @ X366) @ X367))) | ? [X370 : subst,X371 : subst,X372 : subst,X373 : term] : (((X358 @ X371 @ X373 @ (comp @ X370 @ X372)) != $true) & ($true = (X358 @ (comp @ X371 @ X370) @ (sub @ X373 @ X370) @ X372))) | ? [X359 : term] : ((X358 @ id @ X359 @ id) != (X357 @ X359)) | ? [X365 : term] : (($true != (X357 @ (sub @ X356 @ (push @ X365 @ id)))) & ((X357 @ X365) = $true)))) & ((? [X328 : term > $o,X329 : term] : (! [X333 : term,X334 : term] : (($true != (X328 @ X334)) | ($true != (X328 @ X333)) | ((X328 @ (ap @ X333 @ X334)) = $true)) & ($true != (X328 @ X329)) & ! [X331 : term] : (? [X332 : term] : (($true != (X328 @ (sub @ X331 @ (push @ X332 @ id)))) & ($true = (X328 @ X332))) | ((X328 @ (lam @ X331)) = $true)) & ! [X330 : term] : (($true != (var @ X330)) | ($true = (X328 @ X330)))) | ? [X336 : subst > term > subst > $o,X337 : term > $o,X338 : term] : (! [X344 : term] : (($true = (X337 @ (sub @ X338 @ (push @ X344 @ id)))) | ($true != (X337 @ X344))) & ! [X345 : term] : ((X336 @ id @ X345 @ id) = (X337 @ X345)) & ((X337 @ (lam @ X338)) != $true) & ! [X339 : subst > term > term] : (? [X340 : term] : (($true != (X336 @ id @ (X339 @ id @ X340) @ id)) & ($true = (X336 @ id @ X340 @ id))) | ? [X341 : subst,X342 : subst,X343 : term] : ((sub @ (X339 @ X341 @ X343) @ X342) != (X339 @ (comp @ X341 @ X342) @ (sub @ X343 @ X342))) | ($true = (X336 @ id @ (lam @ (X339 @ sh @ one)) @ id)))) | ? [X325 : subst > term > subst > $o] : ! [X326 : term > $o] : ? [X327 : term] : ((X325 @ id @ X327 @ id) != (X326 @ X327)) | ! [X346 : term,X347 : subst > term > subst > $o] : (? [X350 : subst > term > term] : (! [X354 : term] : (((X347 @ id @ (X350 @ id @ X354) @ id) = $true) | ($true != (X347 @ id @ X354 @ id))) & ((X347 @ id @ (lam @ (X350 @ sh @ one)) @ id) != $true) & ! [X351 : term,X352 : subst,X353 : subst] : ((X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352)) = (sub @ (X350 @ X353 @ X351) @ X352))) | ? [X348 : term,X349 : term] : (($true = (X347 @ id @ X349 @ id)) & ($true = (X347 @ id @ X348 @ id)) & ((X347 @ id @ (ap @ (sub @ X348 @ id) @ X349) @ id) != $true)) | ((X347 @ id @ X346 @ id) = $true)) | ? [X335 : term] : ((sub @ X335 @ id) != X335)) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X15 : subst > term > subst > $o,X16 : term] : (? [X26 : term] : (($true != (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)) & ($true = (X15 @ id @ X26 @ id))) | ? [X17 : term,X18 : subst > term > term] : (! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) & ! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) & ! [X19 : term] : (($true != (X15 @ id @ X19 @ id)) | ($true = (X15 @ id @ (X18 @ id @ X19) @ id))) & ($true != (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id))) | ($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & ((termmset = $true) <=> ! [X355 : term] : ((sub @ X355 @ id) = X355)) & (hoasinduction_lem3_gthm = $true) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) <=> (axvarcons = $true)) & (hoaslamnotvar_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)) | ? [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) = (ap @ X296 @ X295)) & (X295 != X298)))) & ((hoasinduction_lem0 = $true) <=> ! [X121 : subst > term > subst > $o] : ? [X122 : term > $o] : ! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123))) & ((hoaslaminj = $true) <=> ! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (? [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) != (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ? [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) != (sub @ (X91 @ X99 @ X98) @ X100)) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))))) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X303 : term] : ? [X304 : subst > term > term] : ! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306))) & (hoasinduction_lem3b_gthm = $true) & (ulamvar1 != $true) & ((apinj2 = $true) <=> ! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257)))) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58)),
% 6.47/2.17    inference(flattening,[status(thm)],[f12])).
% 6.47/2.17  thf(f12,plain,(
% 6.47/2.17    (hoasinduction_lem2v2_gthm = $true) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) <=> (axvarcons = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (($true != (X27 @ X28)) | ? [X31 : term] : ((X29 @ X31) != (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one)))) & (hoasinduction_lem1v2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X443 : subst,X444 : term > $o,X445 : term] : ? [X446 : term > $o] : ! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443)))) <=> (pushprop_lem0 = $true)) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & ((axidl = $true) <=> ! [X539 : subst] : ((comp @ id @ X539) = X539)) & (pushprop_lthm = $true) & (axassoc = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lthm_3 = $true) <=> ((((! [X486 : subst > term > subst > $o,X487 : term] : (($true = (X486 @ id @ X487 @ id)) | ? [X501 : term,X502 : term] : (($true = (X486 @ id @ X502 @ id)) & ($true = (X486 @ id @ X501 @ id)) & ($true != (X486 @ id @ (ap @ (sub @ X502 @ id) @ X501) @ id))) | ? [X492 : subst > term > term] : (! [X496 : term] : (($true != (X486 @ id @ X496 @ id)) | ((X486 @ id @ (X492 @ id @ X496) @ id) = $true)) & ($true != (X486 @ id @ (lam @ (X492 @ sh @ one)) @ id)) & ! [X493 : subst,X494 : subst,X495 : term] : ((X492 @ (comp @ X493 @ X494) @ (sub @ X495 @ X494)) = (sub @ (X492 @ X493 @ X495) @ X494))) | ? [X503 : term] : (($true != (X486 @ id @ X503 @ id)) & ((var @ (sub @ X503 @ id)) = $true)) | ? [X497 : subst,X498 : term,X499 : subst,X500 : subst] : (($true = (X486 @ (comp @ X500 @ X497) @ (sub @ X498 @ X497) @ X499)) & ($true != (X486 @ X500 @ X498 @ (comp @ X497 @ X499)))) | ? [X488 : subst,X489 : term,X490 : subst,X491 : subst] : (($true != (X486 @ (comp @ X490 @ X491) @ (sub @ X489 @ X491) @ X488)) & ($true = (X486 @ X490 @ X489 @ (comp @ X491 @ X488))))) | ? [X476 : term,X477 : term > $o,X478 : subst > term > subst > $o] : (! [X479 : term] : (($true != (X477 @ X479)) | ($true = (X477 @ (sub @ X476 @ (push @ X479 @ id))))) & ! [X480 : subst > term > term] : (($true = (X478 @ id @ (lam @ (X480 @ sh @ one)) @ id)) | ? [X484 : term] : (((X478 @ id @ (X480 @ id @ X484) @ id) != $true) & ($true = (X478 @ id @ X484 @ id))) | ? [X481 : subst,X482 : subst,X483 : term] : ((sub @ (X480 @ X481 @ X483) @ X482) != (X480 @ (comp @ X481 @ X482) @ (sub @ X483 @ X482)))) & ($true != (X477 @ (lam @ X476))) & ! [X485 : term] : ((X478 @ id @ X485 @ id) = (X477 @ X485)))) | ? [X475 : term] : ((sub @ X475 @ id) != X475)) | ? [X468 : term > $o,X469 : term] : (((X468 @ X469) != $true) & ! [X474 : term] : (((X468 @ X474) = $true) | ($true != (var @ X474))) & ! [X472 : term,X473 : term] : (((X468 @ X472) != $true) | ($true = (X468 @ (ap @ X472 @ X473))) | ($true != (X468 @ X473))) & ! [X470 : term] : (? [X471 : term] : (((X468 @ (sub @ X470 @ (push @ X471 @ id))) != $true) & ((X468 @ X471) = $true)) | ($true = (X468 @ (lam @ X470)))))) | ? [X465 : subst > term > subst > $o] : ! [X466 : term > $o] : ? [X467 : term] : ((X465 @ id @ X467 @ id) != (X466 @ X467)))) & (! [X450 : term,X451 : subst > term > subst > $o] : (($true = (X451 @ id @ (lam @ X450) @ id)) | ? [X452 : term] : (((X451 @ id @ (sub @ X450 @ (push @ X452 @ id)) @ id) != $true) & ($true = (X451 @ id @ X452 @ id))) | ? [X453 : subst > term > term] : (! [X455 : subst,X456 : subst,X457 : term] : ((X453 @ (comp @ X455 @ X456) @ (sub @ X457 @ X456)) = (sub @ (X453 @ X455 @ X457) @ X456)) & ($true != (X451 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X454 : term] : (($true != (X451 @ id @ X454 @ id)) | ($true = (X451 @ id @ (X453 @ id @ X454) @ id))))) <=> (hoasinduction_lem3a = $true)) & (hoasinduction_lem3b_gthm = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar = $true) & (ulamvarsh = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (($true = (X151 @ (lam @ X150))) | ? [X161 : subst > term > term] : (! [X165 : term] : (($true != (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id))) & ($true != (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id)) & ! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162))) | ? [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true != (X149 @ X156 @ X154 @ (comp @ X153 @ X155))) & ($true = (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155))) | ? [X166 : term] : ((X149 @ id @ X166 @ id) != (X151 @ X166)) | ? [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true != (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) & ($true = (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ? [X152 : term] : (($true != (X151 @ (sub @ X150 @ (push @ X152 @ id)))) & ($true = (X151 @ X152)))) | ? [X148 : term] : ((sub @ X148 @ id) != X148))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axvarshift = $true) & (one = (d2term @ d_one)) & ((hoaslaminj = $true) <=> ! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (? [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) != (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ? [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) != (sub @ (X91 @ X99 @ X98) @ X100)) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))))) & ((((! [X224 : subst > term > term,X225 : subst > term > term,X226 : term,X227 : subst] : (? [X228 : subst,X229 : term,X230 : subst] : ((X224 @ (comp @ X228 @ X230) @ (sub @ X229 @ X230)) != (sub @ (X224 @ X228 @ X229) @ X230)) | ? [X231 : subst,X232 : subst,X233 : term] : ((X225 @ (comp @ X232 @ X231) @ (sub @ X233 @ X231)) != (sub @ (X225 @ X232 @ X233) @ X231)) | ((X225 @ X227 @ X226) = (X224 @ X227 @ X226)) | ((lam @ (X225 @ sh @ one)) != (lam @ (X224 @ sh @ one)))) | ? [X222 : term,X223 : term] : ((X222 != X223) & ((lam @ X223) = (lam @ X222)))) | ? [X220 : subst,X221 : term] : ((comp @ sh @ (push @ X221 @ X220)) != X220)) | ? [X218 : subst,X219 : term] : ((sub @ one @ (push @ X219 @ X218)) != X219)) <=> (hoaslaminj_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoaslamnotvar_lthm = $true) & (termmset_gthm = $true) & (axclos = $true) & ((hoasinduction = $true) <=> ! [X189 : subst > term > subst > $o,X190 : term] : (? [X198 : term] : (($true != (X189 @ id @ X198 @ id)) & ($true = (var @ (sub @ X198 @ id)))) | ? [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true != (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199)) & ($true = (X189 @ X201 @ X202 @ (comp @ X200 @ X199)))) | ($true = (X189 @ id @ X190 @ id)) | ? [X191 : term,X192 : term] : (($true != (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id)) & ($true = (X189 @ id @ X192 @ id)) & ((X189 @ id @ X191 @ id) = $true)) | ? [X193 : subst > term > term] : (! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) & ($true != (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id)) & ! [X197 : term] : (((X189 @ id @ X197 @ id) != $true) | ($true = (X189 @ id @ (X193 @ id @ X197) @ id)))) | ? [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) != $true) & ($true = (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206))))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (pushprop = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem0_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X356 : term,X357 : term > $o,X358 : subst > term > subst > $o] : (((X357 @ (lam @ X356)) = $true) | ? [X360 : subst > term > term] : (! [X361 : term] : (($true != (X358 @ id @ X361 @ id)) | ($true = (X358 @ id @ (X360 @ id @ X361) @ id))) & ! [X362 : subst,X363 : term,X364 : subst] : ((X360 @ (comp @ X362 @ X364) @ (sub @ X363 @ X364)) = (sub @ (X360 @ X362 @ X363) @ X364)) & ((X358 @ id @ (lam @ (X360 @ sh @ one)) @ id) != $true)) | ? [X366 : subst,X367 : subst,X368 : subst,X369 : term] : (($true = (X358 @ X368 @ X369 @ (comp @ X366 @ X367))) & ($true != (X358 @ (comp @ X368 @ X366) @ (sub @ X369 @ X366) @ X367))) | ? [X370 : subst,X371 : subst,X372 : subst,X373 : term] : (((X358 @ X371 @ X373 @ (comp @ X370 @ X372)) != $true) & ($true = (X358 @ (comp @ X371 @ X370) @ (sub @ X373 @ X370) @ X372))) | ? [X359 : term] : ((X358 @ id @ X359 @ id) != (X357 @ X359)) | ? [X365 : term] : (($true != (X357 @ (sub @ X356 @ (push @ X365 @ id)))) & ((X357 @ X365) = $true)))) & (((((! [X178 : subst,X179 : term > $o,X180 : term] : (? [X182 : term,X183 : term] : (($true = (X179 @ X183)) & ($true = (X179 @ X182)) & ($true != (X179 @ (ap @ X183 @ X182)))) | ? [X184 : term] : (! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ($true != (X179 @ X185))) & ($true != (X179 @ (lam @ X184)))) | ($true = (X179 @ (sub @ X180 @ X178))) | ? [X181 : term] : (($true != (X179 @ (sub @ X181 @ X178))) & ($true = (var @ X181)))) | ? [X172 : term,X173 : term > $o] : (! [X175 : term] : (($true != (var @ X175)) | ((X173 @ X175) = $true)) & ! [X174 : term] : (((X173 @ X174) != $true) | ($true = (X173 @ (lam @ X174)))) & ($true != (X173 @ X172)) & ! [X176 : term,X177 : term] : (($true != (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true) | ($true != (X173 @ X176))))) | ? [X171 : subst] : ((comp @ X171 @ id) != X171)) | ? [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) != X169)) | ? [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) != X168)) <=> (induction2lem_lthm = $true)) & ((induction2_lthm = $true) <=> ((! [X73 : term,X74 : term > $o] : (($true = (X74 @ X73)) | ? [X75 : term] : (($true != (X74 @ (lam @ X75))) & ! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ($true != (X74 @ X76)))) | ? [X78 : term,X79 : term] : (($true = (X74 @ X78)) & ((X74 @ (ap @ X79 @ X78)) != $true) & ($true = (X74 @ X79))) | ? [X77 : term] : (($true = (var @ X77)) & ($true != (X74 @ X77)))) | ? [X65 : subst,X66 : term > $o,X67 : term] : (($true != (X66 @ (sub @ X67 @ X65))) & ! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ((X66 @ X68) != $true) | ((X66 @ X69) != $true)) & ! [X72 : term] : (((var @ X72) != $true) | ($true = (X66 @ (sub @ X72 @ X65)))) & ! [X70 : term] : (($true = (X66 @ (lam @ X70))) | ? [X71 : term] : (($true = (X66 @ X71)) & ($true != (X66 @ (sub @ X70 @ (push @ X71 @ id)))))))) | ? [X64 : term] : ((sub @ X64 @ id) != X64))) & ((hoasinduction_lem2 = $true) <=> ! [X234 : term,X235 : subst > term > subst > $o,X236 : term] : (? [X243 : term,X244 : subst,X245 : subst,X246 : subst] : (($true != (X235 @ X244 @ X243 @ (comp @ X246 @ X245))) & ($true = (X235 @ (comp @ X244 @ X246) @ (sub @ X243 @ X246) @ X245))) | ? [X237 : subst,X238 : subst,X239 : term,X240 : subst] : (($true != (X235 @ (comp @ X237 @ X240) @ (sub @ X239 @ X240) @ X238)) & ($true = (X235 @ X237 @ X239 @ (comp @ X240 @ X238)))) | ? [X241 : term,X242 : term] : (($true != (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id)) & ((X235 @ id @ X241 @ id) = $true) & ($true = (X235 @ id @ X242 @ id))) | ($true = (X235 @ id @ (ap @ X234 @ X236) @ id)) | ($true != (X235 @ id @ X236 @ id)) | ($true != (X235 @ id @ X234 @ id)))) & (axabs = $true) & ((induction2 = $true) <=> ! [X458 : term,X459 : term > $o] : (? [X462 : term,X463 : term] : (($true = (X459 @ X463)) & ((X459 @ X462) = $true) & ($true != (X459 @ (ap @ X463 @ X462)))) | ((X459 @ X458) = $true) | ? [X460 : term] : (! [X461 : term] : (($true != (X459 @ X461)) | ($true = (X459 @ (sub @ X460 @ (push @ X461 @ id))))) & ((X459 @ (lam @ X460)) != $true)) | ? [X464 : term] : (((X459 @ X464) != $true) & ($true = (var @ X464))))) & ((shinj = $true) <=> ! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449))) & (apnotvar = $true) & (! [X309 : subst > term > subst > $o,X310 : term] : (($true = (X309 @ id @ (lam @ X310) @ id)) | ? [X311 : term] : (($true != (X309 @ id @ (sub @ X310 @ (push @ X311 @ id)) @ id)) & ((X309 @ id @ X311 @ id) = $true)) | ? [X312 : term,X313 : subst,X314 : subst,X315 : subst] : (($true != (X309 @ (comp @ X315 @ X313) @ (sub @ X312 @ X313) @ X314)) & ($true = (X309 @ X315 @ X312 @ (comp @ X313 @ X314)))) | ? [X316 : subst > term > term] : (($true != (X309 @ id @ (lam @ (X316 @ sh @ one)) @ id)) & ! [X317 : term] : (((X309 @ id @ X317 @ id) != $true) | ($true = (X309 @ id @ (X316 @ id @ X317) @ id))) & ! [X318 : term,X319 : subst,X320 : subst] : ((sub @ (X316 @ X320 @ X318) @ X319) = (X316 @ (comp @ X320 @ X319) @ (sub @ X318 @ X319)))) | ? [X321 : subst,X322 : term,X323 : subst,X324 : subst] : (($true = (X309 @ (comp @ X324 @ X321) @ (sub @ X322 @ X321) @ X323)) & ($true != (X309 @ X324 @ X322 @ (comp @ X321 @ X323))))) <=> (hoasinduction_lem3 = $true)) & (hoaslamnotap_gthm = $true) & (((! [X523 : term,X524 : subst > term > subst > $o] : (? [X538 : term] : (($true != (X524 @ id @ (sub @ X523 @ (push @ X538 @ id)) @ id)) & ($true = (X524 @ id @ X538 @ id))) | ((X524 @ id @ (lam @ X523) @ id) = $true) | ? [X525 : term,X526 : subst,X527 : subst,X528 : subst] : (((X524 @ X527 @ X525 @ (comp @ X526 @ X528)) != $true) & ($true = (X524 @ (comp @ X527 @ X526) @ (sub @ X525 @ X526) @ X528))) | ? [X529 : term,X530 : subst,X531 : subst,X532 : subst] : (($true = (X524 @ X532 @ X529 @ (comp @ X530 @ X531))) & ($true != (X524 @ (comp @ X532 @ X530) @ (sub @ X529 @ X530) @ X531))) | ? [X533 : subst > term > term] : (! [X534 : term] : (($true = (X524 @ id @ (X533 @ id @ X534) @ id)) | ($true != (X524 @ id @ X534 @ id))) & ($true != (X524 @ id @ (lam @ (X533 @ sh @ one)) @ id)) & ! [X535 : subst,X536 : term,X537 : subst] : ((sub @ (X533 @ X537 @ X536) @ X535) = (X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535))))) | ? [X515 : term,X516 : subst > term > subst > $o] : (! [X522 : term] : (($true = (X516 @ id @ (sub @ X515 @ (push @ X522 @ id)) @ id)) | ($true != (X516 @ id @ X522 @ id))) & ((X516 @ id @ (lam @ (sub @ X515 @ (push @ one @ sh))) @ id) != $true) & ! [X517 : subst > term > term] : (((X516 @ id @ (lam @ (X517 @ sh @ one)) @ id) = $true) | ? [X518 : term] : (($true = (X516 @ id @ X518 @ id)) & ((X516 @ id @ (X517 @ id @ X518) @ id) != $true)) | ? [X519 : subst,X520 : term,X521 : subst] : ((X517 @ (comp @ X521 @ X519) @ (sub @ X520 @ X519)) != (sub @ (X517 @ X521 @ X520) @ X519))))) | ? [X514 : term] : ((sub @ X514 @ id) != X514)) <=> (hoasinduction_lem3_lthm = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction_lem0 = $true) <=> ! [X121 : subst > term > subst > $o] : ? [X122 : term > $o] : ! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123))) & (((! [X273 : term,X274 : term > $o,X275 : subst > term > subst > $o] : (? [X276 : term] : ((X274 @ X276) != (X275 @ id @ X276 @ id)) | ? [X277 : term] : (($true != (X274 @ (sub @ X273 @ (push @ X277 @ id)))) & ((X274 @ X277) = $true)) | ((X274 @ (lam @ X273)) = $true) | ? [X278 : subst > term > term] : (($true != (X275 @ id @ (lam @ (X278 @ sh @ one)) @ id)) & ! [X282 : term] : (((X275 @ id @ (X278 @ id @ X282) @ id) = $true) | ((X275 @ id @ X282 @ id) != $true)) & ! [X279 : subst,X280 : subst,X281 : term] : ((X278 @ (comp @ X280 @ X279) @ (sub @ X281 @ X279)) = (sub @ (X278 @ X280 @ X281) @ X279)))) | ? [X272 : term] : ((sub @ X272 @ id) != X272)) | ? [X268 : term] : ! [X269 : subst > term > term] : ? [X270 : subst,X271 : term] : ((sub @ X268 @ (push @ X271 @ X270)) != (X269 @ X270 @ X271))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((d2subst @ d_id) = sh) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) <=> (axscons = $true)) & (! [X247 : term,X248 : subst > term > subst > $o] : (? [X254 : term,X255 : term] : (($true = (X248 @ id @ X255 @ id)) & ($true = (X248 @ id @ X254 @ id)) & ($true != (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)) | ? [X249 : subst > term > term] : (((X248 @ id @ (lam @ (X249 @ sh @ one)) @ id) != $true) & ! [X250 : term] : (($true = (X248 @ id @ (X249 @ id @ X250) @ id)) | ($true != (X248 @ id @ X250 @ id))) & ! [X251 : subst,X252 : term,X253 : subst] : ((sub @ (X249 @ X253 @ X252) @ X251) = (X249 @ (comp @ X253 @ X251) @ (sub @ X252 @ X251))))) <=> (hoasinduction_no_psi_cond = $true)) & (induction2_gthm = $true) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (? [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) != (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) <=> (hoaslamnotap = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (? [X115 : subst > term > term] : (! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) & ($true != (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id)) & ! [X116 : term] : (($true != (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id)))) | ((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ? [X120 : term] : (($true = (X113 @ id @ X120 @ id)) & ($true != (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id))))) & ((termmset = $true) <=> ! [X355 : term] : ((sub @ X355 @ id) = X355)) & ((hoasinduction_no_psi_cond_lthm = $true) <=> ((((! [X346 : term,X347 : subst > term > subst > $o] : (? [X350 : subst > term > term] : (! [X354 : term] : (((X347 @ id @ (X350 @ id @ X354) @ id) = $true) | ($true != (X347 @ id @ X354 @ id))) & ((X347 @ id @ (lam @ (X350 @ sh @ one)) @ id) != $true) & ! [X351 : term,X352 : subst,X353 : subst] : ((X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352)) = (sub @ (X350 @ X353 @ X351) @ X352))) | ? [X348 : term,X349 : term] : (($true = (X347 @ id @ X349 @ id)) & ($true = (X347 @ id @ X348 @ id)) & ((X347 @ id @ (ap @ (sub @ X348 @ id) @ X349) @ id) != $true)) | ((X347 @ id @ X346 @ id) = $true)) | ? [X336 : subst > term > subst > $o,X337 : term > $o,X338 : term] : (! [X344 : term] : (($true = (X337 @ (sub @ X338 @ (push @ X344 @ id)))) | ($true != (X337 @ X344))) & ! [X345 : term] : ((X336 @ id @ X345 @ id) = (X337 @ X345)) & ((X337 @ (lam @ X338)) != $true) & ! [X339 : subst > term > term] : (? [X340 : term] : (($true != (X336 @ id @ (X339 @ id @ X340) @ id)) & ($true = (X336 @ id @ X340 @ id))) | ? [X341 : subst,X342 : subst,X343 : term] : ((sub @ (X339 @ X341 @ X343) @ X342) != (X339 @ (comp @ X341 @ X342) @ (sub @ X343 @ X342))) | ($true = (X336 @ id @ (lam @ (X339 @ sh @ one)) @ id))))) | ? [X335 : term] : ((sub @ X335 @ id) != X335)) | ? [X328 : term > $o,X329 : term] : (! [X333 : term,X334 : term] : (($true != (X328 @ X334)) | ($true != (X328 @ X333)) | ((X328 @ (ap @ X333 @ X334)) = $true)) & ($true != (X328 @ X329)) & ! [X331 : term] : (? [X332 : term] : (($true != (X328 @ (sub @ X331 @ (push @ X332 @ id)))) & ($true = (X328 @ X332))) | ((X328 @ (lam @ X331)) = $true)) & ! [X330 : term] : (($true != (var @ X330)) | ($true = (X328 @ X330))))) | ? [X325 : subst > term > subst > $o] : ! [X326 : term > $o] : ? [X327 : term] : ((X325 @ id @ X327 @ id) != (X326 @ X327)))) & ! [X56 : d_subst,X57 : d_subst] : ((X56 = X57) | ((d2subst @ X56) != (d2subst @ X57))) & (pushprop_lem3v2_lthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> ((! [X133 : subst > term > subst > $o,X134 : term] : (((X133 @ id @ (lam @ X134) @ id) = $true) | ? [X140 : term] : (($true != (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id)) & ($true = (X133 @ id @ X140 @ id))) | ? [X135 : subst > term > term] : (! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) & ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) != $true) & ! [X136 : term] : (($true = (X133 @ id @ (X135 @ id @ X136) @ id)) | ($true != (X133 @ id @ X136 @ id))))) | ? [X125 : term,X126 : subst > term > subst > $o] : (! [X127 : term] : (($true != (X126 @ id @ X127 @ id)) | ($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id))) & ($true != (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) & ! [X128 : subst > term > term] : (? [X132 : term] : (($true = (X126 @ id @ X132 @ id)) & ($true != (X126 @ id @ (X128 @ id @ X132) @ id))) | ? [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) != (sub @ (X128 @ X129 @ X131) @ X130)) | ($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id))))) | ? [X124 : term] : ((sub @ X124 @ id) != X124))) & (ulamvarind = $true) & (hoasinduction_lem3a_gthm = $true) & (pushprop_lem3v2 = $true) & (substmonoid_gthm = $true) & ((laminj = $true) <=> ! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308))) & (ulamvar1 != $true) & (axapp = $true) & (hoasinduction_lem1_lthm = $true) & (pushprop_lem2v2 = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((axidr = $true) <=> ! [X374 : subst] : ((comp @ X374 @ id) = X374)) & (pushprop_lem1v2_gthm = $true) & (hoaslamnotap_lthm = $true) & (pushprop_lem2v2_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58) & ! [X513 : d_term] : (d_one = X513) & (hoasinduction_lem2_gthm = $true) & (lamnotvar = $true) & ((substmonoid_lthm = $true) <=> (((! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62)) | ? [X61 : subst] : ((comp @ X61 @ id) != X61)) | ? [X60 : subst] : ((comp @ id @ X60) != X60))) & (hoaslaminj_gthm = $true) & (! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (? [X86 : subst > term > term] : (((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) != $true) & ! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) & ! [X90 : term] : (($true = (X82 @ id @ (X86 @ id @ X90) @ id)) | ($true != (X82 @ id @ X90 @ id)))) | ? [X85 : term] : ((X83 @ X85) != (X82 @ id @ X85 @ id)) | ($true = (X83 @ (lam @ X81))) | ? [X84 : term] : (($true != (X83 @ (sub @ X81 @ (push @ X84 @ id)))) & ($true = (X83 @ X84)))) <=> (hoasinduction_lem3v2a = $true)) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) <=> (axshiftcons = $true)) & ((pushprop_lem1_lthm = $true) <=> ((! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36))) | ? [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) != X34)) | ? [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) != X32))) & (! [X5 : term > $o,X6 : term] : (? [X8 : term,X9 : term] : (($true != (X5 @ (ap @ X9 @ X8))) & ($true = (X5 @ X8)) & ((X5 @ X9) = $true)) | ? [X7 : term] : (($true = (X5 @ X7)) & ((X5 @ (lam @ X7)) != $true)) | ($true = (X5 @ X6)) | ? [X10 : term] : (($true != (X5 @ X10)) & ($true = (var @ X10)))) <=> (induction = $true)) & ((d2subst @ d_id) = id) & ((substmonoid = $true) <=> (! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209))) & (pushprop_lthm_orig = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X303 : term] : ? [X304 : subst > term > term] : ! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306))) & ((hoasinduction_lem2v2 = $true) <=> ! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (? [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true = (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55)) & ($true != (X41 @ X53 @ X54 @ (comp @ X52 @ X55)))) | ? [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true != (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) & ((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) = $true)) | ($true != (X43 @ X42)) | ($true = (X43 @ (ap @ X42 @ X44))) | ($true != (X43 @ X44)) | ? [X45 : term,X46 : term] : (($true = (X41 @ id @ X46 @ id)) & ($true != (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id)) & ($true = (X41 @ id @ X45 @ id))) | ? [X47 : term] : ((X43 @ X47) != (X41 @ id @ X47 @ id)))) & (hoasapnotvar_lthm = $true) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((apinj2 = $true) <=> ! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257)))) & (lamnotap != $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem2_lthm = $true) & ((induction2lem = $true) <=> ! [X260 : subst,X261 : term,X262 : term > $o] : (? [X266 : term] : (($true != (X262 @ (lam @ X266))) & ! [X267 : term] : (($true = (X262 @ (sub @ X266 @ (push @ X267 @ id)))) | ($true != (X262 @ X267)))) | ($true = (X262 @ (sub @ X261 @ X260))) | ? [X265 : term] : (($true = (var @ X265)) & ($true != (X262 @ (sub @ X265 @ X260)))) | ? [X263 : term,X264 : term] : (($true = (X262 @ X263)) & ($true = (X262 @ X264)) & ($true != (X262 @ (ap @ X263 @ X264)))))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem1_gthm = $true) & (induction2lem_gthm = $true) & ((hoasapinj1_lthm = $true) <=> ((! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511))) | ? [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 != X506) & ((ap @ X506 @ X508) = (ap @ X505 @ X507)))) | ? [X504 : term] : ((sub @ X504 @ id) != X504))) & (hoaslamnotvar = $true) & ((hoasapinj2_lthm = $true) <=> (! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)) | ? [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) = (ap @ X296 @ X295)) & (X295 != X298)))) & (! [X141 : term] : ? [X142 : subst > term > term] : ((X142 @ sh @ one) = (sub @ X141 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X283 : term] : ? [X284 : subst > term > term] : ((X284 @ sh @ one) = (sub @ X283 @ (push @ one @ sh)))) & ! [X105 : d_subst] : (d_id = X105) & (hoasinduction_gthm = $true) & (hoasinduction_lem1v2 = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (($true = (X110 @ one)) | ($true != (X109 @ X108)) | ? [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) != (X110 @ X112))) | ? [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) != X107))) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X15 : subst > term > subst > $o,X16 : term] : (? [X26 : term] : (($true != (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)) & ($true = (X15 @ id @ X26 @ id))) | ? [X17 : term,X18 : subst > term > term] : (! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) & ! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) & ! [X19 : term] : (($true != (X15 @ id @ X19 @ id)) | ($true = (X15 @ id @ (X18 @ id @ X19) @ id))) & ($true != (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id))) | ($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & (pushprop_lem1_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (pushprop_gthm = $true) & (axmap = $true) & ((termmset_lthm = $true) <=> (! [X294 : term] : ((sub @ X294 @ id) = X294) | ? [X293 : term] : ((sub @ X293 @ id) != X293))) & ((var @ (d2term @ d_one)) != $true) & (! [X0 : term,X1 : term > $o,X2 : subst] : ? [X3 : term > $o] : ! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) <=> (hoasapinj1 = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X385 : term] : ? [X386 : subst > term > term] : ! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388))) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & (! [X186 : subst > term > subst > $o] : ? [X187 : term > $o] : ! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188)) <=> (hoasinduction_lem0_lthm = $true)) & (hoasapnotvar_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ! [X207 : d_term,X208 : d_term] : ((X207 = X208) | ((d2term @ X208) != (d2term @ X207))) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & ((hoasinduction_lthm = $true) <=> (((! [X425 : subst > term > subst > $o,X426 : term] : (? [X431 : term] : (($true = (var @ (sub @ X431 @ id))) & ((X425 @ id @ X431 @ id) != $true)) | ? [X434 : subst > term > term] : (($true != (X425 @ id @ (lam @ (X434 @ sh @ one)) @ id)) & ! [X438 : term] : (($true != (X425 @ id @ X438 @ id)) | ($true = (X425 @ id @ (X434 @ id @ X438) @ id))) & ! [X435 : subst,X436 : term,X437 : subst] : ((X434 @ (comp @ X437 @ X435) @ (sub @ X436 @ X435)) = (sub @ (X434 @ X437 @ X436) @ X435))) | ? [X439 : subst,X440 : term,X441 : subst,X442 : subst] : (($true != (X425 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442) @ X439)) & ((X425 @ X441 @ X440 @ (comp @ X442 @ X439)) = $true)) | ? [X432 : term,X433 : term] : (((X425 @ id @ X433 @ id) = $true) & ($true != (X425 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id)) & ($true = (X425 @ id @ X432 @ id))) | ($true = (X425 @ id @ X426 @ id)) | ? [X427 : subst,X428 : subst,X429 : subst,X430 : term] : (((X425 @ (comp @ X429 @ X428) @ (sub @ X430 @ X428) @ X427) = $true) & ($true != (X425 @ X429 @ X430 @ (comp @ X428 @ X427))))) | ? [X409 : term,X410 : subst > term > subst > $o] : (! [X421 : subst,X422 : subst,X423 : subst,X424 : term] : (((X410 @ (comp @ X422 @ X421) @ (sub @ X424 @ X421) @ X423) != $true) | ((X410 @ X422 @ X424 @ (comp @ X421 @ X423)) = $true)) & ! [X417 : subst,X418 : subst,X419 : subst,X420 : term] : (($true != (X410 @ X417 @ X420 @ (comp @ X418 @ X419))) | ($true = (X410 @ (comp @ X417 @ X418) @ (sub @ X420 @ X418) @ X419))) & ! [X416 : term] : (($true != (X410 @ id @ X416 @ id)) | ($true = (X410 @ id @ (sub @ X409 @ (push @ X416 @ id)) @ id))) & ($true != (X410 @ id @ (lam @ X409) @ id)) & ! [X411 : subst > term > term] : (? [X415 : term] : (((X410 @ id @ X415 @ id) = $true) & ((X410 @ id @ (X411 @ id @ X415) @ id) != $true)) | ($true = (X410 @ id @ (lam @ (X411 @ sh @ one)) @ id)) | ? [X412 : subst,X413 : subst,X414 : term] : ((X411 @ (comp @ X412 @ X413) @ (sub @ X414 @ X413)) != (sub @ (X411 @ X412 @ X414) @ X413))))) | ? [X396 : term,X397 : term,X398 : subst > term > subst > $o] : (! [X403 : term,X404 : term] : (((X398 @ id @ X404 @ id) != $true) | ($true = (X398 @ id @ (ap @ (sub @ X404 @ id) @ X403) @ id)) | ((X398 @ id @ X403 @ id) != $true)) & ($true != (X398 @ id @ (ap @ X396 @ X397) @ id)) & ($true = (X398 @ id @ X397 @ id)) & ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X398 @ X401 @ X402 @ (comp @ X400 @ X399))) | ($true = (X398 @ (comp @ X401 @ X400) @ (sub @ X402 @ X400) @ X399))) & ! [X405 : term,X406 : subst,X407 : subst,X408 : subst] : (($true != (X398 @ (comp @ X407 @ X408) @ (sub @ X405 @ X408) @ X406)) | ($true = (X398 @ X407 @ X405 @ (comp @ X408 @ X406)))) & ((X398 @ id @ X396 @ id) = $true))) | ? [X389 : term,X390 : term > $o] : (($true != (X390 @ X389)) & ! [X391 : term] : (((X390 @ (lam @ X391)) = $true) | ? [X392 : term] : (((X390 @ X392) = $true) & ($true != (X390 @ (sub @ X391 @ (push @ X392 @ id)))))) & ! [X393 : term,X394 : term] : (($true != (X390 @ X393)) | ($true = (X390 @ (ap @ X393 @ X394))) | ((X390 @ X394) != $true)) & ! [X395 : term] : (($true != (var @ X395)) | ($true = (X390 @ X395)))))) & ((hoasinduction_lem3aa = $true) <=> ! [X375 : subst > term > subst > $o,X376 : term] : (($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) | ? [X382 : term] : (($true = (X375 @ id @ X382 @ id)) & ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) != $true)) | ? [X377 : subst > term > term] : (! [X378 : term] : (($true != (X375 @ id @ X378 @ id)) | ((X375 @ id @ (X377 @ id @ X378) @ id) = $true)) & ! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381)) & ($true != (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id)))))),
% 6.47/2.17    inference(ennf_transformation,[status(thm)],[f11])).
% 6.47/2.17  thf(f11,plain,(
% 6.47/2.17    (hoasinduction_lem2v2_gthm = $true) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) <=> (axvarcons = $true)) & (! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (~! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ($true = (X29 @ one)) | ($true != (X27 @ X28))) <=> (pushprop_lem1v2 = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((pushprop_lem0 = $true) <=> ! [X443 : subst,X444 : term > $o,X445 : term] : ~! [X446 : term > $o] : ~! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443))))) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & ((axidl = $true) <=> ! [X539 : subst] : ((comp @ id @ X539) = X539)) & (pushprop_lthm = $true) & (axassoc = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lthm_3 = $true) <=> (! [X465 : subst > term > subst > $o] : ~! [X466 : term > $o] : ~! [X467 : term] : ((X465 @ id @ X467 @ id) = (X466 @ X467)) => (! [X468 : term > $o,X469 : term] : (~! [X470 : term] : (~! [X471 : term] : (((X468 @ (sub @ X470 @ (push @ X471 @ id))) = $true) | ((X468 @ X471) != $true)) | ($true = (X468 @ (lam @ X470)))) | ~! [X472 : term,X473 : term] : (((X468 @ X472) != $true) | ($true = (X468 @ (ap @ X472 @ X473))) | ($true != (X468 @ X473))) | ~! [X474 : term] : (((X468 @ X474) = $true) | ($true != (var @ X474))) | ((X468 @ X469) = $true)) => (! [X475 : term] : ((sub @ X475 @ id) = X475) => (! [X476 : term,X477 : term > $o,X478 : subst > term > subst > $o] : (~! [X485 : term] : ((X478 @ id @ X485 @ id) = (X477 @ X485)) | ~! [X479 : term] : (($true != (X477 @ X479)) | ($true = (X477 @ (sub @ X476 @ (push @ X479 @ id))))) | ~! [X480 : subst > term > term] : (~! [X481 : subst,X482 : subst,X483 : term] : ((sub @ (X480 @ X481 @ X483) @ X482) = (X480 @ (comp @ X481 @ X482) @ (sub @ X483 @ X482))) | ($true = (X478 @ id @ (lam @ (X480 @ sh @ one)) @ id)) | ~! [X484 : term] : (((X478 @ id @ (X480 @ id @ X484) @ id) = $true) | ($true != (X478 @ id @ X484 @ id)))) | ($true = (X477 @ (lam @ X476)))) => ! [X486 : subst > term > subst > $o,X487 : term] : (~! [X492 : subst > term > term] : (~! [X496 : term] : (($true != (X486 @ id @ X496 @ id)) | ((X486 @ id @ (X492 @ id @ X496) @ id) = $true)) | ($true = (X486 @ id @ (lam @ (X492 @ sh @ one)) @ id)) | ~! [X493 : subst,X494 : subst,X495 : term] : ((X492 @ (comp @ X493 @ X494) @ (sub @ X495 @ X494)) = (sub @ (X492 @ X493 @ X495) @ X494))) | ~! [X497 : subst,X498 : term,X499 : subst,X500 : subst] : (($true = (X486 @ X500 @ X498 @ (comp @ X497 @ X499))) | ($true != (X486 @ (comp @ X500 @ X497) @ (sub @ X498 @ X497) @ X499))) | ~! [X503 : term] : (($true = (X486 @ id @ X503 @ id)) | ((var @ (sub @ X503 @ id)) != $true)) | ~! [X488 : subst,X489 : term,X490 : subst,X491 : subst] : (($true = (X486 @ (comp @ X490 @ X491) @ (sub @ X489 @ X491) @ X488)) | ($true != (X486 @ X490 @ X489 @ (comp @ X491 @ X488)))) | ($true = (X486 @ id @ X487 @ id)) | ~! [X501 : term,X502 : term] : (($true != (X486 @ id @ X501 @ id)) | ($true = (X486 @ id @ (ap @ (sub @ X502 @ id) @ X501) @ id)) | ($true != (X486 @ id @ X502 @ id))))))))) & ((hoasinduction_lem3a = $true) <=> ! [X450 : term,X451 : subst > term > subst > $o] : (($true = (X451 @ id @ (lam @ X450) @ id)) | ~! [X453 : subst > term > term] : (~! [X454 : term] : (($true != (X451 @ id @ X454 @ id)) | ($true = (X451 @ id @ (X453 @ id @ X454) @ id))) | ~! [X455 : subst,X456 : subst,X457 : term] : ((X453 @ (comp @ X455 @ X456) @ (sub @ X457 @ X456)) = (sub @ (X453 @ X455 @ X457) @ X456)) | ($true = (X451 @ id @ (lam @ (X453 @ sh @ one)) @ id))) | ~! [X452 : term] : (((X451 @ id @ (sub @ X450 @ (push @ X452 @ id)) @ id) = $true) | ($true != (X451 @ id @ X452 @ id))))) & (hoasinduction_lem3b_gthm = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar = $true) & (ulamvarsh = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X148 : term] : ((sub @ X148 @ id) = X148) => ! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (~! [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true = (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) | ($true != (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ($true = (X151 @ (lam @ X150))) | ~! [X152 : term] : (($true = (X151 @ (sub @ X150 @ (push @ X152 @ id)))) | ($true != (X151 @ X152))) | ~! [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true != (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155)) | ($true = (X149 @ X156 @ X154 @ (comp @ X153 @ X155)))) | ~! [X161 : subst > term > term] : (~! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162)) | ($true = (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id)) | ~! [X165 : term] : (($true != (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id)))) | ~! [X166 : term] : ((X149 @ id @ X166 @ id) = (X151 @ X166))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (axvarshift = $true) & (one = (d2term @ d_one)) & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))) | ~! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ~! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100))) <=> (hoaslaminj = $true)) & ((! [X218 : subst,X219 : term] : ((sub @ one @ (push @ X219 @ X218)) = X219) => (! [X220 : subst,X221 : term] : ((comp @ sh @ (push @ X221 @ X220)) = X220) => (! [X222 : term,X223 : term] : (((lam @ X223) != (lam @ X222)) | (X222 = X223)) => ! [X224 : subst > term > term,X225 : subst > term > term,X226 : term,X227 : subst] : (((X225 @ X227 @ X226) = (X224 @ X227 @ X226)) | ~! [X231 : subst,X232 : subst,X233 : term] : ((X225 @ (comp @ X232 @ X231) @ (sub @ X233 @ X231)) = (sub @ (X225 @ X232 @ X233) @ X231)) | ~! [X228 : subst,X229 : term,X230 : subst] : ((X224 @ (comp @ X228 @ X230) @ (sub @ X229 @ X230)) = (sub @ (X224 @ X228 @ X229) @ X230)) | ((lam @ (X225 @ sh @ one)) != (lam @ (X224 @ sh @ one))))))) <=> (hoaslaminj_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoaslamnotvar_lthm = $true) & (termmset_gthm = $true) & (axclos = $true) & ((hoasinduction = $true) <=> ! [X189 : subst > term > subst > $o,X190 : term] : (~! [X198 : term] : (($true = (X189 @ id @ X198 @ id)) | ($true != (var @ (sub @ X198 @ id)))) | ~! [X191 : term,X192 : term] : (((X189 @ id @ X191 @ id) != $true) | ($true != (X189 @ id @ X192 @ id)) | ($true = (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id))) | ($true = (X189 @ id @ X190 @ id)) | ~! [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true != (X189 @ X201 @ X202 @ (comp @ X200 @ X199))) | ($true = (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199))) | ~! [X193 : subst > term > term] : (~! [X197 : term] : (((X189 @ id @ X197 @ id) != $true) | ($true = (X189 @ id @ (X193 @ id @ X197) @ id))) | ~! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) | ($true = (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id))) | ~! [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (($true != (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206)) | ((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) = $true)))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (pushprop = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem0_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X356 : term,X357 : term > $o,X358 : subst > term > subst > $o] : (~! [X365 : term] : (($true = (X357 @ (sub @ X356 @ (push @ X365 @ id)))) | ((X357 @ X365) != $true)) | ~! [X359 : term] : ((X358 @ id @ X359 @ id) = (X357 @ X359)) | ((X357 @ (lam @ X356)) = $true) | ~! [X360 : subst > term > term] : (~! [X362 : subst,X363 : term,X364 : subst] : ((X360 @ (comp @ X362 @ X364) @ (sub @ X363 @ X364)) = (sub @ (X360 @ X362 @ X363) @ X364)) | ~! [X361 : term] : (($true != (X358 @ id @ X361 @ id)) | ($true = (X358 @ id @ (X360 @ id @ X361) @ id))) | ((X358 @ id @ (lam @ (X360 @ sh @ one)) @ id) = $true)) | ~! [X370 : subst,X371 : subst,X372 : subst,X373 : term] : (((X358 @ X371 @ X373 @ (comp @ X370 @ X372)) = $true) | ($true != (X358 @ (comp @ X371 @ X370) @ (sub @ X373 @ X370) @ X372))) | ~! [X366 : subst,X367 : subst,X368 : subst,X369 : term] : (($true = (X358 @ (comp @ X368 @ X366) @ (sub @ X369 @ X366) @ X367)) | ($true != (X358 @ X368 @ X369 @ (comp @ X366 @ X367)))))) & ((! [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) = X168) => (! [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) = X169) => (! [X171 : subst] : ((comp @ X171 @ id) = X171) => (! [X172 : term,X173 : term > $o] : (~! [X176 : term,X177 : term] : (($true != (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true) | ($true != (X173 @ X176))) | ~! [X175 : term] : (($true != (var @ X175)) | ((X173 @ X175) = $true)) | ~! [X174 : term] : (((X173 @ X174) != $true) | ($true = (X173 @ (lam @ X174)))) | ($true = (X173 @ X172))) => ! [X178 : subst,X179 : term > $o,X180 : term] : (~! [X182 : term,X183 : term] : (($true != (X179 @ X183)) | ($true = (X179 @ (ap @ X183 @ X182))) | ($true != (X179 @ X182))) | ($true = (X179 @ (sub @ X180 @ X178))) | ~! [X181 : term] : (($true != (var @ X181)) | ($true = (X179 @ (sub @ X181 @ X178)))) | ~! [X184 : term] : (($true = (X179 @ (lam @ X184))) | ~! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ($true != (X179 @ X185))))))))) <=> (induction2lem_lthm = $true)) & ((induction2_lthm = $true) <=> (! [X64 : term] : ((sub @ X64 @ id) = X64) => (! [X65 : subst,X66 : term > $o,X67 : term] : (~! [X70 : term] : (~! [X71 : term] : (($true != (X66 @ X71)) | ($true = (X66 @ (sub @ X70 @ (push @ X71 @ id))))) | ($true = (X66 @ (lam @ X70)))) | ~! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ((X66 @ X68) != $true) | ((X66 @ X69) != $true)) | ($true = (X66 @ (sub @ X67 @ X65))) | ~! [X72 : term] : (((var @ X72) != $true) | ($true = (X66 @ (sub @ X72 @ X65))))) => ! [X73 : term,X74 : term > $o] : (($true = (X74 @ X73)) | ~! [X77 : term] : (($true = (X74 @ X77)) | ($true != (var @ X77))) | ~! [X75 : term] : (~! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ($true != (X74 @ X76))) | ($true = (X74 @ (lam @ X75)))) | ~! [X78 : term,X79 : term] : (($true != (X74 @ X79)) | ($true != (X74 @ X78)) | ((X74 @ (ap @ X79 @ X78)) = $true)))))) & ((hoasinduction_lem2 = $true) <=> ! [X234 : term,X235 : subst > term > subst > $o,X236 : term] : (($true != (X235 @ id @ X234 @ id)) | ~! [X241 : term,X242 : term] : (($true != (X235 @ id @ X242 @ id)) | ((X235 @ id @ X241 @ id) != $true) | ($true = (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id))) | ($true = (X235 @ id @ (ap @ X234 @ X236) @ id)) | ~! [X237 : subst,X238 : subst,X239 : term,X240 : subst] : (($true = (X235 @ (comp @ X237 @ X240) @ (sub @ X239 @ X240) @ X238)) | ($true != (X235 @ X237 @ X239 @ (comp @ X240 @ X238)))) | ($true != (X235 @ id @ X236 @ id)) | ~! [X243 : term,X244 : subst,X245 : subst,X246 : subst] : (($true != (X235 @ (comp @ X244 @ X246) @ (sub @ X243 @ X246) @ X245)) | ($true = (X235 @ X244 @ X243 @ (comp @ X246 @ X245)))))) & (axabs = $true) & ((induction2 = $true) <=> ! [X458 : term,X459 : term > $o] : (~! [X460 : term] : (~! [X461 : term] : (($true != (X459 @ X461)) | ($true = (X459 @ (sub @ X460 @ (push @ X461 @ id))))) | ((X459 @ (lam @ X460)) = $true)) | ~! [X462 : term,X463 : term] : (((X459 @ X462) != $true) | ($true != (X459 @ X463)) | ($true = (X459 @ (ap @ X463 @ X462)))) | ~! [X464 : term] : (((X459 @ X464) = $true) | ($true != (var @ X464))) | ((X459 @ X458) = $true))) & ((shinj = $true) <=> ! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449))) & (apnotvar = $true) & ((hoasinduction_lem3 = $true) <=> ! [X309 : subst > term > subst > $o,X310 : term] : (~! [X312 : term,X313 : subst,X314 : subst,X315 : subst] : (($true = (X309 @ (comp @ X315 @ X313) @ (sub @ X312 @ X313) @ X314)) | ($true != (X309 @ X315 @ X312 @ (comp @ X313 @ X314)))) | ($true = (X309 @ id @ (lam @ X310) @ id)) | ~! [X311 : term] : (($true = (X309 @ id @ (sub @ X310 @ (push @ X311 @ id)) @ id)) | ((X309 @ id @ X311 @ id) != $true)) | ~! [X316 : subst > term > term] : (($true = (X309 @ id @ (lam @ (X316 @ sh @ one)) @ id)) | ~! [X317 : term] : (((X309 @ id @ X317 @ id) != $true) | ($true = (X309 @ id @ (X316 @ id @ X317) @ id))) | ~! [X318 : term,X319 : subst,X320 : subst] : ((sub @ (X316 @ X320 @ X318) @ X319) = (X316 @ (comp @ X320 @ X319) @ (sub @ X318 @ X319)))) | ~! [X321 : subst,X322 : term,X323 : subst,X324 : subst] : (($true != (X309 @ (comp @ X324 @ X321) @ (sub @ X322 @ X321) @ X323)) | ($true = (X309 @ X324 @ X322 @ (comp @ X321 @ X323)))))) & (hoaslamnotap_gthm = $true) & ((! [X514 : term] : ((sub @ X514 @ id) = X514) => (! [X515 : term,X516 : subst > term > subst > $o] : (~! [X522 : term] : (($true = (X516 @ id @ (sub @ X515 @ (push @ X522 @ id)) @ id)) | ($true != (X516 @ id @ X522 @ id))) | ~! [X517 : subst > term > term] : (~! [X518 : term] : (((X516 @ id @ (X517 @ id @ X518) @ id) = $true) | ($true != (X516 @ id @ X518 @ id))) | ~! [X519 : subst,X520 : term,X521 : subst] : ((X517 @ (comp @ X521 @ X519) @ (sub @ X520 @ X519)) = (sub @ (X517 @ X521 @ X520) @ X519)) | ((X516 @ id @ (lam @ (X517 @ sh @ one)) @ id) = $true)) | ((X516 @ id @ (lam @ (sub @ X515 @ (push @ one @ sh))) @ id) = $true)) => ! [X523 : term,X524 : subst > term > subst > $o] : (~! [X538 : term] : (($true = (X524 @ id @ (sub @ X523 @ (push @ X538 @ id)) @ id)) | ($true != (X524 @ id @ X538 @ id))) | ((X524 @ id @ (lam @ X523) @ id) = $true) | ~! [X529 : term,X530 : subst,X531 : subst,X532 : subst] : (($true = (X524 @ (comp @ X532 @ X530) @ (sub @ X529 @ X530) @ X531)) | ($true != (X524 @ X532 @ X529 @ (comp @ X530 @ X531)))) | ~! [X533 : subst > term > term] : (~! [X534 : term] : (($true = (X524 @ id @ (X533 @ id @ X534) @ id)) | ($true != (X524 @ id @ X534 @ id))) | ($true = (X524 @ id @ (lam @ (X533 @ sh @ one)) @ id)) | ~! [X535 : subst,X536 : term,X537 : subst] : ((sub @ (X533 @ X537 @ X536) @ X535) = (X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535)))) | ~! [X525 : term,X526 : subst,X527 : subst,X528 : subst] : (($true != (X524 @ (comp @ X527 @ X526) @ (sub @ X525 @ X526) @ X528)) | ((X524 @ X527 @ X525 @ (comp @ X526 @ X528)) = $true))))) <=> (hoasinduction_lem3_lthm = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X121 : subst > term > subst > $o] : ~! [X122 : term > $o] : ~! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123)) <=> (hoasinduction_lem0 = $true)) & ((! [X268 : term] : ~! [X269 : subst > term > term] : ~! [X270 : subst,X271 : term] : ((sub @ X268 @ (push @ X271 @ X270)) = (X269 @ X270 @ X271)) => (! [X272 : term] : ((sub @ X272 @ id) = X272) => ! [X273 : term,X274 : term > $o,X275 : subst > term > subst > $o] : (~! [X276 : term] : ((X274 @ X276) = (X275 @ id @ X276 @ id)) | ~! [X278 : subst > term > term] : (($true = (X275 @ id @ (lam @ (X278 @ sh @ one)) @ id)) | ~! [X282 : term] : (((X275 @ id @ (X278 @ id @ X282) @ id) = $true) | ((X275 @ id @ X282 @ id) != $true)) | ~! [X279 : subst,X280 : subst,X281 : term] : ((X278 @ (comp @ X280 @ X279) @ (sub @ X281 @ X279)) = (sub @ (X278 @ X280 @ X281) @ X279))) | ((X274 @ (lam @ X273)) = $true) | ~! [X277 : term] : (($true = (X274 @ (sub @ X273 @ (push @ X277 @ id)))) | ((X274 @ X277) != $true))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((d2subst @ d_id) = sh) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) <=> (axscons = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X247 : term,X248 : subst > term > subst > $o] : (~! [X249 : subst > term > term] : (~! [X251 : subst,X252 : term,X253 : subst] : ((sub @ (X249 @ X253 @ X252) @ X251) = (X249 @ (comp @ X253 @ X251) @ (sub @ X252 @ X251))) | ((X248 @ id @ (lam @ (X249 @ sh @ one)) @ id) = $true) | ~! [X250 : term] : (($true = (X248 @ id @ (X249 @ id @ X250) @ id)) | ($true != (X248 @ id @ X250 @ id)))) | ~! [X254 : term,X255 : term] : (($true != (X248 @ id @ X254 @ id)) | ($true != (X248 @ id @ X255 @ id)) | ($true = (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id)))) & (induction2_gthm = $true) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (~! [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) = (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) <=> (hoaslamnotap = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ~! [X120 : term] : (($true = (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id)) | ($true != (X113 @ id @ X120 @ id))) | ~! [X115 : subst > term > term] : (($true = (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id)) | ~! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) | ~! [X116 : term] : (($true != (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id)))))) & ((termmset = $true) <=> ! [X355 : term] : ((sub @ X355 @ id) = X355)) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X325 : subst > term > subst > $o] : ~! [X326 : term > $o] : ~! [X327 : term] : ((X325 @ id @ X327 @ id) = (X326 @ X327)) => (! [X328 : term > $o,X329 : term] : (~! [X331 : term] : (~! [X332 : term] : (($true != (X328 @ X332)) | ($true = (X328 @ (sub @ X331 @ (push @ X332 @ id))))) | ((X328 @ (lam @ X331)) = $true)) | ~! [X330 : term] : (($true != (var @ X330)) | ($true = (X328 @ X330))) | ($true = (X328 @ X329)) | ~! [X333 : term,X334 : term] : (($true != (X328 @ X334)) | ($true != (X328 @ X333)) | ((X328 @ (ap @ X333 @ X334)) = $true))) => (! [X335 : term] : ((sub @ X335 @ id) = X335) => (! [X336 : subst > term > subst > $o,X337 : term > $o,X338 : term] : (~! [X344 : term] : (($true = (X337 @ (sub @ X338 @ (push @ X344 @ id)))) | ($true != (X337 @ X344))) | ~! [X339 : subst > term > term] : (~! [X341 : subst,X342 : subst,X343 : term] : ((sub @ (X339 @ X341 @ X343) @ X342) = (X339 @ (comp @ X341 @ X342) @ (sub @ X343 @ X342))) | ~! [X340 : term] : (($true != (X336 @ id @ X340 @ id)) | ($true = (X336 @ id @ (X339 @ id @ X340) @ id))) | ($true = (X336 @ id @ (lam @ (X339 @ sh @ one)) @ id))) | ~! [X345 : term] : ((X336 @ id @ X345 @ id) = (X337 @ X345)) | ((X337 @ (lam @ X338)) = $true)) => ! [X346 : term,X347 : subst > term > subst > $o] : (((X347 @ id @ X346 @ id) = $true) | ~! [X350 : subst > term > term] : (~! [X354 : term] : (((X347 @ id @ (X350 @ id @ X354) @ id) = $true) | ($true != (X347 @ id @ X354 @ id))) | ~! [X351 : term,X352 : subst,X353 : subst] : ((X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352)) = (sub @ (X350 @ X353 @ X351) @ X352)) | ((X347 @ id @ (lam @ (X350 @ sh @ one)) @ id) = $true)) | ~! [X348 : term,X349 : term] : (($true != (X347 @ id @ X348 @ id)) | ($true != (X347 @ id @ X349 @ id)) | ((X347 @ id @ (ap @ (sub @ X348 @ id) @ X349) @ id) = $true)))))))) & ! [X56 : d_subst,X57 : d_subst] : (((d2subst @ X56) = (d2subst @ X57)) => (X56 = X57)) & (pushprop_lem3v2_lthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X124 : term] : ((sub @ X124 @ id) = X124) => (! [X125 : term,X126 : subst > term > subst > $o] : (($true = (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) | ~! [X127 : term] : (($true != (X126 @ id @ X127 @ id)) | ($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id))) | ~! [X128 : subst > term > term] : (~! [X132 : term] : (($true != (X126 @ id @ X132 @ id)) | ($true = (X126 @ id @ (X128 @ id @ X132) @ id))) | ($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id)) | ~! [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) = (sub @ (X128 @ X129 @ X131) @ X130)))) => ! [X133 : subst > term > subst > $o,X134 : term] : (~! [X135 : subst > term > term] : (~! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) | ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) = $true) | ~! [X136 : term] : (($true = (X133 @ id @ (X135 @ id @ X136) @ id)) | ($true != (X133 @ id @ X136 @ id)))) | ~! [X140 : term] : (($true = (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id)) | ($true != (X133 @ id @ X140 @ id))) | ((X133 @ id @ (lam @ X134) @ id) = $true))))) & (ulamvarind = $true) & (hoasinduction_lem3a_gthm = $true) & (pushprop_lem3v2 = $true) & (substmonoid_gthm = $true) & ((laminj = $true) <=> ! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308))) & (ulamvar1 != $true) & (axapp = $true) & (hoasinduction_lem1_lthm = $true) & (pushprop_lem2v2 = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((axidr = $true) <=> ! [X374 : subst] : ((comp @ X374 @ id) = X374)) & (pushprop_lem1v2_gthm = $true) & (hoaslamnotap_lthm = $true) & (pushprop_lem2v2_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58) & ! [X513 : d_term] : (d_one = X513) & (hoasinduction_lem2_gthm = $true) & (lamnotvar = $true) & ((substmonoid_lthm = $true) <=> (! [X60 : subst] : ((comp @ id @ X60) = X60) => (! [X61 : subst] : ((comp @ X61 @ id) = X61) => (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62))))) & (hoaslaminj_gthm = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (~! [X84 : term] : (($true != (X83 @ X84)) | ($true = (X83 @ (sub @ X81 @ (push @ X84 @ id))))) | ~! [X86 : subst > term > term] : (~! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) | ~! [X90 : term] : (($true = (X82 @ id @ (X86 @ id @ X90) @ id)) | ($true != (X82 @ id @ X90 @ id))) | ((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) = $true)) | ($true = (X83 @ (lam @ X81))) | ~! [X85 : term] : ((X83 @ X85) = (X82 @ id @ X85 @ id)))) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) <=> (axshiftcons = $true)) & ((pushprop_lem1_lthm = $true) <=> (! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) => (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) => ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ($true != (X37 @ X36)))))) & (! [X5 : term > $o,X6 : term] : (~! [X10 : term] : (($true != (var @ X10)) | ($true = (X5 @ X10))) | ~! [X7 : term] : (($true != (X5 @ X7)) | ((X5 @ (lam @ X7)) = $true)) | ($true = (X5 @ X6)) | ~! [X8 : term,X9 : term] : (($true = (X5 @ (ap @ X9 @ X8))) | ((X5 @ X9) != $true) | ($true != (X5 @ X8)))) <=> (induction = $true)) & ((d2subst @ d_id) = id) & ((substmonoid = $true) <=> (! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209))) & (pushprop_lthm_orig = $true) & (! [X303 : term] : ~! [X304 : subst > term > term] : ~! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (($true = (X43 @ (ap @ X42 @ X44))) | ~! [X45 : term,X46 : term] : (($true != (X41 @ id @ X45 @ id)) | ($true = (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id)) | ($true != (X41 @ id @ X46 @ id))) | ~! [X47 : term] : ((X43 @ X47) = (X41 @ id @ X47 @ id)) | ($true != (X43 @ X44)) | ($true != (X43 @ X42)) | ~! [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true = (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) | ((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) != $true)) | ~! [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true != (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55)) | ($true = (X41 @ X53 @ X54 @ (comp @ X52 @ X55))))) <=> (hoasinduction_lem2v2 = $true)) & (hoasapnotvar_lthm = $true) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((apinj2 = $true) <=> ! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257)))) & (lamnotap != $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem2_lthm = $true) & ((induction2lem = $true) <=> ! [X260 : subst,X261 : term,X262 : term > $o] : (($true = (X262 @ (sub @ X261 @ X260))) | ~! [X266 : term] : (~! [X267 : term] : (($true = (X262 @ (sub @ X266 @ (push @ X267 @ id)))) | ($true != (X262 @ X267))) | ($true = (X262 @ (lam @ X266)))) | ~! [X263 : term,X264 : term] : (($true != (X262 @ X264)) | ($true != (X262 @ X263)) | ($true = (X262 @ (ap @ X263 @ X264)))) | ~! [X265 : term] : (($true = (X262 @ (sub @ X265 @ X260))) | ($true != (var @ X265))))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem1_gthm = $true) & (induction2lem_gthm = $true) & ((hoasapinj1_lthm = $true) <=> (! [X504 : term] : ((sub @ X504 @ id) = X504) => (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 = X506) | ((ap @ X506 @ X508) != (ap @ X505 @ X507))) => ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511)))))) & (hoaslamnotvar = $true) & ((hoasapinj2_lthm = $true) <=> (! [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) != (ap @ X296 @ X295)) | (X295 = X298)) => ! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)))) & ((hoasinduction_lem3b = $true) <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh)))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X283 : term] : ~! [X284 : subst > term > term] : ((X284 @ sh @ one) != (sub @ X283 @ (push @ one @ sh)))) & ! [X105 : d_subst] : (d_id = X105) & (hoasinduction_gthm = $true) & (hoasinduction_lem1v2 = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107) => ! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (~! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112)) | ($true != (X109 @ X108)) | ($true = (X110 @ one))))) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X15 : subst > term > subst > $o,X16 : term] : (($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id)) | ~! [X17 : term,X18 : subst > term > term] : (($true = (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) | ~! [X19 : term] : (($true != (X15 @ id @ X19 @ id)) | ($true = (X15 @ id @ (X18 @ id @ X19) @ id))) | ~! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24))))) | ~! [X26 : term] : (($true != (X15 @ id @ X26 @ id)) | ($true = (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)))) <=> (hoasinduction_lem3aaa = $true)) & (pushprop_lem1_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true != (X145 @ X146)) | ($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))))) & (pushprop_gthm = $true) & (axmap = $true) & ((termmset_lthm = $true) <=> (! [X293 : term] : ((sub @ X293 @ id) = X293) => ! [X294 : term] : ((sub @ X294 @ id) = X294))) & ((var @ (d2term @ d_one)) != $true) & (! [X0 : term,X1 : term > $o,X2 : subst] : ~! [X3 : term > $o] : ~! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) <=> (hoasapinj1 = $true)) & (! [X385 : term] : ~! [X386 : subst > term > term] : ~! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388)) <=> (hoasinduction_lem3v2_f = $true)) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X186 : subst > term > subst > $o] : ~! [X187 : term > $o] : ~! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188))) & (hoasapnotvar_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ! [X207 : d_term,X208 : d_term] : (((d2term @ X208) = (d2term @ X207)) => (X207 = X208)) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & ((hoasinduction_lthm = $true) <=> (! [X389 : term,X390 : term > $o] : (~! [X391 : term] : (((X390 @ (lam @ X391)) = $true) | ~! [X392 : term] : (($true = (X390 @ (sub @ X391 @ (push @ X392 @ id)))) | ((X390 @ X392) != $true))) | ($true = (X390 @ X389)) | ~! [X393 : term,X394 : term] : (($true != (X390 @ X393)) | ($true = (X390 @ (ap @ X393 @ X394))) | ((X390 @ X394) != $true)) | ~! [X395 : term] : (($true != (var @ X395)) | ($true = (X390 @ X395)))) => (! [X396 : term,X397 : term,X398 : subst > term > subst > $o] : (($true = (X398 @ id @ (ap @ X396 @ X397) @ id)) | ~! [X403 : term,X404 : term] : (((X398 @ id @ X404 @ id) != $true) | ($true = (X398 @ id @ (ap @ (sub @ X404 @ id) @ X403) @ id)) | ((X398 @ id @ X403 @ id) != $true)) | ((X398 @ id @ X396 @ id) != $true) | ~! [X405 : term,X406 : subst,X407 : subst,X408 : subst] : (($true != (X398 @ (comp @ X407 @ X408) @ (sub @ X405 @ X408) @ X406)) | ($true = (X398 @ X407 @ X405 @ (comp @ X408 @ X406)))) | ~! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X398 @ X401 @ X402 @ (comp @ X400 @ X399))) | ($true = (X398 @ (comp @ X401 @ X400) @ (sub @ X402 @ X400) @ X399))) | ($true != (X398 @ id @ X397 @ id))) => (! [X409 : term,X410 : subst > term > subst > $o] : (~! [X417 : subst,X418 : subst,X419 : subst,X420 : term] : (($true != (X410 @ X417 @ X420 @ (comp @ X418 @ X419))) | ($true = (X410 @ (comp @ X417 @ X418) @ (sub @ X420 @ X418) @ X419))) | ($true = (X410 @ id @ (lam @ X409) @ id)) | ~! [X411 : subst > term > term] : (~! [X412 : subst,X413 : subst,X414 : term] : ((X411 @ (comp @ X412 @ X413) @ (sub @ X414 @ X413)) = (sub @ (X411 @ X412 @ X414) @ X413)) | ($true = (X410 @ id @ (lam @ (X411 @ sh @ one)) @ id)) | ~! [X415 : term] : (((X410 @ id @ (X411 @ id @ X415) @ id) = $true) | ((X410 @ id @ X415 @ id) != $true))) | ~! [X416 : term] : (($true != (X410 @ id @ X416 @ id)) | ($true = (X410 @ id @ (sub @ X409 @ (push @ X416 @ id)) @ id))) | ~! [X421 : subst,X422 : subst,X423 : subst,X424 : term] : (((X410 @ (comp @ X422 @ X421) @ (sub @ X424 @ X421) @ X423) != $true) | ((X410 @ X422 @ X424 @ (comp @ X421 @ X423)) = $true))) => ! [X425 : subst > term > subst > $o,X426 : term] : (~! [X432 : term,X433 : term] : (($true != (X425 @ id @ X432 @ id)) | ((X425 @ id @ X433 @ id) != $true) | ($true = (X425 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id))) | ~! [X427 : subst,X428 : subst,X429 : subst,X430 : term] : (($true = (X425 @ X429 @ X430 @ (comp @ X428 @ X427))) | ((X425 @ (comp @ X429 @ X428) @ (sub @ X430 @ X428) @ X427) != $true)) | ($true = (X425 @ id @ X426 @ id)) | ~! [X434 : subst > term > term] : (~! [X438 : term] : (($true != (X425 @ id @ X438 @ id)) | ($true = (X425 @ id @ (X434 @ id @ X438) @ id))) | ($true = (X425 @ id @ (lam @ (X434 @ sh @ one)) @ id)) | ~! [X435 : subst,X436 : term,X437 : subst] : ((X434 @ (comp @ X437 @ X435) @ (sub @ X436 @ X435)) = (sub @ (X434 @ X437 @ X436) @ X435))) | ~! [X439 : subst,X440 : term,X441 : subst,X442 : subst] : (($true = (X425 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442) @ X439)) | ((X425 @ X441 @ X440 @ (comp @ X442 @ X439)) != $true)) | ~! [X431 : term] : (((X425 @ id @ X431 @ id) = $true) | ($true != (var @ (sub @ X431 @ id))))))))) & ((hoasinduction_lem3aa = $true) <=> ! [X375 : subst > term > subst > $o,X376 : term] : (~! [X382 : term] : (((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) = $true) | ($true != (X375 @ id @ X382 @ id))) | ~! [X377 : subst > term > term] : (~! [X378 : term] : (($true != (X375 @ id @ X378 @ id)) | ((X375 @ id @ (X377 @ id @ X378) @ id) = $true)) | ($true = (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id)) | ~! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381))) | ($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id))))),
% 6.47/2.17    inference(flattening,[status(thm)],[f10])).
% 6.47/2.17  thf(f10,plain,(
% 6.47/2.17    (! [X0 : term,X1 : term > $o,X2 : subst] : ~! [X3 : term > $o] : ~! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X5 : term > $o,X6 : term] : (~! [X7 : term] : (((X5 @ (lam @ X7)) = $true) | ~($true = (X5 @ X7))) | ~! [X8 : term,X9 : term] : (~($true = (X5 @ X8)) | ($true = (X5 @ (ap @ X9 @ X8))) | ~((X5 @ X9) = $true)) | ~! [X10 : term] : (($true = (X5 @ X10)) | ~($true = (var @ X10))) | ($true = (X5 @ X6))) <=> (induction = $true)) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X15 : subst > term > subst > $o,X16 : term] : (~! [X17 : term,X18 : subst > term > term] : (~! [X19 : term] : (($true = (X15 @ id @ (X18 @ id @ X19) @ id)) | ~($true = (X15 @ id @ X19 @ id))) | ~! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) | ~! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) | ($true = (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id))) | ($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id)) | ~! [X26 : term] : (($true = (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)) | ~($true = (X15 @ id @ X26 @ id))))) & (hoasapinj2_gthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (~! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ~($true = (X27 @ X28)) | ($true = (X29 @ one)))) & ((! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) => (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) => ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ~($true = (X37 @ X36))))) <=> (pushprop_lem1_lthm = $true)) & (! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (~($true = (X43 @ X44)) | ~! [X45 : term,X46 : term] : (~($true = (X41 @ id @ X46 @ id)) | ~($true = (X41 @ id @ X45 @ id)) | ($true = (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id))) | ~! [X47 : term] : ((X43 @ X47) = (X41 @ id @ X47 @ id)) | ~! [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true = (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) | ~((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) = $true)) | ~($true = (X43 @ X42)) | ~! [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true = (X41 @ X53 @ X54 @ (comp @ X52 @ X55))) | ~($true = (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55))) | ($true = (X43 @ (ap @ X42 @ X44)))) <=> (hoasinduction_lem2v2 = $true)) & ! [X56 : d_subst,X57 : d_subst] : (((d2subst @ X56) = (d2subst @ X57)) => (X56 = X57)) & ~((var @ (d2term @ d_one)) = $true) & (pushprop_lem1v2_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58) & (induction2lem_gthm = $true) & ~(lamnotap = $true) & ((substmonoid_lthm = $true) <=> (! [X60 : subst] : ((comp @ id @ X60) = X60) => (! [X61 : subst] : ((comp @ X61 @ id) = X61) => (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62))))) & (ulamvarind = $true) & ((induction2_lthm = $true) <=> (! [X64 : term] : ((sub @ X64 @ id) = X64) => (! [X65 : subst,X66 : term > $o,X67 : term] : (~! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ~((X66 @ X68) = $true) | ~((X66 @ X69) = $true)) | ~! [X70 : term] : (~! [X71 : term] : (~($true = (X66 @ X71)) | ($true = (X66 @ (sub @ X70 @ (push @ X71 @ id))))) | ($true = (X66 @ (lam @ X70)))) | ($true = (X66 @ (sub @ X67 @ X65))) | ~! [X72 : term] : (($true = (X66 @ (sub @ X72 @ X65))) | ~((var @ X72) = $true))) => ! [X73 : term,X74 : term > $o] : (~! [X75 : term] : (($true = (X74 @ (lam @ X75))) | ~! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ~($true = (X74 @ X76)))) | ~! [X77 : term] : (($true = (X74 @ X77)) | ~($true = (var @ X77))) | ~! [X78 : term,X79 : term] : (~($true = (X74 @ X78)) | ~($true = (X74 @ X79)) | ((X74 @ (ap @ X79 @ X78)) = $true)) | ($true = (X74 @ X73)))))) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & (axabs = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (~! [X84 : term] : (($true = (X83 @ (sub @ X81 @ (push @ X84 @ id)))) | ~($true = (X83 @ X84))) | ~! [X85 : term] : ((X83 @ X85) = (X82 @ id @ X85 @ id)) | ~! [X86 : subst > term > term] : (((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) = $true) | ~! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) | ~! [X90 : term] : (~($true = (X82 @ id @ X90 @ id)) | ($true = (X82 @ id @ (X86 @ id @ X90) @ id)))) | ($true = (X83 @ (lam @ X81))))) & (hoasinduction_lem2_lthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1_lthm = $true) & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))) | ~! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ~! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100))) <=> (hoaslaminj = $true)) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (hoaslamnotap_lthm = $true) & (pushprop_lem0_gthm = $true) & (one = (d2term @ d_one)) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (hoasinduction_lem2_gthm = $true) & (lamnotvar = $true) & (termmset_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107) => ! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (~($true = (X109 @ X108)) | ($true = (X110 @ one)) | ~! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112)))) <=> (pushprop_lem1v2_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (~! [X115 : subst > term > term] : (~! [X116 : term] : (~($true = (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id))) | ~! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) | ($true = (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id))) | ((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ~! [X120 : term] : (~($true = (X113 @ id @ X120 @ id)) | ($true = (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id))))) & (hoaslamnotvar_gthm = $true) & (! [X121 : subst > term > subst > $o] : ~! [X122 : term > $o] : ~! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123)) <=> (hoasinduction_lem0 = $true)) & (hoasinduction_lem1v2 = $true) & ((! [X124 : term] : ((sub @ X124 @ id) = X124) => (! [X125 : term,X126 : subst > term > subst > $o] : (~! [X127 : term] : (($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id)) | ~($true = (X126 @ id @ X127 @ id))) | ($true = (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) | ~! [X128 : subst > term > term] : (($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id)) | ~! [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) = (sub @ (X128 @ X129 @ X131) @ X130)) | ~! [X132 : term] : (($true = (X126 @ id @ (X128 @ id @ X132) @ id)) | ~($true = (X126 @ id @ X132 @ id))))) => ! [X133 : subst > term > subst > $o,X134 : term] : (~! [X135 : subst > term > term] : (~! [X136 : term] : (~($true = (X133 @ id @ X136 @ id)) | ($true = (X133 @ id @ (X135 @ id @ X136) @ id))) | ~! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) | ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) = $true)) | ~! [X140 : term] : (~($true = (X133 @ id @ X140 @ id)) | ($true = (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id))) | ((X133 @ id @ (lam @ X134) @ id) = $true)))) <=> (hoasinduction_lem3a_lthm = $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotvar_lthm = $true) & (hoasapnotvar_lthm = $true) & ((hoasinduction_lem3b = $true) <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh)))) & (hoaslaminj_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem3v2_lthm = $true) & (axvarshift = $true) & (hoaslamnotap_gthm = $true) & (! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))) | ~($true = (X145 @ X146))) <=> (pushprop_lem1 = $true)) & ((! [X148 : term] : ((sub @ X148 @ id) = X148) => ! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (~! [X152 : term] : (~($true = (X151 @ X152)) | ($true = (X151 @ (sub @ X150 @ (push @ X152 @ id))))) | ~! [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true = (X149 @ X156 @ X154 @ (comp @ X153 @ X155))) | ~($true = (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155))) | ($true = (X151 @ (lam @ X150))) | ~! [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true = (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) | ~($true = (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ~! [X161 : subst > term > term] : (~! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162)) | ~! [X165 : term] : (~($true = (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id))) | ($true = (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id))) | ~! [X166 : term] : ((X149 @ id @ X166 @ id) = (X151 @ X166)))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((! [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) = X168) => (! [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) = X169) => (! [X171 : subst] : ((comp @ X171 @ id) = X171) => (! [X172 : term,X173 : term > $o] : (~! [X174 : term] : (($true = (X173 @ (lam @ X174))) | ~((X173 @ X174) = $true)) | ($true = (X173 @ X172)) | ~! [X175 : term] : (((X173 @ X175) = $true) | ~($true = (var @ X175))) | ~! [X176 : term,X177 : term] : (~($true = (X173 @ X176)) | ~($true = (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true))) => ! [X178 : subst,X179 : term > $o,X180 : term] : (~! [X181 : term] : (~($true = (var @ X181)) | ($true = (X179 @ (sub @ X181 @ X178)))) | ~! [X182 : term,X183 : term] : (~($true = (X179 @ X182)) | ($true = (X179 @ (ap @ X183 @ X182))) | ~($true = (X179 @ X183))) | ($true = (X179 @ (sub @ X180 @ X178))) | ~! [X184 : term] : (($true = (X179 @ (lam @ X184))) | ~! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ~($true = (X179 @ X185))))))))) <=> (induction2lem_lthm = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X186 : subst > term > subst > $o] : ~! [X187 : term > $o] : ~! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188))) & (! [X189 : subst > term > subst > $o,X190 : term] : (~! [X191 : term,X192 : term] : (~($true = (X189 @ id @ X192 @ id)) | ($true = (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id)) | ~((X189 @ id @ X191 @ id) = $true)) | ~! [X193 : subst > term > term] : (~! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) | ($true = (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id)) | ~! [X197 : term] : (($true = (X189 @ id @ (X193 @ id @ X197) @ id)) | ~((X189 @ id @ X197 @ id) = $true))) | ~! [X198 : term] : (($true = (X189 @ id @ X198 @ id)) | ~($true = (var @ (sub @ X198 @ id)))) | ($true = (X189 @ id @ X190 @ id)) | ~! [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true = (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199)) | ~($true = (X189 @ X201 @ X202 @ (comp @ X200 @ X199)))) | ~! [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (~($true = (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206)) | ((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) = $true))) <=> (hoasinduction = $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem2v2_lthm = $true) & ! [X207 : d_term,X208 : d_term] : (((d2term @ X208) = (d2term @ X207)) => (X207 = X208)) & ((substmonoid = $true) <=> (! [X210 : subst] : ((comp @ id @ X210) = X210) & ! [X209 : subst] : ((comp @ X209 @ id) = X209))) & (ulamvarsh = $true) & (induction2_gthm = $true) & (axassoc = $true) & (! [X211 : term,X212 : term,X213 : subst > term > term] : (~! [X214 : subst,X215 : subst,X216 : term] : ((X213 @ (comp @ X214 @ X215) @ (sub @ X216 @ X215)) = (sub @ (X213 @ X214 @ X216) @ X215)) | ((lam @ (X213 @ sh @ one)) != (ap @ (sub @ X212 @ id) @ X211))) <=> (hoaslamnotap = $true)) & (hoasinduction_lem3a_gthm = $true) & (! [X217 : subst] : ((push @ (sub @ one @ X217) @ (comp @ sh @ X217)) = X217) <=> (axscons = $true)) & ((! [X218 : subst,X219 : term] : ((sub @ one @ (push @ X219 @ X218)) = X219) => (! [X220 : subst,X221 : term] : ((comp @ sh @ (push @ X221 @ X220)) = X220) => (! [X222 : term,X223 : term] : (((lam @ X223) != (lam @ X222)) | (X222 = X223)) => ! [X224 : subst > term > term,X225 : subst > term > term,X226 : term,X227 : subst] : (((X225 @ X227 @ X226) = (X224 @ X227 @ X226)) | ~! [X231 : subst,X232 : subst,X233 : term] : ((X225 @ (comp @ X232 @ X231) @ (sub @ X233 @ X231)) = (sub @ (X225 @ X232 @ X233) @ X231)) | ~! [X228 : subst,X229 : term,X230 : subst] : ((X224 @ (comp @ X228 @ X230) @ (sub @ X229 @ X230)) = (sub @ (X224 @ X228 @ X229) @ X230)) | ((lam @ (X225 @ sh @ one)) != (lam @ (X224 @ sh @ one))))))) <=> (hoaslaminj_lthm = $true)) & ((hoasinduction_lem2 = $true) <=> ! [X234 : term,X235 : subst > term > subst > $o,X236 : term] : (($true = (X235 @ id @ (ap @ X234 @ X236) @ id)) | ~! [X237 : subst,X238 : subst,X239 : term,X240 : subst] : (($true = (X235 @ (comp @ X237 @ X240) @ (sub @ X239 @ X240) @ X238)) | ~($true = (X235 @ X237 @ X239 @ (comp @ X240 @ X238)))) | ~($true = (X235 @ id @ X236 @ id)) | ~! [X241 : term,X242 : term] : (~((X235 @ id @ X241 @ id) = $true) | ($true = (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id)) | ~($true = (X235 @ id @ X242 @ id))) | ~($true = (X235 @ id @ X234 @ id)) | ~! [X243 : term,X244 : subst,X245 : subst,X246 : subst] : (~($true = (X235 @ (comp @ X244 @ X246) @ (sub @ X243 @ X246) @ X245)) | ($true = (X235 @ X244 @ X243 @ (comp @ X246 @ X245)))))) & ~(ulamvar1 = $true) & (axapp = $true) & (! [X247 : term,X248 : subst > term > subst > $o] : (~! [X249 : subst > term > term] : (((X248 @ id @ (lam @ (X249 @ sh @ one)) @ id) = $true) | ~! [X250 : term] : (~($true = (X248 @ id @ X250 @ id)) | ($true = (X248 @ id @ (X249 @ id @ X250) @ id))) | ~! [X251 : subst,X252 : term,X253 : subst] : ((sub @ (X249 @ X253 @ X252) @ X251) = (X249 @ (comp @ X253 @ X251) @ (sub @ X252 @ X251)))) | ~! [X254 : term,X255 : term] : (~($true = (X248 @ id @ X254 @ id)) | ~($true = (X248 @ id @ X255 @ id)) | ($true = (X248 @ id @ (ap @ (sub @ X255 @ id) @ X254) @ id))) | ($true = (X248 @ id @ X247 @ id))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((apinj2 = $true) <=> ! [X256 : term,X257 : term,X258 : term,X259 : term] : ((X256 = X257) | ((ap @ X258 @ X256) != (ap @ X259 @ X257)))) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem = $true) <=> ! [X260 : subst,X261 : term,X262 : term > $o] : (~! [X263 : term,X264 : term] : (($true = (X262 @ (ap @ X263 @ X264))) | ~($true = (X262 @ X264)) | ~($true = (X262 @ X263))) | ~! [X265 : term] : (~($true = (var @ X265)) | ($true = (X262 @ (sub @ X265 @ X260)))) | ($true = (X262 @ (sub @ X261 @ X260))) | ~! [X266 : term] : (($true = (X262 @ (lam @ X266))) | ~! [X267 : term] : (~($true = (X262 @ X267)) | ($true = (X262 @ (sub @ X266 @ (push @ X267 @ id)))))))) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X268 : term] : ~! [X269 : subst > term > term] : ~! [X270 : subst,X271 : term] : ((sub @ X268 @ (push @ X271 @ X270)) = (X269 @ X270 @ X271)) => (! [X272 : term] : ((sub @ X272 @ id) = X272) => ! [X273 : term,X274 : term > $o,X275 : subst > term > subst > $o] : (~! [X276 : term] : ((X274 @ X276) = (X275 @ id @ X276 @ id)) | ((X274 @ (lam @ X273)) = $true) | ~! [X277 : term] : (~((X274 @ X277) = $true) | ($true = (X274 @ (sub @ X273 @ (push @ X277 @ id))))) | ~! [X278 : subst > term > term] : (($true = (X275 @ id @ (lam @ (X278 @ sh @ one)) @ id)) | ~! [X279 : subst,X280 : subst,X281 : term] : ((X278 @ (comp @ X280 @ X279) @ (sub @ X281 @ X279)) = (sub @ (X278 @ X280 @ X281) @ X279)) | ~! [X282 : term] : (~((X275 @ id @ X282 @ id) = $true) | ((X275 @ id @ (X278 @ id @ X282) @ id) = $true))))))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X283 : term] : ~! [X284 : subst > term > term] : ((X284 @ sh @ one) != (sub @ X283 @ (push @ one @ sh)))) & (hoasinduction_lem1 = $true) & (! [X285 : term,X286 : subst] : ((comp @ sh @ (push @ X285 @ X286)) = X286) <=> (axshiftcons = $true)) & (! [X287 : term,X288 : term,X289 : term,X290 : term] : (((ap @ (sub @ X289 @ id) @ X288) != (ap @ (sub @ X287 @ id) @ X290)) | (X287 = X289)) <=> (hoasapinj1 = $true)) & (hoasapnotvar = $true) & (! [X291 : term,X292 : subst] : ((sub @ one @ (push @ X291 @ X292)) = X291) <=> (axvarcons = $true)) & ((d2subst @ d_id) = id) & (pushprop = $true) & ((termmset_lthm = $true) <=> (! [X293 : term] : ((sub @ X293 @ id) = X293) => ! [X294 : term] : ((sub @ X294 @ id) = X294))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X295 : term,X296 : term,X297 : term,X298 : term] : (((ap @ X297 @ X298) != (ap @ X296 @ X295)) | (X295 = X298)) => ! [X299 : term,X300 : term,X301 : term,X302 : term] : (((ap @ (sub @ X299 @ id) @ X300) != (ap @ (sub @ X301 @ id) @ X302)) | (X300 = X302)))) & (! [X303 : term] : ~! [X304 : subst > term > term] : ~! [X305 : subst,X306 : term] : ((sub @ X303 @ (push @ X306 @ X305)) = (X304 @ X305 @ X306)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((laminj = $true) <=> ! [X307 : term,X308 : term] : (((lam @ X307) != (lam @ X308)) | (X307 = X308))) & ((hoasinduction_lem3 = $true) <=> ! [X309 : subst > term > subst > $o,X310 : term] : (~! [X311 : term] : (~((X309 @ id @ X311 @ id) = $true) | ($true = (X309 @ id @ (sub @ X310 @ (push @ X311 @ id)) @ id))) | ~! [X312 : term,X313 : subst,X314 : subst,X315 : subst] : (~($true = (X309 @ X315 @ X312 @ (comp @ X313 @ X314))) | ($true = (X309 @ (comp @ X315 @ X313) @ (sub @ X312 @ X313) @ X314))) | ~! [X316 : subst > term > term] : (~! [X317 : term] : (($true = (X309 @ id @ (X316 @ id @ X317) @ id)) | ~((X309 @ id @ X317 @ id) = $true)) | ($true = (X309 @ id @ (lam @ (X316 @ sh @ one)) @ id)) | ~! [X318 : term,X319 : subst,X320 : subst] : ((sub @ (X316 @ X320 @ X318) @ X319) = (X316 @ (comp @ X320 @ X319) @ (sub @ X318 @ X319)))) | ($true = (X309 @ id @ (lam @ X310) @ id)) | ~! [X321 : subst,X322 : term,X323 : subst,X324 : subst] : (($true = (X309 @ X324 @ X322 @ (comp @ X321 @ X323))) | ~($true = (X309 @ (comp @ X324 @ X321) @ (sub @ X322 @ X321) @ X323))))) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X325 : subst > term > subst > $o] : ~! [X326 : term > $o] : ~! [X327 : term] : ((X325 @ id @ X327 @ id) = (X326 @ X327)) => (! [X328 : term > $o,X329 : term] : (~! [X330 : term] : (~($true = (var @ X330)) | ($true = (X328 @ X330))) | ~! [X331 : term] : (((X328 @ (lam @ X331)) = $true) | ~! [X332 : term] : (($true = (X328 @ (sub @ X331 @ (push @ X332 @ id)))) | ~($true = (X328 @ X332)))) | ($true = (X328 @ X329)) | ~! [X333 : term,X334 : term] : (~($true = (X328 @ X334)) | ~($true = (X328 @ X333)) | ((X328 @ (ap @ X333 @ X334)) = $true))) => (! [X335 : term] : ((sub @ X335 @ id) = X335) => (! [X336 : subst > term > subst > $o,X337 : term > $o,X338 : term] : (((X337 @ (lam @ X338)) = $true) | ~! [X339 : subst > term > term] : (~! [X340 : term] : (($true = (X336 @ id @ (X339 @ id @ X340) @ id)) | ~($true = (X336 @ id @ X340 @ id))) | ~! [X341 : subst,X342 : subst,X343 : term] : ((sub @ (X339 @ X341 @ X343) @ X342) = (X339 @ (comp @ X341 @ X342) @ (sub @ X343 @ X342))) | ($true = (X336 @ id @ (lam @ (X339 @ sh @ one)) @ id))) | ~! [X344 : term] : (($true = (X337 @ (sub @ X338 @ (push @ X344 @ id)))) | ~($true = (X337 @ X344))) | ~! [X345 : term] : ((X336 @ id @ X345 @ id) = (X337 @ X345))) => ! [X346 : term,X347 : subst > term > subst > $o] : (~! [X348 : term,X349 : term] : (((X347 @ id @ (ap @ (sub @ X348 @ id) @ X349) @ id) = $true) | ~($true = (X347 @ id @ X349 @ id)) | ~($true = (X347 @ id @ X348 @ id))) | ~! [X350 : subst > term > term] : (~! [X351 : term,X352 : subst,X353 : subst] : ((X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352)) = (sub @ (X350 @ X353 @ X351) @ X352)) | ~! [X354 : term] : (~($true = (X347 @ id @ X354 @ id)) | ((X347 @ id @ (X350 @ id @ X354) @ id) = $true)) | ((X347 @ id @ (lam @ (X350 @ sh @ one)) @ id) = $true)) | ((X347 @ id @ X346 @ id) = $true))))))) & (apnotvar = $true) & ((termmset = $true) <=> ! [X355 : term] : ((sub @ X355 @ id) = X355)) & (pushprop_lthm_orig = $true) & (hoasinduction_lem1_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X356 : term,X357 : term > $o,X358 : subst > term > subst > $o] : (~! [X359 : term] : ((X358 @ id @ X359 @ id) = (X357 @ X359)) | ~! [X360 : subst > term > term] : (~! [X361 : term] : (($true = (X358 @ id @ (X360 @ id @ X361) @ id)) | ~($true = (X358 @ id @ X361 @ id))) | ~! [X362 : subst,X363 : term,X364 : subst] : ((X360 @ (comp @ X362 @ X364) @ (sub @ X363 @ X364)) = (sub @ (X360 @ X362 @ X363) @ X364)) | ((X358 @ id @ (lam @ (X360 @ sh @ one)) @ id) = $true)) | ((X357 @ (lam @ X356)) = $true) | ~! [X365 : term] : (~((X357 @ X365) = $true) | ($true = (X357 @ (sub @ X356 @ (push @ X365 @ id))))) | ~! [X366 : subst,X367 : subst,X368 : subst,X369 : term] : (~($true = (X358 @ X368 @ X369 @ (comp @ X366 @ X367))) | ($true = (X358 @ (comp @ X368 @ X366) @ (sub @ X369 @ X366) @ X367))) | ~! [X370 : subst,X371 : subst,X372 : subst,X373 : term] : (((X358 @ X371 @ X373 @ (comp @ X370 @ X372)) = $true) | ~($true = (X358 @ (comp @ X371 @ X370) @ (sub @ X373 @ X370) @ X372))))) & ((axidr = $true) <=> ! [X374 : subst] : ((comp @ X374 @ id) = X374)) & ((hoasinduction_lem3aa = $true) <=> ! [X375 : subst > term > subst > $o,X376 : term] : (~! [X377 : subst > term > term] : (~! [X378 : term] : (((X375 @ id @ (X377 @ id @ X378) @ id) = $true) | ~($true = (X375 @ id @ X378 @ id))) | ~! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381)) | ($true = (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id))) | ($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) | ~! [X382 : term] : (~($true = (X375 @ id @ X382 @ id)) | ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) = $true)))) & (axclos = $true) & (pushprop_lem1_gthm = $true) & (pushprop_gthm = $true) & ! [X383 : subst] : ? [X384 : d_subst] : ((d2subst @ X384) = X383) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem3_gthm = $true) & (! [X385 : term] : ~! [X386 : subst > term > term] : ~! [X387 : subst,X388 : term] : ((sub @ X385 @ (push @ X388 @ X387)) = (X386 @ X387 @ X388)) <=> (hoasinduction_lem3v2_f = $true)) & ((d2subst @ d_id) = sh) & (pushprop_lem2v2_gthm = $true) & ((! [X389 : term,X390 : term > $o] : (($true = (X390 @ X389)) | ~! [X391 : term] : (((X390 @ (lam @ X391)) = $true) | ~! [X392 : term] : (~((X390 @ X392) = $true) | ($true = (X390 @ (sub @ X391 @ (push @ X392 @ id)))))) | ~! [X393 : term,X394 : term] : (~((X390 @ X394) = $true) | ($true = (X390 @ (ap @ X393 @ X394))) | ~($true = (X390 @ X393))) | ~! [X395 : term] : (~($true = (var @ X395)) | ($true = (X390 @ X395)))) => (! [X396 : term,X397 : term,X398 : subst > term > subst > $o] : (~($true = (X398 @ id @ X397 @ id)) | ~! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true = (X398 @ (comp @ X401 @ X400) @ (sub @ X402 @ X400) @ X399)) | ~($true = (X398 @ X401 @ X402 @ (comp @ X400 @ X399)))) | ~! [X403 : term,X404 : term] : (~((X398 @ id @ X404 @ id) = $true) | ~((X398 @ id @ X403 @ id) = $true) | ($true = (X398 @ id @ (ap @ (sub @ X404 @ id) @ X403) @ id))) | ($true = (X398 @ id @ (ap @ X396 @ X397) @ id)) | ~((X398 @ id @ X396 @ id) = $true) | ~! [X405 : term,X406 : subst,X407 : subst,X408 : subst] : (($true = (X398 @ X407 @ X405 @ (comp @ X408 @ X406))) | ~($true = (X398 @ (comp @ X407 @ X408) @ (sub @ X405 @ X408) @ X406)))) => (! [X409 : term,X410 : subst > term > subst > $o] : (~! [X411 : subst > term > term] : (~! [X412 : subst,X413 : subst,X414 : term] : ((X411 @ (comp @ X412 @ X413) @ (sub @ X414 @ X413)) = (sub @ (X411 @ X412 @ X414) @ X413)) | ~! [X415 : term] : (~((X410 @ id @ X415 @ id) = $true) | ((X410 @ id @ (X411 @ id @ X415) @ id) = $true)) | ($true = (X410 @ id @ (lam @ (X411 @ sh @ one)) @ id))) | ~! [X416 : term] : (($true = (X410 @ id @ (sub @ X409 @ (push @ X416 @ id)) @ id)) | ~($true = (X410 @ id @ X416 @ id))) | ~! [X417 : subst,X418 : subst,X419 : subst,X420 : term] : (($true = (X410 @ (comp @ X417 @ X418) @ (sub @ X420 @ X418) @ X419)) | ~($true = (X410 @ X417 @ X420 @ (comp @ X418 @ X419)))) | ($true = (X410 @ id @ (lam @ X409) @ id)) | ~! [X421 : subst,X422 : subst,X423 : subst,X424 : term] : (((X410 @ X422 @ X424 @ (comp @ X421 @ X423)) = $true) | ~((X410 @ (comp @ X422 @ X421) @ (sub @ X424 @ X421) @ X423) = $true))) => ! [X425 : subst > term > subst > $o,X426 : term] : (($true = (X425 @ id @ X426 @ id)) | ~! [X427 : subst,X428 : subst,X429 : subst,X430 : term] : (($true = (X425 @ X429 @ X430 @ (comp @ X428 @ X427))) | ~((X425 @ (comp @ X429 @ X428) @ (sub @ X430 @ X428) @ X427) = $true)) | ~! [X431 : term] : (((X425 @ id @ X431 @ id) = $true) | ~($true = (var @ (sub @ X431 @ id)))) | ~! [X432 : term,X433 : term] : (~($true = (X425 @ id @ X432 @ id)) | ($true = (X425 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id)) | ~((X425 @ id @ X433 @ id) = $true)) | ~! [X434 : subst > term > term] : (($true = (X425 @ id @ (lam @ (X434 @ sh @ one)) @ id)) | ~! [X435 : subst,X436 : term,X437 : subst] : ((X434 @ (comp @ X437 @ X435) @ (sub @ X436 @ X435)) = (sub @ (X434 @ X437 @ X436) @ X435)) | ~! [X438 : term] : (~($true = (X425 @ id @ X438 @ id)) | ($true = (X425 @ id @ (X434 @ id @ X438) @ id)))) | ~! [X439 : subst,X440 : term,X441 : subst,X442 : subst] : (($true = (X425 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442) @ X439)) | ~((X425 @ X441 @ X440 @ (comp @ X442 @ X439)) = $true)))))) <=> (hoasinduction_lthm = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((pushprop_lem0 = $true) <=> ! [X443 : subst,X444 : term > $o,X445 : term] : ~! [X446 : term > $o] : ~! [X447 : term] : ((X446 @ X447) = (X444 @ (sub @ X447 @ (push @ X445 @ X443))))) & ((shinj = $true) <=> ! [X448 : term,X449 : term] : (((sub @ X448 @ sh) != (sub @ X449 @ sh)) | (X448 = X449))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (substmonoid_gthm = $true) & ((hoasinduction_lem3a = $true) <=> ! [X450 : term,X451 : subst > term > subst > $o] : (($true = (X451 @ id @ (lam @ X450) @ id)) | ~! [X452 : term] : (~($true = (X451 @ id @ X452 @ id)) | ((X451 @ id @ (sub @ X450 @ (push @ X452 @ id)) @ id) = $true)) | ~! [X453 : subst > term > term] : (($true = (X451 @ id @ (lam @ (X453 @ sh @ one)) @ id)) | ~! [X454 : term] : (~($true = (X451 @ id @ X454 @ id)) | ($true = (X451 @ id @ (X453 @ id @ X454) @ id))) | ~! [X455 : subst,X456 : subst,X457 : term] : ((X453 @ (comp @ X455 @ X456) @ (sub @ X457 @ X456)) = (sub @ (X453 @ X455 @ X457) @ X456))))) & (! [X458 : term,X459 : term > $o] : (((X459 @ X458) = $true) | ~! [X460 : term] : (~! [X461 : term] : (~($true = (X459 @ X461)) | ($true = (X459 @ (sub @ X460 @ (push @ X461 @ id))))) | ((X459 @ (lam @ X460)) = $true)) | ~! [X462 : term,X463 : term] : (~((X459 @ X462) = $true) | ($true = (X459 @ (ap @ X463 @ X462))) | ~($true = (X459 @ X463))) | ~! [X464 : term] : (((X459 @ X464) = $true) | ~($true = (var @ X464)))) <=> (induction2 = $true)) & ((hoasinduction_lthm_3 = $true) <=> (! [X465 : subst > term > subst > $o] : ~! [X466 : term > $o] : ~! [X467 : term] : ((X465 @ id @ X467 @ id) = (X466 @ X467)) => (! [X468 : term > $o,X469 : term] : (~! [X470 : term] : (($true = (X468 @ (lam @ X470))) | ~! [X471 : term] : (~((X468 @ X471) = $true) | ((X468 @ (sub @ X470 @ (push @ X471 @ id))) = $true))) | ~! [X472 : term,X473 : term] : (($true = (X468 @ (ap @ X472 @ X473))) | ~((X468 @ X472) = $true) | ~($true = (X468 @ X473))) | ((X468 @ X469) = $true) | ~! [X474 : term] : (~($true = (var @ X474)) | ((X468 @ X474) = $true))) => (! [X475 : term] : ((sub @ X475 @ id) = X475) => (! [X476 : term,X477 : term > $o,X478 : subst > term > subst > $o] : (($true = (X477 @ (lam @ X476))) | ~! [X479 : term] : (($true = (X477 @ (sub @ X476 @ (push @ X479 @ id)))) | ~($true = (X477 @ X479))) | ~! [X480 : subst > term > term] : (~! [X481 : subst,X482 : subst,X483 : term] : ((sub @ (X480 @ X481 @ X483) @ X482) = (X480 @ (comp @ X481 @ X482) @ (sub @ X483 @ X482))) | ~! [X484 : term] : (((X478 @ id @ (X480 @ id @ X484) @ id) = $true) | ~($true = (X478 @ id @ X484 @ id))) | ($true = (X478 @ id @ (lam @ (X480 @ sh @ one)) @ id))) | ~! [X485 : term] : ((X478 @ id @ X485 @ id) = (X477 @ X485))) => ! [X486 : subst > term > subst > $o,X487 : term] : (~! [X488 : subst,X489 : term,X490 : subst,X491 : subst] : (($true = (X486 @ (comp @ X490 @ X491) @ (sub @ X489 @ X491) @ X488)) | ~($true = (X486 @ X490 @ X489 @ (comp @ X491 @ X488)))) | ~! [X492 : subst > term > term] : (~! [X493 : subst,X494 : subst,X495 : term] : ((X492 @ (comp @ X493 @ X494) @ (sub @ X495 @ X494)) = (sub @ (X492 @ X493 @ X495) @ X494)) | ($true = (X486 @ id @ (lam @ (X492 @ sh @ one)) @ id)) | ~! [X496 : term] : (((X486 @ id @ (X492 @ id @ X496) @ id) = $true) | ~($true = (X486 @ id @ X496 @ id)))) | ~! [X497 : subst,X498 : term,X499 : subst,X500 : subst] : (~($true = (X486 @ (comp @ X500 @ X497) @ (sub @ X498 @ X497) @ X499)) | ($true = (X486 @ X500 @ X498 @ (comp @ X497 @ X499)))) | ~! [X501 : term,X502 : term] : (~($true = (X486 @ id @ X502 @ id)) | ~($true = (X486 @ id @ X501 @ id)) | ($true = (X486 @ id @ (ap @ (sub @ X502 @ id) @ X501) @ id))) | ~! [X503 : term] : (~((var @ (sub @ X503 @ id)) = $true) | ($true = (X486 @ id @ X503 @ id))) | ($true = (X486 @ id @ X487 @ id)))))))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasapinj1_lthm = $true) <=> (! [X504 : term] : ((sub @ X504 @ id) = X504) => (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((X505 = X506) | ((ap @ X506 @ X508) != (ap @ X505 @ X507))) => ! [X509 : term,X510 : term,X511 : term,X512 : term] : ((X510 = X512) | ((ap @ (sub @ X510 @ id) @ X509) != (ap @ (sub @ X512 @ id) @ X511)))))) & ! [X513 : d_term] : (d_one = X513) & (pushprop_lem2v2 = $true) & (axmap = $true) & ((! [X514 : term] : ((sub @ X514 @ id) = X514) => (! [X515 : term,X516 : subst > term > subst > $o] : (~! [X517 : subst > term > term] : (~! [X518 : term] : (~($true = (X516 @ id @ X518 @ id)) | ((X516 @ id @ (X517 @ id @ X518) @ id) = $true)) | ((X516 @ id @ (lam @ (X517 @ sh @ one)) @ id) = $true) | ~! [X519 : subst,X520 : term,X521 : subst] : ((X517 @ (comp @ X521 @ X519) @ (sub @ X520 @ X519)) = (sub @ (X517 @ X521 @ X520) @ X519))) | ((X516 @ id @ (lam @ (sub @ X515 @ (push @ one @ sh))) @ id) = $true) | ~! [X522 : term] : (~($true = (X516 @ id @ X522 @ id)) | ($true = (X516 @ id @ (sub @ X515 @ (push @ X522 @ id)) @ id)))) => ! [X523 : term,X524 : subst > term > subst > $o] : (~! [X525 : term,X526 : subst,X527 : subst,X528 : subst] : (~($true = (X524 @ (comp @ X527 @ X526) @ (sub @ X525 @ X526) @ X528)) | ((X524 @ X527 @ X525 @ (comp @ X526 @ X528)) = $true)) | ((X524 @ id @ (lam @ X523) @ id) = $true) | ~! [X529 : term,X530 : subst,X531 : subst,X532 : subst] : (~($true = (X524 @ X532 @ X529 @ (comp @ X530 @ X531))) | ($true = (X524 @ (comp @ X532 @ X530) @ (sub @ X529 @ X530) @ X531))) | ~! [X533 : subst > term > term] : (~! [X534 : term] : (($true = (X524 @ id @ (X533 @ id @ X534) @ id)) | ~($true = (X524 @ id @ X534 @ id))) | ($true = (X524 @ id @ (lam @ (X533 @ sh @ one)) @ id)) | ~! [X535 : subst,X536 : term,X537 : subst] : ((sub @ (X533 @ X537 @ X536) @ X535) = (X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535)))) | ~! [X538 : term] : (~($true = (X524 @ id @ X538 @ id)) | ($true = (X524 @ id @ (sub @ X523 @ (push @ X538 @ id)) @ id)))))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasapnotvar_gthm = $true) & ((axidl = $true) <=> ! [X539 : subst] : ((comp @ id @ X539) = X539))),
% 6.47/2.17    inference(rectify,[status(thm)],[f8])).
% 6.47/2.17  thf(f8,plain,(
% 6.47/2.17    (! [X0 : term,X1 : term > $o,X2 : subst] : ~! [X3 : term > $o] : ~! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X5 : term > $o,X6 : term] : (~! [X7 : term] : (((X5 @ (lam @ X7)) = $true) | ~($true = (X5 @ X7))) | ~! [X8 : term,X9 : term] : (~($true = (X5 @ X8)) | ($true = (X5 @ (ap @ X9 @ X8))) | ~((X5 @ X9) = $true)) | ~! [X10 : term] : (($true = (X5 @ X10)) | ~($true = (var @ X10))) | ($true = (X5 @ X6))) <=> (induction = $true)) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X15 : subst > term > subst > $o,X16 : term] : (~! [X17 : term,X18 : subst > term > term] : (~! [X19 : term] : (($true = (X15 @ id @ (X18 @ id @ X19) @ id)) | ~($true = (X15 @ id @ X19 @ id))) | ~! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) | ~! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) | ($true = (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id))) | ($true = (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id)) | ~! [X26 : term] : (($true = (X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id)) | ~($true = (X15 @ id @ X26 @ id))))) & (hoasapinj2_gthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (~! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ~($true = (X27 @ X28)) | ($true = (X29 @ one)))) & ((! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) => (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) => ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : (((X39 @ (sub @ X36 @ (push @ X38 @ X40))) = $true) | ~($true = (X37 @ X36))))) <=> (pushprop_lem1_lthm = $true)) & (! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (~($true = (X43 @ X44)) | ~! [X45 : term,X46 : term] : (~($true = (X41 @ id @ X46 @ id)) | ~($true = (X41 @ id @ X45 @ id)) | ($true = (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id))) | ~! [X47 : term] : ((X43 @ X47) = (X41 @ id @ X47 @ id)) | ~! [X48 : term,X49 : subst,X50 : subst,X51 : subst] : (($true = (X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51)) | ~((X41 @ X50 @ X48 @ (comp @ X49 @ X51)) = $true)) | ~($true = (X43 @ X42)) | ~! [X52 : subst,X53 : subst,X54 : term,X55 : subst] : (($true = (X41 @ X53 @ X54 @ (comp @ X52 @ X55))) | ~($true = (X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55))) | ($true = (X43 @ (ap @ X42 @ X44)))) <=> (hoasinduction_lem2v2 = $true)) & ! [X56 : d_subst,X57 : d_subst] : (((d2subst @ X56) = (d2subst @ X57)) => (X56 = X57)) & ~((var @ (d2term @ d_one)) = $true) & (pushprop_lem1v2_gthm = $true) & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58) & (induction2lem_gthm = $true) & ~(lamnotap = $true) & ((substmonoid_lthm = $true) <=> (! [X60 : subst] : ((comp @ id @ X60) = X60) => (! [X61 : subst] : ((comp @ X61 @ id) = X61) => (! [X63 : subst] : ((comp @ id @ X63) = X63) & ! [X62 : subst] : ((comp @ X62 @ id) = X62))))) & (ulamvarind = $true) & ((induction2_lthm = $true) <=> (! [X64 : term] : ((sub @ X64 @ id) = X64) => (! [X65 : subst,X66 : term > $o,X67 : term] : (~! [X68 : term,X69 : term] : (((X66 @ (ap @ X68 @ X69)) = $true) | ~((X66 @ X68) = $true) | ~((X66 @ X69) = $true)) | ~! [X70 : term] : (~! [X71 : term] : (~($true = (X66 @ X71)) | ($true = (X66 @ (sub @ X70 @ (push @ X71 @ id))))) | ($true = (X66 @ (lam @ X70)))) | ($true = (X66 @ (sub @ X67 @ X65))) | ~! [X72 : term] : (($true = (X66 @ (sub @ X72 @ X65))) | ~((var @ X72) = $true))) => ! [X73 : term,X74 : term > $o] : (~! [X75 : term] : (($true = (X74 @ (lam @ X75))) | ~! [X76 : term] : (($true = (X74 @ (sub @ X75 @ (push @ X76 @ id)))) | ~($true = (X74 @ X76)))) | ~! [X77 : term] : (($true = (X74 @ X77)) | ~($true = (var @ X77))) | ~! [X78 : term,X79 : term] : (~($true = (X74 @ X78)) | ~($true = (X74 @ X79)) | ((X74 @ (ap @ X79 @ X78)) = $true)) | ($true = (X74 @ X73)))))) & ((axvarid = $true) <=> ! [X80 : term] : ((sub @ X80 @ id) = X80)) & (axabs = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (~! [X84 : term] : (($true = (X83 @ (sub @ X81 @ (push @ X84 @ id)))) | ~($true = (X83 @ X84))) | ~! [X85 : term] : ((X83 @ X85) = (X82 @ id @ X85 @ id)) | ~! [X86 : subst > term > term] : (((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) = $true) | ~! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) | ~! [X90 : term] : (~($true = (X82 @ id @ X90 @ id)) | ($true = (X82 @ id @ (X86 @ id @ X90) @ id)))) | ($true = (X83 @ (lam @ X81))))) & (hoasinduction_lem2_lthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1_lthm = $true) & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))) | ~! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ~! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100))) <=> (hoaslaminj = $true)) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (hoaslamnotap_lthm = $true) & (pushprop_lem0_gthm = $true) & (one = (d2term @ d_one)) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : (((ap @ X104 @ X103) != (ap @ X101 @ X102)) | (X101 = X104)) <=> (apinj1 = $true)) & (hoasinduction_lem2_gthm = $true) & (lamnotvar = $true) & (termmset_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107) => ! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (~($true = (X109 @ X108)) | ($true = (X110 @ one)) | ~! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112)))) <=> (pushprop_lem1v2_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X113 : subst > term > subst > $o,X114 : term] : (~! [X115 : subst > term > term] : (~! [X116 : term] : (~($true = (X113 @ id @ X116 @ id)) | ($true = (X113 @ id @ (X115 @ id @ X116) @ id))) | ~! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) | ($true = (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id))) | ((X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) = $true) | ~! [X120 : term] : (~($true = (X113 @ id @ X120 @ id)) | ($true = (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id))))) & (hoaslamnotvar_gthm = $true) & (! [X121 : subst > term > subst > $o] : ~! [X122 : term > $o] : ~! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123)) <=> (hoasinduction_lem0 = $true)) & (hoasinduction_lem1v2 = $true) & ((! [X124 : term] : ((sub @ X124 @ id) = X124) => (! [X125 : term,X126 : subst > term > subst > $o] : (~! [X127 : term] : (($true = (X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id)) | ~($true = (X126 @ id @ X127 @ id))) | ($true = (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id)) | ~! [X128 : subst > term > term] : (($true = (X126 @ id @ (lam @ (X128 @ sh @ one)) @ id)) | ~! [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) = (sub @ (X128 @ X129 @ X131) @ X130)) | ~! [X132 : term] : (($true = (X126 @ id @ (X128 @ id @ X132) @ id)) | ~($true = (X126 @ id @ X132 @ id))))) => ! [X133 : subst > term > subst > $o,X134 : term] : (~! [X135 : subst > term > term] : (~! [X136 : term] : (~($true = (X133 @ id @ X136 @ id)) | ($true = (X133 @ id @ (X135 @ id @ X136) @ id))) | ~! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) | ((X133 @ id @ (lam @ (X135 @ sh @ one)) @ id) = $true)) | ~! [X140 : term] : (~($true = (X133 @ id @ X140 @ id)) | ($true = (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id))) | ((X133 @ id @ (lam @ X134) @ id) = $true)))) <=> (hoasinduction_lem3a_lthm = $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotvar_lthm = $true) & (hoasapnotvar_lthm = $true) & ((hoasinduction_lem3b = $true) <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh)))) & (hoaslaminj_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem3v2_lthm = $true) & (axvarshift = $true) & (hoaslamnotap_gthm = $true) & (! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : (($true = (X143 @ (sub @ X146 @ (push @ X147 @ X144)))) | ~($true = (X145 @ X146))) <=> (pushprop_lem1 = $true)) & ((! [X148 : term] : ((sub @ X148 @ id) = X148) => ! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (~! [X152 : term] : (~($true = (X151 @ X152)) | ($true = (X151 @ (sub @ X150 @ (push @ X152 @ id))))) | ~! [X153 : subst,X154 : term,X155 : subst,X156 : subst] : (($true = (X149 @ X156 @ X154 @ (comp @ X153 @ X155))) | ~($true = (X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155))) | ($true = (X151 @ (lam @ X150))) | ~! [X157 : subst,X158 : subst,X159 : term,X160 : subst] : (($true = (X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158)) | ~($true = (X149 @ X157 @ X159 @ (comp @ X160 @ X158)))) | ~! [X161 : subst > term > term] : (~! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162)) | ~! [X165 : term] : (~($true = (X149 @ id @ X165 @ id)) | ($true = (X149 @ id @ (X161 @ id @ X165) @ id))) | ($true = (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id))) | ~! [X166 : term] : ((X149 @ id @ X166 @ id) = (X151 @ X166)))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((! [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) = X168) => (! [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) = X169) => (! [X171 : subst] : ((comp @ X171 @ id) = X171) => (! [X172 : term,X173 : term > $o] : (~! [X174 : term] : (($true = (X173 @ (lam @ X174))) | ~((X173 @ X174) = $true)) | ($true = (X173 @ X172)) | ~! [X175 : term] : (((X173 @ X175) = $true) | ~($true = (var @ X175))) | ~! [X176 : term,X177 : term] : (~($true = (X173 @ X176)) | ~($true = (X173 @ X177)) | ((X173 @ (ap @ X177 @ X176)) = $true))) => ! [X178 : subst,X179 : term > $o,X180 : term] : (~! [X181 : term] : (~($true = (var @ X181)) | ($true = (X179 @ (sub @ X181 @ X178)))) | ~! [X182 : term,X183 : term] : (~($true = (X179 @ X182)) | ($true = (X179 @ (ap @ X183 @ X182))) | ~($true = (X179 @ X183))) | ($true = (X179 @ (sub @ X180 @ X178))) | ~! [X184 : term] : (($true = (X179 @ (lam @ X184))) | ~! [X185 : term] : (($true = (X179 @ (sub @ X184 @ (push @ X185 @ id)))) | ~($true = (X179 @ X185))))))))) <=> (induction2lem_lthm = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X186 : subst > term > subst > $o] : ~! [X187 : term > $o] : ~! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188))) & (! [X189 : subst > term > subst > $o,X190 : term] : (~! [X191 : term,X192 : term] : (~($true = (X189 @ id @ X192 @ id)) | ($true = (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id)) | ~((X189 @ id @ X191 @ id) = $true)) | ~! [X193 : subst > term > term] : (~! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) | ($true = (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id)) | ~! [X197 : term] : (($true = (X189 @ id @ (X193 @ id @ X197) @ id)) | ~((X189 @ id @ X197 @ id) = $true))) | ~! [X198 : term] : (($true = (X189 @ id @ X198 @ id)) | ~($true = (var @ (sub @ X198 @ id)))) | ($true = (X189 @ id @ X190 @ id)) | ~! [X199 : subst,X200 : subst,X201 : subst,X202 : term] : (($true = (X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199)) | ~($true = (X189 @ X201 @ X202 @ (comp @ X200 @ X199)))) | ~! [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (~($true = (X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206)) | ((X189 @ X204 @ X205 @ (comp @ X203 @ X206)) = $true))) <=> (hoasinduction = $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem2v2_lthm = $true) & ! [X209 : d_term,X210 : d_term] : (((d2term @ X210) = (d2term @ X209)) => (X209 = X210)) & ((substmonoid = $true) <=> (! [X211 : subst] : ((comp @ X211 @ id) = X211) & ! [X212 : subst] : ((comp @ id @ X212) = X212))) & (ulamvarsh = $true) & (induction2_gthm = $true) & (axassoc = $true) & (! [X213 : term,X214 : term,X215 : subst > term > term] : (((lam @ (X215 @ sh @ one)) != (ap @ (sub @ X214 @ id) @ X213)) | ~! [X216 : subst,X217 : subst,X218 : term] : ((X215 @ (comp @ X216 @ X217) @ (sub @ X218 @ X217)) = (sub @ (X215 @ X216 @ X218) @ X217))) <=> (hoaslamnotap = $true)) & (hoasinduction_lem3a_gthm = $true) & ((axscons = $true) <=> ! [X219 : subst] : ((push @ (sub @ one @ X219) @ (comp @ sh @ X219)) = X219)) & ((! [X220 : subst,X221 : term] : ((sub @ one @ (push @ X221 @ X220)) = X221) => (! [X222 : subst,X223 : term] : ((comp @ sh @ (push @ X223 @ X222)) = X222) => (! [X224 : term,X225 : term] : (((lam @ X224) != (lam @ X225)) | (X224 = X225)) => ! [X226 : subst > term > term,X227 : subst > term > term,X228 : term,X229 : subst] : (((X227 @ X229 @ X228) = (X226 @ X229 @ X228)) | ~! [X230 : subst,X231 : term,X232 : subst] : ((X226 @ (comp @ X230 @ X232) @ (sub @ X231 @ X232)) = (sub @ (X226 @ X230 @ X231) @ X232)) | ~! [X233 : subst,X234 : subst,X235 : term] : ((sub @ (X227 @ X234 @ X235) @ X233) = (X227 @ (comp @ X234 @ X233) @ (sub @ X235 @ X233))) | ((lam @ (X226 @ sh @ one)) != (lam @ (X227 @ sh @ one))))))) <=> (hoaslaminj_lthm = $true)) & ((hoasinduction_lem2 = $true) <=> ! [X236 : term,X237 : subst > term > subst > $o,X238 : term] : (((X237 @ id @ (ap @ X236 @ X238) @ id) = $true) | ~! [X239 : subst,X240 : subst,X241 : term,X242 : subst] : (((X237 @ (comp @ X239 @ X242) @ (sub @ X241 @ X242) @ X240) = $true) | ~($true = (X237 @ X239 @ X241 @ (comp @ X242 @ X240)))) | ~($true = (X237 @ id @ X238 @ id)) | ~! [X243 : term,X244 : term] : (~($true = (X237 @ id @ X243 @ id)) | ($true = (X237 @ id @ (ap @ (sub @ X244 @ id) @ X243) @ id)) | ~($true = (X237 @ id @ X244 @ id))) | ~($true = (X237 @ id @ X236 @ id)) | ~! [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (~((X237 @ (comp @ X246 @ X248) @ (sub @ X245 @ X248) @ X247) = $true) | ($true = (X237 @ X246 @ X245 @ (comp @ X248 @ X247)))))) & ~(ulamvar1 = $true) & (axapp = $true) & (! [X249 : term,X250 : subst > term > subst > $o] : (~! [X251 : subst > term > term] : (($true = (X250 @ id @ (lam @ (X251 @ sh @ one)) @ id)) | ~! [X252 : term] : (~($true = (X250 @ id @ X252 @ id)) | ($true = (X250 @ id @ (X251 @ id @ X252) @ id))) | ~! [X253 : subst,X254 : term,X255 : subst] : ((sub @ (X251 @ X255 @ X254) @ X253) = (X251 @ (comp @ X255 @ X253) @ (sub @ X254 @ X253)))) | ~! [X256 : term,X257 : term] : (~($true = (X250 @ id @ X256 @ id)) | ~($true = (X250 @ id @ X257 @ id)) | ($true = (X250 @ id @ (ap @ (sub @ X257 @ id) @ X256) @ id))) | ($true = (X250 @ id @ X249 @ id))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (! [X258 : term,X259 : term,X260 : term,X261 : term] : (((ap @ X261 @ X259) != (ap @ X260 @ X258)) | (X258 = X259)) <=> (apinj2 = $true)) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem = $true) <=> ! [X262 : subst,X263 : term,X264 : term > $o] : (~! [X265 : term,X266 : term] : (($true = (X264 @ (ap @ X265 @ X266))) | ~($true = (X264 @ X266)) | ~($true = (X264 @ X265))) | ~! [X267 : term] : (~($true = (var @ X267)) | ($true = (X264 @ (sub @ X267 @ X262)))) | ($true = (X264 @ (sub @ X263 @ X262))) | ~! [X268 : term] : (((X264 @ (lam @ X268)) = $true) | ~! [X269 : term] : (~((X264 @ X269) = $true) | ($true = (X264 @ (sub @ X268 @ (push @ X269 @ id)))))))) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X270 : term] : ~! [X271 : subst > term > term] : ~! [X272 : subst,X273 : term] : ((X271 @ X272 @ X273) = (sub @ X270 @ (push @ X273 @ X272))) => (! [X274 : term] : ((sub @ X274 @ id) = X274) => ! [X275 : term,X276 : term > $o,X277 : subst > term > subst > $o] : (~! [X278 : term] : ((X277 @ id @ X278 @ id) = (X276 @ X278)) | ($true = (X276 @ (lam @ X275))) | ~! [X279 : term] : (~($true = (X276 @ X279)) | ($true = (X276 @ (sub @ X275 @ (push @ X279 @ id))))) | ~! [X280 : subst > term > term] : (((X277 @ id @ (lam @ (X280 @ sh @ one)) @ id) = $true) | ~! [X281 : subst,X282 : subst,X283 : term] : ((sub @ (X280 @ X282 @ X283) @ X281) = (X280 @ (comp @ X282 @ X281) @ (sub @ X283 @ X281))) | ~! [X284 : term] : (~($true = (X277 @ id @ X284 @ id)) | ($true = (X277 @ id @ (X280 @ id @ X284) @ id)))))))) & (! [X285 : term] : ~! [X286 : subst > term > term] : ((X286 @ sh @ one) != (sub @ X285 @ (push @ one @ sh))) <=> (hoasinduction_lem3b_lthm = $true)) & (hoasinduction_lem1 = $true) & ((axshiftcons = $true) <=> ! [X287 : term,X288 : subst] : ((comp @ sh @ (push @ X287 @ X288)) = X288)) & ((hoasapinj1 = $true) <=> ! [X289 : term,X290 : term,X291 : term,X292 : term] : (((ap @ (sub @ X291 @ id) @ X290) != (ap @ (sub @ X289 @ id) @ X292)) | (X289 = X291))) & (hoasapnotvar = $true) & ((axvarcons = $true) <=> ! [X293 : term,X294 : subst] : ((sub @ one @ (push @ X293 @ X294)) = X293)) & ((d2subst @ d_id) = id) & (pushprop = $true) & ((! [X295 : term] : ((sub @ X295 @ id) = X295) => ! [X296 : term] : ((sub @ X296 @ id) = X296)) <=> (termmset_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X297 : term,X298 : term,X299 : term,X300 : term] : ((X297 = X300) | ((ap @ X298 @ X297) != (ap @ X299 @ X300))) => ! [X301 : term,X302 : term,X303 : term,X304 : term] : ((X302 = X304) | ((ap @ (sub @ X303 @ id) @ X304) != (ap @ (sub @ X301 @ id) @ X302))))) & (! [X305 : term] : ~! [X306 : subst > term > term] : ~! [X307 : subst,X308 : term] : ((X306 @ X307 @ X308) = (sub @ X305 @ (push @ X308 @ X307))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((laminj = $true) <=> ! [X309 : term,X310 : term] : (((lam @ X309) != (lam @ X310)) | (X309 = X310))) & ((hoasinduction_lem3 = $true) <=> ! [X311 : subst > term > subst > $o,X312 : term] : (~! [X313 : term] : (~($true = (X311 @ id @ X313 @ id)) | ((X311 @ id @ (sub @ X312 @ (push @ X313 @ id)) @ id) = $true)) | ~! [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (~($true = (X311 @ X317 @ X314 @ (comp @ X315 @ X316))) | ($true = (X311 @ (comp @ X317 @ X315) @ (sub @ X314 @ X315) @ X316))) | ~! [X318 : subst > term > term] : (~! [X319 : term] : (($true = (X311 @ id @ (X318 @ id @ X319) @ id)) | ~((X311 @ id @ X319 @ id) = $true)) | ($true = (X311 @ id @ (lam @ (X318 @ sh @ one)) @ id)) | ~! [X320 : term,X321 : subst,X322 : subst] : ((sub @ (X318 @ X322 @ X320) @ X321) = (X318 @ (comp @ X322 @ X321) @ (sub @ X320 @ X321)))) | ($true = (X311 @ id @ (lam @ X312) @ id)) | ~! [X323 : subst,X324 : term,X325 : subst,X326 : subst] : (((X311 @ X326 @ X324 @ (comp @ X323 @ X325)) = $true) | ~($true = (X311 @ (comp @ X326 @ X323) @ (sub @ X324 @ X323) @ X325))))) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X327 : subst > term > subst > $o] : ~! [X328 : term > $o] : ~! [X329 : term] : ((X327 @ id @ X329 @ id) = (X328 @ X329)) => (! [X330 : term > $o,X331 : term] : (~! [X332 : term] : (~($true = (var @ X332)) | ($true = (X330 @ X332))) | ~! [X333 : term] : (($true = (X330 @ (lam @ X333))) | ~! [X334 : term] : (($true = (X330 @ (sub @ X333 @ (push @ X334 @ id)))) | ~($true = (X330 @ X334)))) | ($true = (X330 @ X331)) | ~! [X335 : term,X336 : term] : (~($true = (X330 @ X336)) | ~($true = (X330 @ X335)) | ($true = (X330 @ (ap @ X335 @ X336))))) => (! [X337 : term] : ((sub @ X337 @ id) = X337) => (! [X338 : subst > term > subst > $o,X339 : term > $o,X340 : term] : (($true = (X339 @ (lam @ X340))) | ~! [X341 : subst > term > term] : (~! [X342 : term] : (($true = (X338 @ id @ (X341 @ id @ X342) @ id)) | ~((X338 @ id @ X342 @ id) = $true)) | ~! [X343 : subst,X344 : subst,X345 : term] : ((sub @ (X341 @ X343 @ X345) @ X344) = (X341 @ (comp @ X343 @ X344) @ (sub @ X345 @ X344))) | ((X338 @ id @ (lam @ (X341 @ sh @ one)) @ id) = $true)) | ~! [X346 : term] : (($true = (X339 @ (sub @ X340 @ (push @ X346 @ id)))) | ~($true = (X339 @ X346))) | ~! [X347 : term] : ((X339 @ X347) = (X338 @ id @ X347 @ id))) => ! [X348 : term,X349 : subst > term > subst > $o] : (~! [X350 : term,X351 : term] : (($true = (X349 @ id @ (ap @ (sub @ X350 @ id) @ X351) @ id)) | ~($true = (X349 @ id @ X351 @ id)) | ~($true = (X349 @ id @ X350 @ id))) | ~! [X352 : subst > term > term] : (~! [X353 : term,X354 : subst,X355 : subst] : ((sub @ (X352 @ X355 @ X353) @ X354) = (X352 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354))) | ~! [X356 : term] : (~($true = (X349 @ id @ X356 @ id)) | ($true = (X349 @ id @ (X352 @ id @ X356) @ id))) | ($true = (X349 @ id @ (lam @ (X352 @ sh @ one)) @ id))) | ($true = (X349 @ id @ X348 @ id)))))))) & (apnotvar = $true) & ((termmset = $true) <=> ! [X357 : term] : ((sub @ X357 @ id) = X357)) & (pushprop_lthm_orig = $true) & (hoasinduction_lem1_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X358 : term,X359 : term > $o,X360 : subst > term > subst > $o] : (~! [X361 : term] : ((X359 @ X361) = (X360 @ id @ X361 @ id)) | ~! [X362 : subst > term > term] : (~! [X363 : term] : (($true = (X360 @ id @ (X362 @ id @ X363) @ id)) | ~($true = (X360 @ id @ X363 @ id))) | ~! [X364 : subst,X365 : term,X366 : subst] : ((X362 @ (comp @ X364 @ X366) @ (sub @ X365 @ X366)) = (sub @ (X362 @ X364 @ X365) @ X366)) | ($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id))) | ($true = (X359 @ (lam @ X358))) | ~! [X367 : term] : (~((X359 @ X367) = $true) | ($true = (X359 @ (sub @ X358 @ (push @ X367 @ id))))) | ~! [X368 : subst,X369 : subst,X370 : subst,X371 : term] : (~($true = (X360 @ X370 @ X371 @ (comp @ X368 @ X369))) | ($true = (X360 @ (comp @ X370 @ X368) @ (sub @ X371 @ X368) @ X369))) | ~! [X372 : subst,X373 : subst,X374 : subst,X375 : term] : (((X360 @ X373 @ X375 @ (comp @ X372 @ X374)) = $true) | ~((X360 @ (comp @ X373 @ X372) @ (sub @ X375 @ X372) @ X374) = $true)))) & (! [X376 : subst] : ((comp @ X376 @ id) = X376) <=> (axidr = $true)) & ((hoasinduction_lem3aa = $true) <=> ! [X377 : subst > term > subst > $o,X378 : term] : (~! [X379 : subst > term > term] : (~! [X380 : term] : (($true = (X377 @ id @ (X379 @ id @ X380) @ id)) | ~($true = (X377 @ id @ X380 @ id))) | ~! [X381 : term,X382 : subst,X383 : subst] : ((sub @ (X379 @ X382 @ X381) @ X383) = (X379 @ (comp @ X382 @ X383) @ (sub @ X381 @ X383))) | ($true = (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id))) | ($true = (X377 @ id @ (lam @ (sub @ X378 @ (push @ one @ sh))) @ id)) | ~! [X384 : term] : (~($true = (X377 @ id @ X384 @ id)) | ($true = (X377 @ id @ (sub @ X378 @ (push @ X384 @ id)) @ id))))) & (axclos = $true) & (pushprop_lem1_gthm = $true) & (pushprop_gthm = $true) & ! [X385 : subst] : ? [X386 : d_subst] : ((d2subst @ X386) = X385) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem3_gthm = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X387 : term] : ~! [X388 : subst > term > term] : ~! [X389 : subst,X390 : term] : ((X388 @ X389 @ X390) = (sub @ X387 @ (push @ X390 @ X389)))) & ((d2subst @ d_id) = sh) & (pushprop_lem2v2_gthm = $true) & ((! [X391 : term,X392 : term > $o] : (($true = (X392 @ X391)) | ~! [X393 : term] : (((X392 @ (lam @ X393)) = $true) | ~! [X394 : term] : (~($true = (X392 @ X394)) | ($true = (X392 @ (sub @ X393 @ (push @ X394 @ id)))))) | ~! [X395 : term,X396 : term] : (~($true = (X392 @ X396)) | ($true = (X392 @ (ap @ X395 @ X396))) | ~($true = (X392 @ X395))) | ~! [X397 : term] : (~($true = (var @ X397)) | ($true = (X392 @ X397)))) => (! [X398 : term,X399 : term,X400 : subst > term > subst > $o] : (~((X400 @ id @ X399 @ id) = $true) | ~! [X401 : subst,X402 : subst,X403 : subst,X404 : term] : (($true = (X400 @ (comp @ X403 @ X402) @ (sub @ X404 @ X402) @ X401)) | ~($true = (X400 @ X403 @ X404 @ (comp @ X402 @ X401)))) | ~! [X405 : term,X406 : term] : (~($true = (X400 @ id @ X406 @ id)) | ~($true = (X400 @ id @ X405 @ id)) | ($true = (X400 @ id @ (ap @ (sub @ X406 @ id) @ X405) @ id))) | ($true = (X400 @ id @ (ap @ X398 @ X399) @ id)) | ~($true = (X400 @ id @ X398 @ id)) | ~! [X407 : term,X408 : subst,X409 : subst,X410 : subst] : (($true = (X400 @ X409 @ X407 @ (comp @ X410 @ X408))) | ~($true = (X400 @ (comp @ X409 @ X410) @ (sub @ X407 @ X410) @ X408)))) => (! [X411 : term,X412 : subst > term > subst > $o] : (~! [X413 : subst > term > term] : (~! [X414 : subst,X415 : subst,X416 : term] : ((X413 @ (comp @ X414 @ X415) @ (sub @ X416 @ X415)) = (sub @ (X413 @ X414 @ X416) @ X415)) | ~! [X417 : term] : (~((X412 @ id @ X417 @ id) = $true) | ($true = (X412 @ id @ (X413 @ id @ X417) @ id))) | ($true = (X412 @ id @ (lam @ (X413 @ sh @ one)) @ id))) | ~! [X418 : term] : (($true = (X412 @ id @ (sub @ X411 @ (push @ X418 @ id)) @ id)) | ~($true = (X412 @ id @ X418 @ id))) | ~! [X419 : subst,X420 : subst,X421 : subst,X422 : term] : (($true = (X412 @ (comp @ X419 @ X420) @ (sub @ X422 @ X420) @ X421)) | ~($true = (X412 @ X419 @ X422 @ (comp @ X420 @ X421)))) | ($true = (X412 @ id @ (lam @ X411) @ id)) | ~! [X423 : subst,X424 : subst,X425 : subst,X426 : term] : (($true = (X412 @ X424 @ X426 @ (comp @ X423 @ X425))) | ~($true = (X412 @ (comp @ X424 @ X423) @ (sub @ X426 @ X423) @ X425)))) => ! [X427 : subst > term > subst > $o,X428 : term] : (($true = (X427 @ id @ X428 @ id)) | ~! [X429 : subst,X430 : subst,X431 : subst,X432 : term] : (($true = (X427 @ X431 @ X432 @ (comp @ X430 @ X429))) | ~((X427 @ (comp @ X431 @ X430) @ (sub @ X432 @ X430) @ X429) = $true)) | ~! [X433 : term] : (($true = (X427 @ id @ X433 @ id)) | ~((var @ (sub @ X433 @ id)) = $true)) | ~! [X434 : term,X435 : term] : (~($true = (X427 @ id @ X434 @ id)) | ($true = (X427 @ id @ (ap @ (sub @ X435 @ id) @ X434) @ id)) | ~($true = (X427 @ id @ X435 @ id))) | ~! [X436 : subst > term > term] : (($true = (X427 @ id @ (lam @ (X436 @ sh @ one)) @ id)) | ~! [X437 : subst,X438 : term,X439 : subst] : ((X436 @ (comp @ X439 @ X437) @ (sub @ X438 @ X437)) = (sub @ (X436 @ X439 @ X438) @ X437)) | ~! [X440 : term] : (~($true = (X427 @ id @ X440 @ id)) | ($true = (X427 @ id @ (X436 @ id @ X440) @ id)))) | ~! [X441 : subst,X442 : term,X443 : subst,X444 : subst] : (($true = (X427 @ (comp @ X443 @ X444) @ (sub @ X442 @ X444) @ X441)) | ~($true = (X427 @ X443 @ X442 @ (comp @ X444 @ X441)))))))) <=> (hoasinduction_lthm = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (! [X448 : subst,X449 : term > $o,X450 : term] : ~! [X451 : term > $o] : ~! [X452 : term] : ((X451 @ X452) = (X449 @ (sub @ X452 @ (push @ X450 @ X448)))) <=> (pushprop_lem0 = $true)) & (! [X453 : term,X454 : term] : (((sub @ X453 @ sh) != (sub @ X454 @ sh)) | (X453 = X454)) <=> (shinj = $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (substmonoid_gthm = $true) & ((hoasinduction_lem3a = $true) <=> ! [X460 : term,X461 : subst > term > subst > $o] : (($true = (X461 @ id @ (lam @ X460) @ id)) | ~! [X462 : term] : (~($true = (X461 @ id @ X462 @ id)) | ($true = (X461 @ id @ (sub @ X460 @ (push @ X462 @ id)) @ id))) | ~! [X463 : subst > term > term] : (($true = (X461 @ id @ (lam @ (X463 @ sh @ one)) @ id)) | ~! [X464 : term] : (~($true = (X461 @ id @ X464 @ id)) | ($true = (X461 @ id @ (X463 @ id @ X464) @ id))) | ~! [X465 : subst,X466 : subst,X467 : term] : ((X463 @ (comp @ X465 @ X466) @ (sub @ X467 @ X466)) = (sub @ (X463 @ X465 @ X467) @ X466))))) & (! [X468 : term,X469 : term > $o] : (($true = (X469 @ X468)) | ~! [X470 : term] : (~! [X471 : term] : (~($true = (X469 @ X471)) | ($true = (X469 @ (sub @ X470 @ (push @ X471 @ id))))) | ((X469 @ (lam @ X470)) = $true)) | ~! [X472 : term,X473 : term] : (~($true = (X469 @ X472)) | ((X469 @ (ap @ X473 @ X472)) = $true) | ~($true = (X469 @ X473))) | ~! [X474 : term] : (($true = (X469 @ X474)) | ~($true = (var @ X474)))) <=> (induction2 = $true)) & ((hoasinduction_lthm_3 = $true) <=> (! [X475 : subst > term > subst > $o] : ~! [X476 : term > $o] : ~! [X477 : term] : ((X475 @ id @ X477 @ id) = (X476 @ X477)) => (! [X478 : term > $o,X479 : term] : (~! [X480 : term] : (($true = (X478 @ (lam @ X480))) | ~! [X481 : term] : (~($true = (X478 @ X481)) | ($true = (X478 @ (sub @ X480 @ (push @ X481 @ id)))))) | ~! [X482 : term,X483 : term] : (($true = (X478 @ (ap @ X482 @ X483))) | ~($true = (X478 @ X482)) | ~($true = (X478 @ X483))) | ($true = (X478 @ X479)) | ~! [X484 : term] : (~($true = (var @ X484)) | ($true = (X478 @ X484)))) => (! [X485 : term] : ((sub @ X485 @ id) = X485) => (! [X486 : term,X487 : term > $o,X488 : subst > term > subst > $o] : (($true = (X487 @ (lam @ X486))) | ~! [X489 : term] : (($true = (X487 @ (sub @ X486 @ (push @ X489 @ id)))) | ~($true = (X487 @ X489))) | ~! [X490 : subst > term > term] : (~! [X491 : subst,X492 : subst,X493 : term] : ((sub @ (X490 @ X491 @ X493) @ X492) = (X490 @ (comp @ X491 @ X492) @ (sub @ X493 @ X492))) | ~! [X494 : term] : (($true = (X488 @ id @ (X490 @ id @ X494) @ id)) | ~((X488 @ id @ X494 @ id) = $true)) | ((X488 @ id @ (lam @ (X490 @ sh @ one)) @ id) = $true)) | ~! [X495 : term] : ((X487 @ X495) = (X488 @ id @ X495 @ id))) => ! [X496 : subst > term > subst > $o,X497 : term] : (~! [X498 : subst,X499 : term,X500 : subst,X501 : subst] : (($true = (X496 @ (comp @ X500 @ X501) @ (sub @ X499 @ X501) @ X498)) | ~($true = (X496 @ X500 @ X499 @ (comp @ X501 @ X498)))) | ~! [X502 : subst > term > term] : (~! [X503 : subst,X504 : subst,X505 : term] : ((X502 @ (comp @ X503 @ X504) @ (sub @ X505 @ X504)) = (sub @ (X502 @ X503 @ X505) @ X504)) | ($true = (X496 @ id @ (lam @ (X502 @ sh @ one)) @ id)) | ~! [X506 : term] : (($true = (X496 @ id @ (X502 @ id @ X506) @ id)) | ~((X496 @ id @ X506 @ id) = $true))) | ~! [X507 : subst,X508 : term,X509 : subst,X510 : subst] : (~($true = (X496 @ (comp @ X510 @ X507) @ (sub @ X508 @ X507) @ X509)) | ($true = (X496 @ X510 @ X508 @ (comp @ X507 @ X509)))) | ~! [X511 : term,X512 : term] : (~($true = (X496 @ id @ X512 @ id)) | ~($true = (X496 @ id @ X511 @ id)) | ($true = (X496 @ id @ (ap @ (sub @ X512 @ id) @ X511) @ id))) | ~! [X513 : term] : (~((var @ (sub @ X513 @ id)) = $true) | ($true = (X496 @ id @ X513 @ id))) | ((X496 @ id @ X497 @ id) = $true))))))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasapinj1_lthm = $true) <=> (! [X514 : term] : ((sub @ X514 @ id) = X514) => (! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X516) | ((ap @ X515 @ X517) != (ap @ X516 @ X518))) => ! [X519 : term,X520 : term,X521 : term,X522 : term] : ((X520 = X522) | ((ap @ (sub @ X522 @ id) @ X521) != (ap @ (sub @ X520 @ id) @ X519)))))) & ! [X523 : d_term] : (d_one = X523) & (pushprop_lem2v2 = $true) & (axmap = $true) & ((! [X524 : term] : ((sub @ X524 @ id) = X524) => (! [X525 : term,X526 : subst > term > subst > $o] : (~! [X527 : subst > term > term] : (~! [X528 : term] : (~($true = (X526 @ id @ X528 @ id)) | ((X526 @ id @ (X527 @ id @ X528) @ id) = $true)) | ($true = (X526 @ id @ (lam @ (X527 @ sh @ one)) @ id)) | ~! [X529 : subst,X530 : term,X531 : subst] : ((X527 @ (comp @ X531 @ X529) @ (sub @ X530 @ X529)) = (sub @ (X527 @ X531 @ X530) @ X529))) | ($true = (X526 @ id @ (lam @ (sub @ X525 @ (push @ one @ sh))) @ id)) | ~! [X532 : term] : (~($true = (X526 @ id @ X532 @ id)) | ($true = (X526 @ id @ (sub @ X525 @ (push @ X532 @ id)) @ id)))) => ! [X533 : term,X534 : subst > term > subst > $o] : (~! [X535 : term,X536 : subst,X537 : subst,X538 : subst] : (~($true = (X534 @ (comp @ X537 @ X536) @ (sub @ X535 @ X536) @ X538)) | ($true = (X534 @ X537 @ X535 @ (comp @ X536 @ X538)))) | ((X534 @ id @ (lam @ X533) @ id) = $true) | ~! [X539 : term,X540 : subst,X541 : subst,X542 : subst] : (~((X534 @ X542 @ X539 @ (comp @ X540 @ X541)) = $true) | ((X534 @ (comp @ X542 @ X540) @ (sub @ X539 @ X540) @ X541) = $true)) | ~! [X543 : subst > term > term] : (~! [X544 : term] : (($true = (X534 @ id @ (X543 @ id @ X544) @ id)) | ~($true = (X534 @ id @ X544 @ id))) | ($true = (X534 @ id @ (lam @ (X543 @ sh @ one)) @ id)) | ~! [X545 : subst,X546 : term,X547 : subst] : ((sub @ (X543 @ X547 @ X546) @ X545) = (X543 @ (comp @ X547 @ X545) @ (sub @ X546 @ X545)))) | ~! [X548 : term] : (~($true = (X534 @ id @ X548 @ id)) | ($true = (X534 @ id @ (sub @ X533 @ (push @ X548 @ id)) @ id)))))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasapnotvar_gthm = $true) & ((axidl = $true) <=> ! [X549 : subst] : ((comp @ id @ X549) = X549))),
% 6.47/2.17    inference(fool_elimination,[status(thm)],[f7])).
% 6.47/2.17  thf(f7,plain,(
% 6.47/2.17    (! [X0 : term,X1 : term > $o,X2 : subst] : ~! [X3 : term > $o] : ~! [X4 : term] : ((X1 @ (sub @ X4 @ (push @ X0 @ X2))) = (X3 @ X4)) <=> pushprop_lem0_lthm) & hoasinduction_lem2v2_gthm & pushprop_lem3v2 & (! [X5 : term > $o,X6 : term] : (~! [X7 : term] : ((X5 @ (lam @ X7)) | ~(X5 @ X7)) | ~! [X8 : term,X9 : term] : (~(X5 @ X8) | (X5 @ (ap @ X9 @ X8)) | ~(X5 @ X9)) | ~! [X10 : term] : ((X5 @ X10) | ~(var @ X10)) | (X5 @ X6)) <=> induction) & (! [X11 : term,X12 : term,X13 : term,X14 : term] : (((ap @ (sub @ X14 @ id) @ X12) != (ap @ (sub @ X13 @ id) @ X11)) | (X11 = X12)) <=> hoasapinj2) & (hoasinduction_lem3aaa <=> ! [X15 : subst > term > subst > $o,X16 : term] : (~! [X17 : term,X18 : subst > term > term] : (~! [X19 : term] : ((X15 @ id @ (X18 @ id @ X19) @ id) | ~(X15 @ id @ X19 @ id)) | ~! [X20 : subst,X21 : subst,X22 : term] : ((sub @ (sub @ X17 @ (push @ X22 @ X21)) @ X20) = (sub @ (X18 @ X21 @ X22) @ X20)) | ~! [X23 : subst,X24 : subst,X25 : term] : ((X18 @ (comp @ X23 @ X24) @ (sub @ X25 @ X24)) = (sub @ X17 @ (push @ (sub @ X25 @ X24) @ (comp @ X23 @ X24)))) | (X15 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X15 @ id @ (lam @ (sub @ X16 @ (push @ one @ sh))) @ id) | ~! [X26 : term] : ((X15 @ id @ (sub @ X16 @ (push @ X26 @ id)) @ id) | ~(X15 @ id @ X26 @ id)))) & hoasapinj2_gthm & (pushprop_lem1v2 <=> ! [X27 : term > $o,X28 : term,X29 : term > $o,X30 : subst] : (~! [X31 : term] : ((X29 @ X31) = (X27 @ (sub @ X31 @ (push @ X28 @ X30)))) | ~(X27 @ X28) | (X29 @ one))) & ((! [X32 : term,X33 : subst] : ((sub @ one @ (push @ X32 @ X33)) = X32) => (! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34) => ! [X36 : term,X37 : term > $o,X38 : term,X39 : term > $o,X40 : subst] : ((X39 @ (sub @ X36 @ (push @ X38 @ X40))) | ~(X37 @ X36)))) <=> pushprop_lem1_lthm) & (! [X41 : subst > term > subst > $o,X42 : term,X43 : term > $o,X44 : term] : (~(X43 @ X44) | ~! [X45 : term,X46 : term] : (~(X41 @ id @ X46 @ id) | ~(X41 @ id @ X45 @ id) | (X41 @ id @ (ap @ (sub @ X46 @ id) @ X45) @ id)) | ~! [X47 : term] : ((X43 @ X47) = (X41 @ id @ X47 @ id)) | ~! [X48 : term,X49 : subst,X50 : subst,X51 : subst] : ((X41 @ (comp @ X50 @ X49) @ (sub @ X48 @ X49) @ X51) | ~(X41 @ X50 @ X48 @ (comp @ X49 @ X51))) | ~(X43 @ X42) | ~! [X52 : subst,X53 : subst,X54 : term,X55 : subst] : ((X41 @ X53 @ X54 @ (comp @ X52 @ X55)) | ~(X41 @ (comp @ X53 @ X52) @ (sub @ X54 @ X52) @ X55)) | (X43 @ (ap @ X42 @ X44))) <=> hoasinduction_lem2v2) & ! [X56 : d_subst,X57 : d_subst] : (((d2subst @ X56) = (d2subst @ X57)) => (X56 = X57)) & ~(var @ (d2term @ d_one)) & pushprop_lem1v2_gthm & ! [X58 : term] : ? [X59 : d_term] : ((d2term @ X59) = X58) & induction2lem_gthm & ~lamnotap & (substmonoid_lthm <=> (! [X60 : subst] : ((comp @ id @ X60) = X60) => (! [X61 : subst] : ((comp @ X61 @ id) = X61) => (! [X62 : subst] : ((comp @ X62 @ id) = X62) & ! [X63 : subst] : ((comp @ id @ X63) = X63))))) & ulamvarind & (induction2_lthm <=> (! [X64 : term] : ((sub @ X64 @ id) = X64) => (! [X65 : subst,X66 : term > $o,X67 : term] : (~! [X68 : term,X69 : term] : ((X66 @ (ap @ X68 @ X69)) | ~(X66 @ X68) | ~(X66 @ X69)) | ~! [X70 : term] : (~! [X71 : term] : (~(X66 @ X71) | (X66 @ (sub @ X70 @ (push @ X71 @ id)))) | (X66 @ (lam @ X70))) | (X66 @ (sub @ X67 @ X65)) | ~! [X72 : term] : ((X66 @ (sub @ X72 @ X65)) | ~(var @ X72))) => ! [X73 : term,X74 : term > $o] : (~! [X75 : term] : ((X74 @ (lam @ X75)) | ~! [X76 : term] : ((X74 @ (sub @ X75 @ (push @ X76 @ id))) | ~(X74 @ X76))) | ~! [X77 : term] : ((X74 @ X77) | ~(var @ X77)) | ~! [X78 : term,X79 : term] : (~(X74 @ X78) | ~(X74 @ X79) | (X74 @ (ap @ X79 @ X78))) | (X74 @ X73))))) & (! [X80 : term] : ((sub @ X80 @ id) = X80) <=> axvarid) & axabs & (hoasinduction_lem3v2a <=> ! [X81 : term,X82 : subst > term > subst > $o,X83 : term > $o] : (~! [X84 : term] : ((X83 @ (sub @ X81 @ (push @ X84 @ id))) | ~(X83 @ X84)) | ~! [X85 : term] : ((X83 @ X85) = (X82 @ id @ X85 @ id)) | ~! [X86 : subst > term > term] : ((X82 @ id @ (lam @ (X86 @ sh @ one)) @ id) | ~! [X87 : term,X88 : subst,X89 : subst] : ((X86 @ (comp @ X88 @ X89) @ (sub @ X87 @ X89)) = (sub @ (X86 @ X88 @ X87) @ X89)) | ~! [X90 : term] : (~(X82 @ id @ X90 @ id) | (X82 @ id @ (X86 @ id @ X90) @ id))) | (X83 @ (lam @ X81)))) & hoasinduction_lem2_lthm & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & hoasinduction_lem1_lthm & (! [X91 : subst > term > term,X92 : subst > term > term,X93 : subst,X94 : term] : (((lam @ (X92 @ sh @ one)) != (lam @ (X91 @ sh @ one))) | ~! [X95 : subst,X96 : subst,X97 : term] : ((sub @ (X92 @ X96 @ X97) @ X95) = (X92 @ (comp @ X96 @ X95) @ (sub @ X97 @ X95))) | ((X91 @ X93 @ X94) = (X92 @ X93 @ X94)) | ~! [X98 : term,X99 : subst,X100 : subst] : ((X91 @ (comp @ X99 @ X100) @ (sub @ X98 @ X100)) = (sub @ (X91 @ X99 @ X98) @ X100))) <=> hoaslaminj) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & hoaslamnotap_lthm & pushprop_lem0_gthm & (one = (d2term @ d_one)) & (! [X101 : term,X102 : term,X103 : term,X104 : term] : ((X101 = X104) | ((ap @ X104 @ X103) != (ap @ X101 @ X102))) <=> apinj1) & hoasinduction_lem2_gthm & lamnotvar & termmset_gthm & hoasinduction_lem3v2_gthm & ! [X105 : d_subst] : (d_id = X105) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((! [X106 : subst,X107 : term] : ((sub @ one @ (push @ X107 @ X106)) = X107) => ! [X108 : term,X109 : term > $o,X110 : term > $o,X111 : subst] : (~(X109 @ X108) | (X110 @ one) | ~! [X112 : term] : ((X109 @ (sub @ X112 @ (push @ X108 @ X111))) = (X110 @ X112)))) <=> pushprop_lem1v2_lthm) & (hoasinduction_lem3aa_lthm <=> ! [X113 : subst > term > subst > $o,X114 : term] : (~! [X115 : subst > term > term] : (~! [X116 : term] : (~(X113 @ id @ X116 @ id) | (X113 @ id @ (X115 @ id @ X116) @ id)) | ~! [X117 : subst,X118 : subst,X119 : term] : ((X115 @ (comp @ X118 @ X117) @ (sub @ X119 @ X117)) = (sub @ (X115 @ X118 @ X119) @ X117)) | (X113 @ id @ (lam @ (X115 @ sh @ one)) @ id)) | (X113 @ id @ (lam @ (sub @ X114 @ (push @ one @ sh))) @ id) | ~! [X120 : term] : (~(X113 @ id @ X120 @ id) | (X113 @ id @ (sub @ X114 @ (push @ X120 @ id)) @ id)))) & hoaslamnotvar_gthm & (hoasinduction_lem0 <=> ! [X121 : subst > term > subst > $o] : ~! [X122 : term > $o] : ~! [X123 : term] : ((X121 @ id @ X123 @ id) = (X122 @ X123))) & hoasinduction_lem1v2 & ((! [X124 : term] : ((sub @ X124 @ id) = X124) => (! [X125 : term,X126 : subst > term > subst > $o] : (~! [X127 : term] : ((X126 @ id @ (sub @ X125 @ (push @ X127 @ id)) @ id) | ~(X126 @ id @ X127 @ id)) | (X126 @ id @ (lam @ (sub @ X125 @ (push @ one @ sh))) @ id) | ~! [X128 : subst > term > term] : ((X126 @ id @ (lam @ (X128 @ sh @ one)) @ id) | ~! [X129 : subst,X130 : subst,X131 : term] : ((X128 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) = (sub @ (X128 @ X129 @ X131) @ X130)) | ~! [X132 : term] : ((X126 @ id @ (X128 @ id @ X132) @ id) | ~(X126 @ id @ X132 @ id)))) => ! [X133 : subst > term > subst > $o,X134 : term] : (~! [X135 : subst > term > term] : (~! [X136 : term] : (~(X133 @ id @ X136 @ id) | (X133 @ id @ (X135 @ id @ X136) @ id)) | ~! [X137 : subst,X138 : subst,X139 : term] : ((sub @ (X135 @ X138 @ X139) @ X137) = (X135 @ (comp @ X138 @ X137) @ (sub @ X139 @ X137))) | (X133 @ id @ (lam @ (X135 @ sh @ one)) @ id)) | ~! [X140 : term] : (~(X133 @ id @ X140 @ id) | (X133 @ id @ (sub @ X134 @ (push @ X140 @ id)) @ id)) | (X133 @ id @ (lam @ X134) @ id)))) <=> hoasinduction_lem3a_lthm) & hoasapinj1_gthm & hoaslamnotvar_lthm & hoasapnotvar_lthm & (hoasinduction_lem3b <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((X142 @ sh @ one) != (sub @ X141 @ (push @ one @ sh)))) & hoaslaminj_gthm & pushprop_lthm & pushprop_lem3v2_lthm & axvarshift & hoaslamnotap_gthm & (! [X143 : term > $o,X144 : subst,X145 : term > $o,X146 : term,X147 : term] : ((X143 @ (sub @ X146 @ (push @ X147 @ X144))) | ~(X145 @ X146)) <=> pushprop_lem1) & ((! [X148 : term] : ((sub @ X148 @ id) = X148) => ! [X149 : subst > term > subst > $o,X150 : term,X151 : term > $o] : (~! [X152 : term] : (~(X151 @ X152) | (X151 @ (sub @ X150 @ (push @ X152 @ id)))) | ~! [X153 : subst,X154 : term,X155 : subst,X156 : subst] : ((X149 @ X156 @ X154 @ (comp @ X153 @ X155)) | ~(X149 @ (comp @ X156 @ X153) @ (sub @ X154 @ X153) @ X155)) | (X151 @ (lam @ X150)) | ~! [X157 : subst,X158 : subst,X159 : term,X160 : subst] : ((X149 @ (comp @ X157 @ X160) @ (sub @ X159 @ X160) @ X158) | ~(X149 @ X157 @ X159 @ (comp @ X160 @ X158))) | ~! [X161 : subst > term > term] : (~! [X162 : subst,X163 : subst,X164 : term] : ((X161 @ (comp @ X163 @ X162) @ (sub @ X164 @ X162)) = (sub @ (X161 @ X163 @ X164) @ X162)) | ~! [X165 : term] : (~(X149 @ id @ X165 @ id) | (X149 @ id @ (X161 @ id @ X165) @ id)) | (X149 @ id @ (lam @ (X161 @ sh @ one)) @ id)) | ~! [X166 : term] : ((X149 @ id @ X166 @ id) = (X151 @ X166)))) <=> hoasinduction_lem3v2_lthm) & ((! [X167 : subst,X168 : term] : ((sub @ one @ (push @ X168 @ X167)) = X168) => (! [X169 : subst,X170 : term] : ((comp @ sh @ (push @ X170 @ X169)) = X169) => (! [X171 : subst] : ((comp @ X171 @ id) = X171) => (! [X172 : term,X173 : term > $o] : (~! [X174 : term] : ((X173 @ (lam @ X174)) | ~(X173 @ X174)) | (X173 @ X172) | ~! [X175 : term] : ((X173 @ X175) | ~(var @ X175)) | ~! [X176 : term,X177 : term] : (~(X173 @ X176) | ~(X173 @ X177) | (X173 @ (ap @ X177 @ X176)))) => ! [X178 : subst,X179 : term > $o,X180 : term] : (~! [X181 : term] : (~(var @ X181) | (X179 @ (sub @ X181 @ X178))) | ~! [X182 : term,X183 : term] : (~(X179 @ X182) | (X179 @ (ap @ X183 @ X182)) | ~(X179 @ X183)) | (X179 @ (sub @ X180 @ X178)) | ~! [X184 : term] : ((X179 @ (lam @ X184)) | ~! [X185 : term] : ((X179 @ (sub @ X184 @ (push @ X185 @ id))) | ~(X179 @ X185)))))))) <=> induction2lem_lthm) & (hoasinduction_lem0_lthm <=> ! [X186 : subst > term > subst > $o] : ~! [X187 : term > $o] : ~! [X188 : term] : ((X186 @ id @ X188 @ id) = (X187 @ X188))) & (! [X189 : subst > term > subst > $o,X190 : term] : (~! [X191 : term,X192 : term] : (~(X189 @ id @ X192 @ id) | (X189 @ id @ (ap @ (sub @ X192 @ id) @ X191) @ id) | ~(X189 @ id @ X191 @ id)) | ~! [X193 : subst > term > term] : (~! [X194 : subst,X195 : subst,X196 : term] : ((X193 @ (comp @ X195 @ X194) @ (sub @ X196 @ X194)) = (sub @ (X193 @ X195 @ X196) @ X194)) | (X189 @ id @ (lam @ (X193 @ sh @ one)) @ id) | ~! [X197 : term] : ((X189 @ id @ (X193 @ id @ X197) @ id) | ~(X189 @ id @ X197 @ id))) | ~! [X198 : term] : ((X189 @ id @ X198 @ id) | ~(var @ (sub @ X198 @ id))) | (X189 @ id @ X190 @ id) | ~! [X199 : subst,X200 : subst,X201 : subst,X202 : term] : ((X189 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200) @ X199) | ~(X189 @ X201 @ X202 @ (comp @ X200 @ X199))) | ~! [X203 : subst,X204 : subst,X205 : term,X206 : subst] : (~(X189 @ (comp @ X204 @ X203) @ (sub @ X205 @ X203) @ X206) | (X189 @ X204 @ X205 @ (comp @ X203 @ X206)))) <=> hoasinduction) & (hoaslam = (^[X207 : subst, X208 : subst > term > term] : (d2term @ d_one))) & pushprop_lem2v2_lthm & ! [X209 : d_term,X210 : d_term] : (((d2term @ X210) = (d2term @ X209)) => (X209 = X210)) & (substmonoid <=> (! [X211 : subst] : ((comp @ X211 @ id) = X211) & ! [X212 : subst] : ((comp @ id @ X212) = X212))) & ulamvarsh & induction2_gthm & axassoc & (! [X213 : term,X214 : term,X215 : subst > term > term] : (((lam @ (X215 @ sh @ one)) != (ap @ (sub @ X214 @ id) @ X213)) | ~! [X216 : subst,X217 : subst,X218 : term] : ((X215 @ (comp @ X216 @ X217) @ (sub @ X218 @ X217)) = (sub @ (X215 @ X216 @ X218) @ X217))) <=> hoaslamnotap) & hoasinduction_lem3a_gthm & (axscons <=> ! [X219 : subst] : ((push @ (sub @ one @ X219) @ (comp @ sh @ X219)) = X219)) & ((! [X220 : subst,X221 : term] : ((sub @ one @ (push @ X221 @ X220)) = X221) => (! [X222 : subst,X223 : term] : ((comp @ sh @ (push @ X223 @ X222)) = X222) => (! [X224 : term,X225 : term] : (((lam @ X224) != (lam @ X225)) | (X224 = X225)) => ! [X226 : subst > term > term,X227 : subst > term > term,X228 : term,X229 : subst] : (((X227 @ X229 @ X228) = (X226 @ X229 @ X228)) | ~! [X230 : subst,X231 : term,X232 : subst] : ((X226 @ (comp @ X230 @ X232) @ (sub @ X231 @ X232)) = (sub @ (X226 @ X230 @ X231) @ X232)) | ~! [X233 : subst,X234 : subst,X235 : term] : ((sub @ (X227 @ X234 @ X235) @ X233) = (X227 @ (comp @ X234 @ X233) @ (sub @ X235 @ X233))) | ((lam @ (X226 @ sh @ one)) != (lam @ (X227 @ sh @ one))))))) <=> hoaslaminj_lthm) & (hoasinduction_lem2 <=> ! [X236 : term,X237 : subst > term > subst > $o,X238 : term] : ((X237 @ id @ (ap @ X236 @ X238) @ id) | ~! [X239 : subst,X240 : subst,X241 : term,X242 : subst] : ((X237 @ (comp @ X239 @ X242) @ (sub @ X241 @ X242) @ X240) | ~(X237 @ X239 @ X241 @ (comp @ X242 @ X240))) | ~(X237 @ id @ X238 @ id) | ~! [X243 : term,X244 : term] : (~(X237 @ id @ X243 @ id) | (X237 @ id @ (ap @ (sub @ X244 @ id) @ X243) @ id) | ~(X237 @ id @ X244 @ id)) | ~(X237 @ id @ X236 @ id) | ~! [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (~(X237 @ (comp @ X246 @ X248) @ (sub @ X245 @ X248) @ X247) | (X237 @ X246 @ X245 @ (comp @ X248 @ X247))))) & ~ulamvar1 & axapp & (! [X249 : term,X250 : subst > term > subst > $o] : (~! [X251 : subst > term > term] : ((X250 @ id @ (lam @ (X251 @ sh @ one)) @ id) | ~! [X252 : term] : (~(X250 @ id @ X252 @ id) | (X250 @ id @ (X251 @ id @ X252) @ id)) | ~! [X253 : subst,X254 : term,X255 : subst] : ((sub @ (X251 @ X255 @ X254) @ X253) = (X251 @ (comp @ X255 @ X253) @ (sub @ X254 @ X253)))) | ~! [X256 : term,X257 : term] : (~(X250 @ id @ X256 @ id) | ~(X250 @ id @ X257 @ id) | (X250 @ id @ (ap @ (sub @ X257 @ id) @ X256) @ id)) | (X250 @ id @ X249 @ id)) <=> hoasinduction_no_psi_cond) & hoasinduction_gthm & hoasinduction_lem3b_gthm & (! [X258 : term,X259 : term,X260 : term,X261 : term] : (((ap @ X261 @ X259) != (ap @ X260 @ X258)) | (X258 = X259)) <=> apinj2) & hoaslamnotvar & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (induction2lem <=> ! [X262 : subst,X263 : term,X264 : term > $o] : (~! [X265 : term,X266 : term] : ((X264 @ (ap @ X265 @ X266)) | ~(X264 @ X266) | ~(X264 @ X265)) | ~! [X267 : term] : (~(var @ X267) | (X264 @ (sub @ X267 @ X262))) | (X264 @ (sub @ X263 @ X262)) | ~! [X268 : term] : ((X264 @ (lam @ X268)) | ~! [X269 : term] : (~(X264 @ X269) | (X264 @ (sub @ X268 @ (push @ X269 @ id))))))) & (hoasinduction_lem3v2a_lthm <=> (! [X270 : term] : ~! [X271 : subst > term > term] : ~! [X272 : subst,X273 : term] : ((X271 @ X272 @ X273) = (sub @ X270 @ (push @ X273 @ X272))) => (! [X274 : term] : ((sub @ X274 @ id) = X274) => ! [X275 : term,X276 : term > $o,X277 : subst > term > subst > $o] : (~! [X278 : term] : ((X277 @ id @ X278 @ id) = (X276 @ X278)) | (X276 @ (lam @ X275)) | ~! [X279 : term] : (~(X276 @ X279) | (X276 @ (sub @ X275 @ (push @ X279 @ id)))) | ~! [X280 : subst > term > term] : ((X277 @ id @ (lam @ (X280 @ sh @ one)) @ id) | ~! [X281 : subst,X282 : subst,X283 : term] : ((sub @ (X280 @ X282 @ X283) @ X281) = (X280 @ (comp @ X282 @ X281) @ (sub @ X283 @ X281))) | ~! [X284 : term] : (~(X277 @ id @ X284 @ id) | (X277 @ id @ (X280 @ id @ X284) @ id))))))) & (! [X285 : term] : ~! [X286 : subst > term > term] : ((X286 @ sh @ one) != (sub @ X285 @ (push @ one @ sh))) <=> hoasinduction_lem3b_lthm) & hoasinduction_lem1 & (axshiftcons <=> ! [X287 : term,X288 : subst] : ((comp @ sh @ (push @ X287 @ X288)) = X288)) & (hoasapinj1 <=> ! [X289 : term,X290 : term,X291 : term,X292 : term] : (((ap @ (sub @ X291 @ id) @ X290) != (ap @ (sub @ X289 @ id) @ X292)) | (X289 = X291))) & hoasapnotvar & (axvarcons <=> ! [X293 : term,X294 : subst] : ((sub @ one @ (push @ X293 @ X294)) = X293)) & ((d2subst @ d_id) = id) & pushprop & ((! [X295 : term] : ((sub @ X295 @ id) = X295) => ! [X296 : term] : ((sub @ X296 @ id) = X296)) <=> termmset_lthm) & hoasinduction_lem1v2_gthm & (hoasapinj2_lthm <=> (! [X297 : term,X298 : term,X299 : term,X300 : term] : ((X297 = X300) | ((ap @ X298 @ X297) != (ap @ X299 @ X300))) => ! [X301 : term,X302 : term,X303 : term,X304 : term] : ((X302 = X304) | ((ap @ (sub @ X303 @ id) @ X304) != (ap @ (sub @ X301 @ id) @ X302))))) & (! [X305 : term] : ~! [X306 : subst > term > term] : ~! [X307 : subst,X308 : term] : ((X306 @ X307 @ X308) = (sub @ X305 @ (push @ X308 @ X307))) <=> hoasinduction_lem3v2_f_lthm) & (laminj <=> ! [X309 : term,X310 : term] : (((lam @ X309) != (lam @ X310)) | (X309 = X310))) & (hoasinduction_lem3 <=> ! [X311 : subst > term > subst > $o,X312 : term] : (~! [X313 : term] : (~(X311 @ id @ X313 @ id) | (X311 @ id @ (sub @ X312 @ (push @ X313 @ id)) @ id)) | ~! [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (~(X311 @ X317 @ X314 @ (comp @ X315 @ X316)) | (X311 @ (comp @ X317 @ X315) @ (sub @ X314 @ X315) @ X316)) | ~! [X318 : subst > term > term] : (~! [X319 : term] : ((X311 @ id @ (X318 @ id @ X319) @ id) | ~(X311 @ id @ X319 @ id)) | (X311 @ id @ (lam @ (X318 @ sh @ one)) @ id) | ~! [X320 : term,X321 : subst,X322 : subst] : ((sub @ (X318 @ X322 @ X320) @ X321) = (X318 @ (comp @ X322 @ X321) @ (sub @ X320 @ X321)))) | (X311 @ id @ (lam @ X312) @ id) | ~! [X323 : subst,X324 : term,X325 : subst,X326 : subst] : ((X311 @ X326 @ X324 @ (comp @ X323 @ X325)) | ~(X311 @ (comp @ X326 @ X323) @ (sub @ X324 @ X323) @ X325)))) & (hoasinduction_no_psi_cond_lthm <=> (! [X327 : subst > term > subst > $o] : ~! [X328 : term > $o] : ~! [X329 : term] : ((X327 @ id @ X329 @ id) = (X328 @ X329)) => (! [X330 : term > $o,X331 : term] : (~! [X332 : term] : (~(var @ X332) | (X330 @ X332)) | ~! [X333 : term] : ((X330 @ (lam @ X333)) | ~! [X334 : term] : ((X330 @ (sub @ X333 @ (push @ X334 @ id))) | ~(X330 @ X334))) | (X330 @ X331) | ~! [X335 : term,X336 : term] : (~(X330 @ X336) | ~(X330 @ X335) | (X330 @ (ap @ X335 @ X336)))) => (! [X337 : term] : ((sub @ X337 @ id) = X337) => (! [X338 : subst > term > subst > $o,X339 : term > $o,X340 : term] : ((X339 @ (lam @ X340)) | ~! [X341 : subst > term > term] : (~! [X342 : term] : ((X338 @ id @ (X341 @ id @ X342) @ id) | ~(X338 @ id @ X342 @ id)) | ~! [X343 : subst,X344 : subst,X345 : term] : ((sub @ (X341 @ X343 @ X345) @ X344) = (X341 @ (comp @ X343 @ X344) @ (sub @ X345 @ X344))) | (X338 @ id @ (lam @ (X341 @ sh @ one)) @ id)) | ~! [X346 : term] : ((X339 @ (sub @ X340 @ (push @ X346 @ id))) | ~(X339 @ X346)) | ~! [X347 : term] : ((X339 @ X347) = (X338 @ id @ X347 @ id))) => ! [X348 : term,X349 : subst > term > subst > $o] : (~! [X350 : term,X351 : term] : ((X349 @ id @ (ap @ (sub @ X350 @ id) @ X351) @ id) | ~(X349 @ id @ X351 @ id) | ~(X349 @ id @ X350 @ id)) | ~! [X352 : subst > term > term] : (~! [X353 : term,X354 : subst,X355 : subst] : ((sub @ (X352 @ X355 @ X353) @ X354) = (X352 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354))) | ~! [X356 : term] : (~(X349 @ id @ X356 @ id) | (X349 @ id @ (X352 @ id @ X356) @ id)) | (X349 @ id @ (lam @ (X352 @ sh @ one)) @ id)) | (X349 @ id @ X348 @ id))))))) & apnotvar & (termmset <=> ! [X357 : term] : ((sub @ X357 @ id) = X357)) & pushprop_lthm_orig & hoasinduction_lem1_gthm & (hoasinduction_lem3v2 <=> ! [X358 : term,X359 : term > $o,X360 : subst > term > subst > $o] : (~! [X361 : term] : ((X359 @ X361) = (X360 @ id @ X361 @ id)) | ~! [X362 : subst > term > term] : (~! [X363 : term] : ((X360 @ id @ (X362 @ id @ X363) @ id) | ~(X360 @ id @ X363 @ id)) | ~! [X364 : subst,X365 : term,X366 : subst] : ((X362 @ (comp @ X364 @ X366) @ (sub @ X365 @ X366)) = (sub @ (X362 @ X364 @ X365) @ X366)) | (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | (X359 @ (lam @ X358)) | ~! [X367 : term] : (~(X359 @ X367) | (X359 @ (sub @ X358 @ (push @ X367 @ id)))) | ~! [X368 : subst,X369 : subst,X370 : subst,X371 : term] : (~(X360 @ X370 @ X371 @ (comp @ X368 @ X369)) | (X360 @ (comp @ X370 @ X368) @ (sub @ X371 @ X368) @ X369)) | ~! [X372 : subst,X373 : subst,X374 : subst,X375 : term] : ((X360 @ X373 @ X375 @ (comp @ X372 @ X374)) | ~(X360 @ (comp @ X373 @ X372) @ (sub @ X375 @ X372) @ X374)))) & (! [X376 : subst] : ((comp @ X376 @ id) = X376) <=> axidr) & (hoasinduction_lem3aa <=> ! [X377 : subst > term > subst > $o,X378 : term] : (~! [X379 : subst > term > term] : (~! [X380 : term] : ((X377 @ id @ (X379 @ id @ X380) @ id) | ~(X377 @ id @ X380 @ id)) | ~! [X381 : term,X382 : subst,X383 : subst] : ((sub @ (X379 @ X382 @ X381) @ X383) = (X379 @ (comp @ X382 @ X383) @ (sub @ X381 @ X383))) | (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id)) | (X377 @ id @ (lam @ (sub @ X378 @ (push @ one @ sh))) @ id) | ~! [X384 : term] : (~(X377 @ id @ X384 @ id) | (X377 @ id @ (sub @ X378 @ (push @ X384 @ id)) @ id)))) & axclos & pushprop_lem1_gthm & pushprop_gthm & ! [X385 : subst] : ? [X386 : d_subst] : ((d2subst @ X386) = X385) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & hoasinduction_lem3_gthm & (hoasinduction_lem3v2_f <=> ! [X387 : term] : ~! [X388 : subst > term > term] : ~! [X389 : subst,X390 : term] : ((X388 @ X389 @ X390) = (sub @ X387 @ (push @ X390 @ X389)))) & ((d2subst @ d_id) = sh) & pushprop_lem2v2_gthm & ((! [X391 : term,X392 : term > $o] : ((X392 @ X391) | ~! [X393 : term] : ((X392 @ (lam @ X393)) | ~! [X394 : term] : (~(X392 @ X394) | (X392 @ (sub @ X393 @ (push @ X394 @ id))))) | ~! [X395 : term,X396 : term] : (~(X392 @ X396) | (X392 @ (ap @ X395 @ X396)) | ~(X392 @ X395)) | ~! [X397 : term] : (~(var @ X397) | (X392 @ X397))) => (! [X398 : term,X399 : term,X400 : subst > term > subst > $o] : (~(X400 @ id @ X399 @ id) | ~! [X401 : subst,X402 : subst,X403 : subst,X404 : term] : ((X400 @ (comp @ X403 @ X402) @ (sub @ X404 @ X402) @ X401) | ~(X400 @ X403 @ X404 @ (comp @ X402 @ X401))) | ~! [X405 : term,X406 : term] : (~(X400 @ id @ X406 @ id) | ~(X400 @ id @ X405 @ id) | (X400 @ id @ (ap @ (sub @ X406 @ id) @ X405) @ id)) | (X400 @ id @ (ap @ X398 @ X399) @ id) | ~(X400 @ id @ X398 @ id) | ~! [X407 : term,X408 : subst,X409 : subst,X410 : subst] : ((X400 @ X409 @ X407 @ (comp @ X410 @ X408)) | ~(X400 @ (comp @ X409 @ X410) @ (sub @ X407 @ X410) @ X408))) => (! [X411 : term,X412 : subst > term > subst > $o] : (~! [X413 : subst > term > term] : (~! [X414 : subst,X415 : subst,X416 : term] : ((X413 @ (comp @ X414 @ X415) @ (sub @ X416 @ X415)) = (sub @ (X413 @ X414 @ X416) @ X415)) | ~! [X417 : term] : (~(X412 @ id @ X417 @ id) | (X412 @ id @ (X413 @ id @ X417) @ id)) | (X412 @ id @ (lam @ (X413 @ sh @ one)) @ id)) | ~! [X418 : term] : ((X412 @ id @ (sub @ X411 @ (push @ X418 @ id)) @ id) | ~(X412 @ id @ X418 @ id)) | ~! [X419 : subst,X420 : subst,X421 : subst,X422 : term] : ((X412 @ (comp @ X419 @ X420) @ (sub @ X422 @ X420) @ X421) | ~(X412 @ X419 @ X422 @ (comp @ X420 @ X421))) | (X412 @ id @ (lam @ X411) @ id) | ~! [X423 : subst,X424 : subst,X425 : subst,X426 : term] : ((X412 @ X424 @ X426 @ (comp @ X423 @ X425)) | ~(X412 @ (comp @ X424 @ X423) @ (sub @ X426 @ X423) @ X425))) => ! [X427 : subst > term > subst > $o,X428 : term] : ((X427 @ id @ X428 @ id) | ~! [X429 : subst,X430 : subst,X431 : subst,X432 : term] : ((X427 @ X431 @ X432 @ (comp @ X430 @ X429)) | ~(X427 @ (comp @ X431 @ X430) @ (sub @ X432 @ X430) @ X429)) | ~! [X433 : term] : ((X427 @ id @ X433 @ id) | ~(var @ (sub @ X433 @ id))) | ~! [X434 : term,X435 : term] : (~(X427 @ id @ X434 @ id) | (X427 @ id @ (ap @ (sub @ X435 @ id) @ X434) @ id) | ~(X427 @ id @ X435 @ id)) | ~! [X436 : subst > term > term] : ((X427 @ id @ (lam @ (X436 @ sh @ one)) @ id) | ~! [X437 : subst,X438 : term,X439 : subst] : ((X436 @ (comp @ X439 @ X437) @ (sub @ X438 @ X437)) = (sub @ (X436 @ X439 @ X438) @ X437)) | ~! [X440 : term] : (~(X427 @ id @ X440 @ id) | (X427 @ id @ (X436 @ id @ X440) @ id))) | ~! [X441 : subst,X442 : term,X443 : subst,X444 : subst] : ((X427 @ (comp @ X443 @ X444) @ (sub @ X442 @ X444) @ X441) | ~(X427 @ X443 @ X442 @ (comp @ X444 @ X441))))))) <=> hoasinduction_lthm) & (hoasinduction_p_and_p_prime = (^[X445 : subst > term > subst > $o, X446 : term > $o] : (! [X447 : term] : ((X446 @ X447) = (X445 @ id @ X447 @ id))))) & (! [X448 : subst,X449 : term > $o,X450 : term] : ~! [X451 : term > $o] : ~! [X452 : term] : ((X451 @ X452) = (X449 @ (sub @ X452 @ (push @ X450 @ X448)))) <=> pushprop_lem0) & (! [X453 : term,X454 : term] : (((sub @ X453 @ sh) != (sub @ X454 @ sh)) | (X453 = X454)) <=> shinj) & ((^[X455 : term, X456 : subst, X457 : term > $o, X458 : term > $o] : (! [X459 : term] : ((X458 @ X459) = (X457 @ (sub @ X459 @ (push @ X455 @ X456)))))) = pushprop_p_and_p_prime) & substmonoid_gthm & (hoasinduction_lem3a <=> ! [X460 : term,X461 : subst > term > subst > $o] : ((X461 @ id @ (lam @ X460) @ id) | ~! [X462 : term] : (~(X461 @ id @ X462 @ id) | (X461 @ id @ (sub @ X460 @ (push @ X462 @ id)) @ id)) | ~! [X463 : subst > term > term] : ((X461 @ id @ (lam @ (X463 @ sh @ one)) @ id) | ~! [X464 : term] : (~(X461 @ id @ X464 @ id) | (X461 @ id @ (X463 @ id @ X464) @ id)) | ~! [X465 : subst,X466 : subst,X467 : term] : ((X463 @ (comp @ X465 @ X466) @ (sub @ X467 @ X466)) = (sub @ (X463 @ X465 @ X467) @ X466))))) & (! [X468 : term,X469 : term > $o] : ((X469 @ X468) | ~! [X470 : term] : (~! [X471 : term] : (~(X469 @ X471) | (X469 @ (sub @ X470 @ (push @ X471 @ id)))) | (X469 @ (lam @ X470))) | ~! [X472 : term,X473 : term] : (~(X469 @ X472) | (X469 @ (ap @ X473 @ X472)) | ~(X469 @ X473)) | ~! [X474 : term] : ((X469 @ X474) | ~(var @ X474))) <=> induction2) & (hoasinduction_lthm_3 <=> (! [X475 : subst > term > subst > $o] : ~! [X476 : term > $o] : ~! [X477 : term] : ((X475 @ id @ X477 @ id) = (X476 @ X477)) => (! [X478 : term > $o,X479 : term] : (~! [X480 : term] : ((X478 @ (lam @ X480)) | ~! [X481 : term] : (~(X478 @ X481) | (X478 @ (sub @ X480 @ (push @ X481 @ id))))) | ~! [X482 : term,X483 : term] : ((X478 @ (ap @ X482 @ X483)) | ~(X478 @ X482) | ~(X478 @ X483)) | (X478 @ X479) | ~! [X484 : term] : (~(var @ X484) | (X478 @ X484))) => (! [X485 : term] : ((sub @ X485 @ id) = X485) => (! [X486 : term,X487 : term > $o,X488 : subst > term > subst > $o] : ((X487 @ (lam @ X486)) | ~! [X489 : term] : ((X487 @ (sub @ X486 @ (push @ X489 @ id))) | ~(X487 @ X489)) | ~! [X490 : subst > term > term] : (~! [X491 : subst,X492 : subst,X493 : term] : ((sub @ (X490 @ X491 @ X493) @ X492) = (X490 @ (comp @ X491 @ X492) @ (sub @ X493 @ X492))) | ~! [X494 : term] : ((X488 @ id @ (X490 @ id @ X494) @ id) | ~(X488 @ id @ X494 @ id)) | (X488 @ id @ (lam @ (X490 @ sh @ one)) @ id)) | ~! [X495 : term] : ((X487 @ X495) = (X488 @ id @ X495 @ id))) => ! [X496 : subst > term > subst > $o,X497 : term] : (~! [X498 : subst,X499 : term,X500 : subst,X501 : subst] : ((X496 @ (comp @ X500 @ X501) @ (sub @ X499 @ X501) @ X498) | ~(X496 @ X500 @ X499 @ (comp @ X501 @ X498))) | ~! [X502 : subst > term > term] : (~! [X503 : subst,X504 : subst,X505 : term] : ((X502 @ (comp @ X503 @ X504) @ (sub @ X505 @ X504)) = (sub @ (X502 @ X503 @ X505) @ X504)) | (X496 @ id @ (lam @ (X502 @ sh @ one)) @ id) | ~! [X506 : term] : ((X496 @ id @ (X502 @ id @ X506) @ id) | ~(X496 @ id @ X506 @ id))) | ~! [X507 : subst,X508 : term,X509 : subst,X510 : subst] : (~(X496 @ (comp @ X510 @ X507) @ (sub @ X508 @ X507) @ X509) | (X496 @ X510 @ X508 @ (comp @ X507 @ X509))) | ~! [X511 : term,X512 : term] : (~(X496 @ id @ X512 @ id) | ~(X496 @ id @ X511 @ id) | (X496 @ id @ (ap @ (sub @ X512 @ id) @ X511) @ id)) | ~! [X513 : term] : (~(var @ (sub @ X513 @ id)) | (X496 @ id @ X513 @ id)) | (X496 @ id @ X497 @ id))))))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasapinj1_lthm <=> (! [X514 : term] : ((sub @ X514 @ id) = X514) => (! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X516) | ((ap @ X515 @ X517) != (ap @ X516 @ X518))) => ! [X519 : term,X520 : term,X521 : term,X522 : term] : ((X520 = X522) | ((ap @ (sub @ X522 @ id) @ X521) != (ap @ (sub @ X520 @ id) @ X519)))))) & ! [X523 : d_term] : (d_one = X523) & pushprop_lem2v2 & axmap & ((! [X524 : term] : ((sub @ X524 @ id) = X524) => (! [X525 : term,X526 : subst > term > subst > $o] : (~! [X527 : subst > term > term] : (~! [X528 : term] : (~(X526 @ id @ X528 @ id) | (X526 @ id @ (X527 @ id @ X528) @ id)) | (X526 @ id @ (lam @ (X527 @ sh @ one)) @ id) | ~! [X529 : subst,X530 : term,X531 : subst] : ((X527 @ (comp @ X531 @ X529) @ (sub @ X530 @ X529)) = (sub @ (X527 @ X531 @ X530) @ X529))) | (X526 @ id @ (lam @ (sub @ X525 @ (push @ one @ sh))) @ id) | ~! [X532 : term] : (~(X526 @ id @ X532 @ id) | (X526 @ id @ (sub @ X525 @ (push @ X532 @ id)) @ id))) => ! [X533 : term,X534 : subst > term > subst > $o] : (~! [X535 : term,X536 : subst,X537 : subst,X538 : subst] : (~(X534 @ (comp @ X537 @ X536) @ (sub @ X535 @ X536) @ X538) | (X534 @ X537 @ X535 @ (comp @ X536 @ X538))) | (X534 @ id @ (lam @ X533) @ id) | ~! [X539 : term,X540 : subst,X541 : subst,X542 : subst] : (~(X534 @ X542 @ X539 @ (comp @ X540 @ X541)) | (X534 @ (comp @ X542 @ X540) @ (sub @ X539 @ X540) @ X541)) | ~! [X543 : subst > term > term] : (~! [X544 : term] : ((X534 @ id @ (X543 @ id @ X544) @ id) | ~(X534 @ id @ X544 @ id)) | (X534 @ id @ (lam @ (X543 @ sh @ one)) @ id) | ~! [X545 : subst,X546 : term,X547 : subst] : ((sub @ (X543 @ X547 @ X546) @ X545) = (X543 @ (comp @ X547 @ X545) @ (sub @ X546 @ X545)))) | ~! [X548 : term] : (~(X534 @ id @ X548 @ id) | (X534 @ id @ (sub @ X533 @ (push @ X548 @ id)) @ id))))) <=> hoasinduction_lem3_lthm) & hoasapnotvar_gthm & (axidl <=> ! [X549 : subst] : ((comp @ id @ X549) = X549))),
% 6.47/2.17    inference(rectify,[status(thm)],[f1])).
% 6.47/2.17  thf(f1,axiom,(
% 6.47/2.17    (! [X13 : term,X10 : term > $o,X14 : subst] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0_lthm) & hoasinduction_lem2v2_gthm & pushprop_lem3v2 & (! [X10 : term > $o,X21 : term] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~(X10 @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | (X10 @ X21)) <=> induction) & (! [X19 : term,X20 : term,X13 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20)) <=> hoasapinj2) & (hoasinduction_lem3aaa <=> ! [X10 : subst > term > subst > $o,X34 : term] : (~! [X35 : term,X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X38 : subst,X36 : subst,X37 : term] : ((sub @ (X18 @ X36 @ X37) @ X38) = (sub @ (sub @ X35 @ (push @ X37 @ X36)) @ X38)) | ~! [X39 : subst,X41 : subst,X40 : term] : ((X18 @ (comp @ X39 @ X41) @ (sub @ X40 @ X41)) = (sub @ X35 @ (push @ (sub @ X40 @ X41) @ (comp @ X39 @ X41)))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X10 @ id @ (lam @ (sub @ X34 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : ((X10 @ id @ (sub @ X34 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)))) & hoasapinj2_gthm & (pushprop_lem1v2 <=> ! [X10 : term > $o,X13 : term,X11 : term > $o,X14 : subst] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | ~(X10 @ X13) | (X11 @ one))) & ((! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => ! [X13 : term,X10 : term > $o,X15 : term,X26 : term > $o,X14 : subst] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13)))) <=> pushprop_lem1_lthm) & (! [X10 : subst > term > subst > $o,X44 : term,X11 : term > $o,X45 : term] : (~(X11 @ X45) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~(X11 @ X44) | ~! [X26 : subst,X14 : subst,X13 : term,X25 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X11 @ (ap @ X44 @ X45))) <=> hoasinduction_lem2v2) & ! [X6 : d_subst,X7 : d_subst] : (((d2subst @ X6) = (d2subst @ X7)) => (X6 = X7)) & ~(var @ (d2term @ d_one)) & pushprop_lem1v2_gthm & ! [X0 : term] : ? [X1 : d_term] : ((d2term @ X1) = X0) & induction2lem_gthm & ~lamnotap & (substmonoid_lthm <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) & ! [X14 : subst] : ((comp @ id @ X14) = X14))))) & ulamvarind & (induction2_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X17 : subst,X10 : term > $o,X16 : term] : (~! [X13 : term,X15 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | (X10 @ (sub @ X16 @ X17)) | ~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15))) => ! [X22 : term,X10 : term > $o] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | (X10 @ X22))))) & (! [X13 : term] : ((sub @ X13 @ id) = X13) <=> axvarid) & axabs & (hoasinduction_lem3v2a <=> ! [X29 : term,X10 : subst > term > subst > $o,X11 : term > $o] : (~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | (X11 @ (lam @ X29)))) & hoasinduction_lem2_lthm & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & hoasinduction_lem1_lthm & (! [X18 : subst > term > term,X31 : subst > term > term,X32 : subst,X33 : term] : (((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) <=> hoaslaminj) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & hoaslamnotap_lthm & pushprop_lem0_gthm & (one = (d2term @ d_one)) & (! [X15 : term,X20 : term,X19 : term,X13 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) <=> apinj1) & hoasinduction_lem2_gthm & lamnotvar & termmset_gthm & hoasinduction_lem3v2_gthm & ! [X5 : d_subst] : (d_id = X5) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => ! [X13 : term,X10 : term > $o,X11 : term > $o,X14 : subst] : (~(X10 @ X13) | (X11 @ one) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))))) <=> pushprop_lem1v2_lthm) & (hoasinduction_lem3aa_lthm <=> ! [X10 : subst > term > subst > $o,X42 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)))) & hoaslamnotvar_gthm & (hoasinduction_lem0 <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & hoasinduction_lem1v2 & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)))) => ! [X10 : subst > term > subst > $o,X43 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ X43) @ id)))) <=> hoasinduction_lem3a_lthm) & hoasapinj1_gthm & hoaslamnotvar_lthm & hoasapnotvar_lthm & (hoasinduction_lem3b <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & hoaslaminj_gthm & pushprop_lthm & pushprop_lem3v2_lthm & axvarshift & hoaslamnotap_gthm & (! [X26 : term > $o,X14 : subst,X10 : term > $o,X13 : term,X15 : term] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13)) <=> pushprop_lem1) & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X10 : subst > term > subst > $o,X48 : term,X11 : term > $o] : (~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X11 @ (lam @ X48)) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) <=> hoasinduction_lem3v2_lthm) & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X21 : term,X10 : term > $o] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~(X10 @ X13)) | (X10 @ X21) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15)))) => ! [X17 : subst,X10 : term > $o,X16 : term] : (~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ (sub @ X16 @ X17)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)))))))) <=> induction2lem_lthm) & (hoasinduction_lem0_lthm <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & (! [X10 : subst > term > subst > $o,X28 : term] : (~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | (X10 @ id @ X28 @ id) | ~! [X25 : subst,X26 : subst,X14 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X26 : subst,X14 : subst,X13 : term,X25 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25)))) <=> hoasinduction) & (hoaslam = (^[X8 : subst, X9 : subst > term > term] : (d2term @ d_one))) & pushprop_lem2v2_lthm & ! [X3 : d_term,X2 : d_term] : (((d2term @ X2) = (d2term @ X3)) => (X2 = X3)) & (substmonoid <=> (! [X14 : subst] : ((comp @ X14 @ id) = X14) & ! [X14 : subst] : ((comp @ id @ X14) = X14))) & ulamvarsh & induction2_gthm & axassoc & (! [X47 : term,X46 : term,X18 : subst > term > term] : (((lam @ (X18 @ sh @ one)) != (ap @ (sub @ X46 @ id) @ X47)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) <=> hoaslamnotap) & hoasinduction_lem3a_gthm & (axscons <=> ! [X14 : subst] : ((push @ (sub @ one @ X14) @ (comp @ sh @ X14)) = X14)) & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X15 : term,X13 : term] : (((lam @ X13) != (lam @ X15)) | (X13 = X15)) => ! [X31 : subst > term > term,X18 : subst > term > term,X33 : term,X32 : subst] : (((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))))))) <=> hoaslaminj_lthm) & (hoasinduction_lem2 <=> ! [X23 : term,X10 : subst > term > subst > $o,X24 : term] : ((X10 @ id @ (ap @ X23 @ X24) @ id) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~(X10 @ id @ X24 @ id) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id)) | ~(X10 @ id @ X23 @ id) | ~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))))) & ~ulamvar1 & axapp & (! [X30 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | (X10 @ id @ X30 @ id)) <=> hoasinduction_no_psi_cond) & hoasinduction_gthm & hoasinduction_lem3b_gthm & (! [X20 : term,X19 : term,X15 : term,X13 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20)) <=> apinj2) & hoaslamnotvar & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (induction2lem <=> ! [X17 : subst,X16 : term,X10 : term > $o] : (~! [X13 : term,X15 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | (X10 @ (sub @ X16 @ X17)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))))) & (hoasinduction_lem3v2a_lthm <=> (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X29 : term,X11 : term > $o,X10 : subst > term > subst > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X29 @ (push @ X15 @ id)))) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))))))) & (! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh))) <=> hoasinduction_lem3b_lthm) & hoasinduction_lem1 & (axshiftcons <=> ! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14)) & (hoasapinj1 <=> ! [X15 : term,X19 : term,X13 : term,X20 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15))) & hoasapnotvar & (axvarcons <=> ! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13)) & ((d2subst @ d_id) = id) & pushprop & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X13 : term] : ((sub @ X13 @ id) = X13)) <=> termmset_lthm) & hoasinduction_lem1v2_gthm & (hoasapinj2_lthm <=> (! [X20 : term,X15 : term,X13 : term,X19 : term] : ((X19 = X20) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X15 : term,X20 : term,X13 : term,X19 : term] : ((X19 = X20) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20))))) & (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) <=> hoasinduction_lem3v2_f_lthm) & (laminj <=> ! [X13 : term,X15 : term] : (((lam @ X13) != (lam @ X15)) | (X13 = X15))) & (hoasinduction_lem3 <=> ! [X10 : subst > term > subst > $o,X27 : term] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id)) | ~! [X13 : term,X26 : subst,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | (X10 @ id @ (lam @ X27) @ id) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)))) & (hoasinduction_no_psi_cond_lthm <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X10 : term > $o,X22 : term] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))) | (X10 @ X22) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15)))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X11 : term > $o,X29 : term] : ((X11 @ (lam @ X29)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) => ! [X30 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X15 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X10 @ id @ X30 @ id))))))) & apnotvar & (termmset <=> ! [X13 : term] : ((sub @ X13 @ id) = X13)) & pushprop_lthm_orig & hoasinduction_lem1_gthm & (hoasinduction_lem3v2 <=> ! [X48 : term,X11 : term > $o,X10 : subst > term > subst > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X11 @ (lam @ X48)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | ~! [X26 : subst,X25 : subst,X14 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)))) & (! [X14 : subst] : ((comp @ X14 @ id) = X14) <=> axidr) & (hoasinduction_lem3aa <=> ! [X10 : subst > term > subst > $o,X42 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)))) & axclos & pushprop_lem1_gthm & pushprop_gthm & ! [X4 : subst] : ? [X5 : d_subst] : ((d2subst @ X5) = X4) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & hoasinduction_lem3_gthm & (hoasinduction_lem3v2_f <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13))) & ((d2subst @ d_id) = sh) & pushprop_lem2v2_gthm & ((! [X22 : term,X10 : term > $o] : ((X10 @ X22) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13))) => (! [X23 : term,X24 : term,X10 : subst > term > subst > $o] : (~(X10 @ id @ X24 @ id) | ~! [X25 : subst,X26 : subst,X14 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~(X10 @ id @ X23 @ id) | ~! [X13 : term,X25 : subst,X14 : subst,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) => (! [X27 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X14 : subst,X26 : subst,X25 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ (lam @ X27) @ id) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) => ! [X10 : subst > term > subst > $o,X28 : term] : ((X10 @ id @ X28 @ id) | ~! [X25 : subst,X26 : subst,X14 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X25 : subst,X13 : term,X14 : subst,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))))))) <=> hoasinduction_lthm) & (hoasinduction_p_and_p_prime = (^[X10 : subst > term > subst > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))))) & (! [X14 : subst,X10 : term > $o,X13 : term] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0) & (! [X15 : term,X13 : term] : (((sub @ X13 @ sh) != (sub @ X15 @ sh)) | (X13 = X15)) <=> shinj) & ((^[X13 : term, X14 : subst, X10 : term > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))))) = pushprop_p_and_p_prime) & substmonoid_gthm & (hoasinduction_lem3a <=> ! [X43 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ X43) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))))) & (! [X22 : term,X10 : term > $o] : ((X10 @ X22) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13))) <=> induction2) & (hoasinduction_lthm_3 <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X10 : term > $o,X22 : term] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | ~! [X13 : term,X15 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | (X10 @ X22) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X29 : term,X11 : term > $o,X10 : subst > term > subst > $o] : ((X11 @ (lam @ X29)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) => ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X25 : subst,X13 : term,X14 : subst,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X18 : subst > term > term] : (~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X13 : term] : (~(var @ (sub @ X13 @ id)) | (X10 @ id @ X13 @ id)) | (X10 @ id @ X28 @ id))))))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasapinj1_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X13 : term,X15 : term,X19 : term,X20 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X20 : term,X15 : term,X19 : term,X13 : term] : ((X13 = X15) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)))))) & ! [X1 : d_term] : (d_one = X1) & pushprop_lem2v2 & axmap & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id))) => ! [X27 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ (lam @ X27) @ id) | ~! [X13 : term,X26 : subst,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id))))) <=> hoasinduction_lem3_lthm) & hoasapnotvar_gthm & (axidl <=> ! [X14 : subst] : ((comp @ id @ X14) = X14))),
% 6.47/2.17    file('/export/starexec/sandbox/tmp/tmp.gm43Nmhqtq/DTF2THF_31880.p',alg444_1)).
% 6.47/2.17  thf(f1036,plain,(
% 6.47/2.17    ( ! [X272 : term] : (((d2term @ (sK590 @ X272)) = X272)) )),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f4864,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true)) ) | ~spl591_462),
% 6.47/2.17    inference(subsumption_resolution,[status(thm)],[f4863,f4733])).
% 6.47/2.17  thf(f4863,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((d2term @ d_one) != (X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ (sK596 @ X1) @ (sK593 @ X1)))) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true)) ) | ~spl591_462),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f3883,f4733])).
% 6.47/2.17  thf(f3883,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ (sK596 @ X1) @ (sK593 @ X1))) != (sub @ (X1 @ (sK595 @ X1) @ (sK596 @ X1)) @ (sK593 @ X1))) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true)) ) | ~spl591_462),
% 6.47/2.17    inference(avatar_component_clause,[status(thm)],[f3882])).
% 6.47/2.17  thf(f4856,plain,(
% 6.47/2.17    spl591_655 | ~spl591_458),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f4855,f3865,f4791])).
% 6.47/2.17  thf(f4791,definition,(
% 6.47/2.17    spl591_655 <=> ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $false)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_655])],[avatar_definition])).
% 6.47/2.17  thf(f3865,definition,(
% 6.47/2.17    spl591_458 <=> ($false = (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ sK599 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_458])],[avatar_definition])).
% 6.47/2.17  thf(f4855,plain,(
% 6.47/2.17    ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $false) | ~spl591_458),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f3867,f4733])).
% 6.47/2.17  thf(f3867,plain,(
% 6.47/2.17    ($false = (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ sK599 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))) | ~spl591_458),
% 6.47/2.17    inference(avatar_component_clause,[status(thm)],[f3865])).
% 6.47/2.17  thf(f4853,plain,(
% 6.47/2.17    ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $false) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) | ($true = $false)),
% 6.47/2.17    introduced(definition,[],[theory_tautology_sat_conflict])).
% 6.47/2.17  thf(f4843,plain,(
% 6.47/2.17    ~spl591_658 | spl591_627),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f4842,f4606,f4811])).
% 6.47/2.17  thf(f4811,definition,(
% 6.47/2.17    spl591_658 <=> ($true = (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_658])],[avatar_definition])).
% 6.47/2.17  thf(f4606,definition,(
% 6.47/2.17    spl591_627 <=> ($true = (sK302 @ (d2subst @ d_id) @ (lam @ (sub @ sK303 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_627])],[avatar_definition])).
% 6.47/2.17  thf(f4842,plain,(
% 6.47/2.17    ($true != (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) | spl591_627),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f4608,f4733])).
% 6.47/2.17  thf(f4608,plain,(
% 6.47/2.17    ($true != (sK302 @ (d2subst @ d_id) @ (lam @ (sub @ sK303 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))) | spl591_627),
% 6.47/2.17    inference(avatar_component_clause,[status(thm)],[f4606])).
% 6.47/2.17  thf(f4814,plain,(
% 6.47/2.17    spl591_658 | ~spl591_572),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f4809,f4365,f4811])).
% 6.47/2.17  thf(f4365,definition,(
% 6.47/2.17    spl591_572 <=> ! [X3 : subst > term > term] : (($true = (sK302 @ (d2subst @ d_id) @ (lam @ (X3 @ (d2subst @ d_id) @ (d2term @ d_one))) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id))) | ((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))))),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_572])],[avatar_definition])).
% 6.47/2.17  thf(f4809,plain,(
% 6.47/2.17    ($true = (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) | ~spl591_572),
% 6.47/2.17    inference(duplicate_literal_removal,[status(thm)],[f4808])).
% 6.47/2.17  thf(f4808,plain,(
% 6.47/2.17    ($true = (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) | ~spl591_572),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f4807,f4733])).
% 6.47/2.17  thf(f4807,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))) ) | ~spl591_572),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f4806,f4733])).
% 6.47/2.17  thf(f4806,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (($true = (sK302 @ (d2subst @ d_id) @ (lam @ (X3 @ (d2subst @ d_id) @ (d2term @ d_one))) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id)))) ) | ~spl591_572),
% 6.47/2.17    inference(subsumption_resolution,[status(thm)],[f4805,f4733])).
% 6.47/2.17  thf(f4805,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (((d2term @ d_one) != (sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3))) | ($true = (sK302 @ (d2subst @ d_id) @ (lam @ (X3 @ (d2subst @ d_id) @ (d2term @ d_one))) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id)))) ) | ~spl591_572),
% 6.47/2.17    inference(forward_demodulation,[status(thm)],[f4366,f4733])).
% 6.47/2.17  thf(f4366,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))) | ($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id))) | ($true = (sK302 @ (d2subst @ d_id) @ (lam @ (X3 @ (d2subst @ d_id) @ (d2term @ d_one))) @ (d2subst @ d_id)))) ) | ~spl591_572),
% 6.47/2.17    inference(avatar_component_clause,[status(thm)],[f4365])).
% 6.47/2.17  thf(f4708,plain,(
% 6.47/2.17    (hoasinduction_lem3aa != $false) | (hoasinduction_lem3aa != $true) | ($true = $false)),
% 6.47/2.17    introduced(definition,[],[theory_tautology_sat_conflict])).
% 6.47/2.17  thf(f4609,plain,(
% 6.47/2.17    ~spl591_627 | spl591_32),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f1462,f2027,f4606])).
% 6.47/2.17  thf(f2027,definition,(
% 6.47/2.17    spl591_32 <=> ($true = sP21)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_32])],[avatar_definition])).
% 6.47/2.17  thf(f1462,plain,(
% 6.47/2.17    ($true = sP21) | ($true != (sK302 @ (d2subst @ d_id) @ (lam @ (sub @ sK303 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))),
% 6.47/2.17    inference(definition_unfolding,[status(thm)],[f855,f1223,f1250,f1175,f1223])).
% 6.47/2.17  thf(f1175,plain,(
% 6.47/2.17    ((d2subst @ d_id) = sh)),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f1250,plain,(
% 6.47/2.17    (one = (d2term @ d_one))),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f1223,plain,(
% 6.47/2.17    ((d2subst @ d_id) = id)),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f855,plain,(
% 6.47/2.17    ($true = sP21) | ((sK302 @ id @ (lam @ (sub @ sK303 @ (push @ one @ sh))) @ id) != $true)),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f326])).
% 6.47/2.17  thf(f326,plain,(
% 6.47/2.17    (($true = sP21) | (((sK302 @ id @ (lam @ (sub @ sK303 @ (push @ one @ sh))) @ id) != $true) & ! [X2 : term] : (($true != (sK302 @ id @ X2 @ id)) | ($true = (sK302 @ id @ (sub @ sK303 @ (push @ X2 @ id)) @ id))) & ! [X3 : subst > term > term] : ((($true = (sK302 @ id @ (sK304 @ X3) @ id)) & ($true != (sK302 @ id @ (X3 @ id @ (sK304 @ X3)) @ id))) | ((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))) | ($true = (sK302 @ id @ (lam @ (X3 @ sh @ one)) @ id))))) & (! [X8 : subst > term > subst > $o,X9 : term] : (($true = (X8 @ id @ (lam @ (sub @ X9 @ (push @ one @ sh))) @ id)) | (($true = (X8 @ id @ (sK308 @ X9 @ X8) @ id)) & ($true != (X8 @ id @ (sub @ X9 @ (push @ (sK308 @ X9 @ X8) @ id)) @ id))) | (! [X12 : term] : (((X8 @ id @ X12 @ id) != $true) | ($true = (X8 @ id @ (sK309 @ X8 @ id @ X12) @ id))) & ! [X13 : term,X14 : subst,X15 : subst] : ((sK309 @ X8 @ (comp @ X14 @ X15) @ (sub @ X13 @ X15)) = (sub @ (sK309 @ X8 @ X14 @ X13) @ X15)) & ((X8 @ id @ (lam @ (sK309 @ X8 @ sh @ one)) @ id) != $true))) | ($true != sP21))),
% 6.47/2.17    inference(skolemisation,[status(esa),new_symbols(skolem,[sK302,sK303,sK304,sK305,sK306,sK307,sK308,sK309])],[f320,f325,f324,f323,f322,f321])).
% 6.47/2.17  thf(f321,plain,(
% 6.47/2.17    ? [X0 : subst > term > subst > $o,X1 : term] : (((X0 @ id @ (lam @ (sub @ X1 @ (push @ one @ sh))) @ id) != $true) & ! [X2 : term] : (($true != (X0 @ id @ X2 @ id)) | ($true = (X0 @ id @ (sub @ X1 @ (push @ X2 @ id)) @ id))) & ! [X3 : subst > term > term] : (? [X4 : term] : (($true = (X0 @ id @ X4 @ id)) & ($true != (X0 @ id @ (X3 @ id @ X4) @ id))) | ? [X5 : term,X6 : subst,X7 : subst] : ((X3 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7)) != (sub @ (X3 @ X6 @ X5) @ X7)) | ($true = (X0 @ id @ (lam @ (X3 @ sh @ one)) @ id)))) => (((sK302 @ id @ (lam @ (sub @ sK303 @ (push @ one @ sh))) @ id) != $true) & ! [X2 : term] : (($true != (sK302 @ id @ X2 @ id)) | ($true = (sK302 @ id @ (sub @ sK303 @ (push @ X2 @ id)) @ id))) & ! [X3 : subst > term > term] : (? [X4 : term] : (((sK302 @ id @ X4 @ id) = $true) & ($true != (sK302 @ id @ (X3 @ id @ X4) @ id))) | ? [X5 : term,X6 : subst,X7 : subst] : ((X3 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7)) != (sub @ (X3 @ X6 @ X5) @ X7)) | ($true = (sK302 @ id @ (lam @ (X3 @ sh @ one)) @ id))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f322,plain,(
% 6.47/2.17    ! [X3 : subst > term > term] : (? [X4 : term] : (((sK302 @ id @ X4 @ id) = $true) & ($true != (sK302 @ id @ (X3 @ id @ X4) @ id))) => (($true = (sK302 @ id @ (sK304 @ X3) @ id)) & ($true != (sK302 @ id @ (X3 @ id @ (sK304 @ X3)) @ id))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f323,plain,(
% 6.47/2.17    ! [X3 : subst > term > term] : (? [X5 : term,X6 : subst,X7 : subst] : ((X3 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7)) != (sub @ (X3 @ X6 @ X5) @ X7)) => ((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f324,plain,(
% 6.47/2.17    ! [X8 : subst > term > subst > $o,X9 : term] : (? [X10 : term] : (($true = (X8 @ id @ X10 @ id)) & ($true != (X8 @ id @ (sub @ X9 @ (push @ X10 @ id)) @ id))) => (($true = (X8 @ id @ (sK308 @ X9 @ X8) @ id)) & ($true != (X8 @ id @ (sub @ X9 @ (push @ (sK308 @ X9 @ X8) @ id)) @ id))))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f325,plain,(
% 6.47/2.17    ! [X8 : subst > term > subst > $o] : (? [X11 : subst > term > term] : (! [X12 : term] : (((X8 @ id @ X12 @ id) != $true) | ($true = (X8 @ id @ (X11 @ id @ X12) @ id))) & ! [X13 : term,X14 : subst,X15 : subst] : ((sub @ (X11 @ X14 @ X13) @ X15) = (X11 @ (comp @ X14 @ X15) @ (sub @ X13 @ X15))) & ((X8 @ id @ (lam @ (X11 @ sh @ one)) @ id) != $true)) => (! [X12 : term] : (((X8 @ id @ X12 @ id) != $true) | ($true = (X8 @ id @ (sK309 @ X8 @ id @ X12) @ id))) & ! [X15 : subst,X14 : subst,X13 : term] : ((sK309 @ X8 @ (comp @ X14 @ X15) @ (sub @ X13 @ X15)) = (sub @ (sK309 @ X8 @ X14 @ X13) @ X15)) & ((X8 @ id @ (lam @ (sK309 @ X8 @ sh @ one)) @ id) != $true)))),
% 6.47/2.17    introduced(definition,[],[choice_axiom])).
% 6.47/2.17  thf(f320,plain,(
% 6.47/2.17    (($true = sP21) | ? [X0 : subst > term > subst > $o,X1 : term] : (((X0 @ id @ (lam @ (sub @ X1 @ (push @ one @ sh))) @ id) != $true) & ! [X2 : term] : (($true != (X0 @ id @ X2 @ id)) | ($true = (X0 @ id @ (sub @ X1 @ (push @ X2 @ id)) @ id))) & ! [X3 : subst > term > term] : (? [X4 : term] : (($true = (X0 @ id @ X4 @ id)) & ($true != (X0 @ id @ (X3 @ id @ X4) @ id))) | ? [X5 : term,X6 : subst,X7 : subst] : ((X3 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7)) != (sub @ (X3 @ X6 @ X5) @ X7)) | ($true = (X0 @ id @ (lam @ (X3 @ sh @ one)) @ id))))) & (! [X8 : subst > term > subst > $o,X9 : term] : (($true = (X8 @ id @ (lam @ (sub @ X9 @ (push @ one @ sh))) @ id)) | ? [X10 : term] : (($true = (X8 @ id @ X10 @ id)) & ($true != (X8 @ id @ (sub @ X9 @ (push @ X10 @ id)) @ id))) | ? [X11 : subst > term > term] : (! [X12 : term] : (((X8 @ id @ X12 @ id) != $true) | ($true = (X8 @ id @ (X11 @ id @ X12) @ id))) & ! [X13 : term,X14 : subst,X15 : subst] : ((sub @ (X11 @ X14 @ X13) @ X15) = (X11 @ (comp @ X14 @ X15) @ (sub @ X13 @ X15))) & ((X8 @ id @ (lam @ (X11 @ sh @ one)) @ id) != $true))) | ($true != sP21))),
% 6.47/2.17    inference(rectify,[status(thm)],[f319])).
% 6.47/2.17  thf(f319,plain,(
% 6.47/2.17    (($true = sP21) | ? [X375 : subst > term > subst > $o,X376 : term] : (($true != (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) & ! [X382 : term] : (($true != (X375 @ id @ X382 @ id)) | ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) = $true)) & ! [X377 : subst > term > term] : (? [X378 : term] : (($true = (X375 @ id @ X378 @ id)) & ((X375 @ id @ (X377 @ id @ X378) @ id) != $true)) | ? [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) != (sub @ (X377 @ X380 @ X379) @ X381)) | ($true = (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id))))) & (! [X375 : subst > term > subst > $o,X376 : term] : (($true = (X375 @ id @ (lam @ (sub @ X376 @ (push @ one @ sh))) @ id)) | ? [X382 : term] : (($true = (X375 @ id @ X382 @ id)) & ((X375 @ id @ (sub @ X376 @ (push @ X382 @ id)) @ id) != $true)) | ? [X377 : subst > term > term] : (! [X378 : term] : (($true != (X375 @ id @ X378 @ id)) | ((X375 @ id @ (X377 @ id @ X378) @ id) = $true)) & ! [X379 : term,X380 : subst,X381 : subst] : ((X377 @ (comp @ X380 @ X381) @ (sub @ X379 @ X381)) = (sub @ (X377 @ X380 @ X379) @ X381)) & ($true != (X375 @ id @ (lam @ (X377 @ sh @ one)) @ id)))) | ($true != sP21))),
% 6.47/2.17    inference(nnf_transformation,[status(thm)],[f35])).
% 6.47/2.17  thf(f4367,plain,(
% 6.47/2.17    spl591_572 | spl591_32),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f1464,f2027,f4365])).
% 6.47/2.17  thf(f1464,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (($true = (sK302 @ (d2subst @ d_id) @ (lam @ (X3 @ (d2subst @ d_id) @ (d2term @ d_one))) @ (d2subst @ d_id))) | ((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))) | ($true = sP21) | ($true = (sK302 @ (d2subst @ d_id) @ (sK304 @ X3) @ (d2subst @ d_id)))) )),
% 6.47/2.17    inference(definition_unfolding,[status(thm)],[f853,f1223,f1223,f1223,f1175,f1250,f1223])).
% 6.47/2.17  thf(f853,plain,(
% 6.47/2.17    ( ! [X3 : subst > term > term] : (($true = sP21) | ($true = (sK302 @ id @ (sK304 @ X3) @ id)) | ((sub @ (X3 @ (sK306 @ X3) @ (sK305 @ X3)) @ (sK307 @ X3)) != (X3 @ (comp @ (sK306 @ X3) @ (sK307 @ X3)) @ (sub @ (sK305 @ X3) @ (sK307 @ X3)))) | ($true = (sK302 @ id @ (lam @ (X3 @ sh @ one)) @ id))) )),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f326])).
% 6.47/2.17  thf(f3952,plain,(
% 6.47/2.17    ~spl591_478),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f4,f3949])).
% 6.47/2.17  thf(f3949,definition,(
% 6.47/2.17    spl591_478 <=> ($true = $false)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_478])],[avatar_definition])).
% 6.47/2.17  thf(f4,plain,(
% 6.47/2.17    ($true != $false)),
% 6.47/2.17    introduced(definition,[],[fool_axiom])).
% 6.47/2.17  thf(f3884,plain,(
% 6.47/2.17    spl591_460 | spl591_457 | spl591_462),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f1743,f3882,f3861,f3874])).
% 6.47/2.17  thf(f3861,definition,(
% 6.47/2.17    spl591_457 <=> (hoasinduction_lem3aa = $false)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_457])],[avatar_definition])).
% 6.47/2.17  thf(f1743,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ (sK596 @ X1) @ (sK593 @ X1))) != (sub @ (X1 @ (sK595 @ X1) @ (sK596 @ X1)) @ (sK593 @ X1))) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | (hoasinduction_lem3aa = $false) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true)) )),
% 6.47/2.17    inference(equality_proxy_clausification,[status(thm)],[f1742])).
% 6.47/2.17  thf(f1742,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((hoasinduction_lem3aa = $false) | (((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ (sK596 @ X1) @ (sK593 @ X1))) = (sub @ (X1 @ (sK595 @ X1) @ (sK596 @ X1)) @ (sK593 @ X1))) = $false) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true)) )),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1741])).
% 6.47/2.17  thf(f1741,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | (hoasinduction_lem3aa = $false) | ($false = ((^[Y0 : term]: ((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ Y0 @ (sK593 @ X1))) = (sub @ (X1 @ (sK595 @ X1) @ Y0) @ (sK593 @ X1)))) @ (sK596 @ X1))) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true)) )),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1740])).
% 6.47/2.17  thf(f1740,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((hoasinduction_lem3aa = $false) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | ($false = (!! @ term @ (^[Y0 : term]: ((X1 @ (comp @ (sK595 @ X1) @ (sK593 @ X1)) @ (sub @ Y0 @ (sK593 @ X1))) = (sub @ (X1 @ (sK595 @ X1) @ Y0) @ (sK593 @ X1))))))) )),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1739])).
% 6.47/2.17  thf(f1739,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((hoasinduction_lem3aa = $false) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | ((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | ($false = ((^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1)))))) @ (sK595 @ X1)))) )),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1738])).
% 6.47/2.17  thf(f1738,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) = $true) | ($false = (!! @ subst @ (^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1)))))))) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | (hoasinduction_lem3aa = $false)) )),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1736])).
% 6.47/2.17  thf(f1736,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((((sK592 @ (d2subst @ d_id) @ (sK594 @ X1) @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ (sK594 @ X1)) @ (d2subst @ d_id))) = $false) | ($false = (!! @ subst @ (^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1)))))))) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | (hoasinduction_lem3aa = $false)) )),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1735])).
% 6.47/2.17  thf(f1735,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (($false = (!! @ subst @ (^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1)))))))) | ($false = ((^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id)))) @ (sK594 @ X1))) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | (hoasinduction_lem3aa = $false)) )),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1734])).
% 6.47/2.17  thf(f1734,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (($false = (!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id)))))) | (hoasinduction_lem3aa = $false) | ((sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | ($false = (!! @ subst @ (^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1))))))))) )),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1733])).
% 6.47/2.17  thf(f1733,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (($true = ((!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))) | ($false = (!! @ subst @ (^[Y0 : subst]: (!! @ term @ (^[Y1 : term]: ((X1 @ (comp @ Y0 @ (sK593 @ X1)) @ (sub @ Y1 @ (sK593 @ X1))) = (sub @ (X1 @ Y0 @ Y1) @ (sK593 @ X1)))))))) | (hoasinduction_lem3aa = $false)) )),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1732])).
% 6.47/2.17  thf(f1732,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (($false = ((^[Y0 : subst]: (!! @ subst @ (^[Y1 : subst]: (!! @ term @ (^[Y2 : term]: ((X1 @ (comp @ Y1 @ Y0) @ (sub @ Y2 @ Y0)) = (sub @ (X1 @ Y1 @ Y2) @ Y0))))))) @ (sK593 @ X1))) | (hoasinduction_lem3aa = $false) | ($true = ((!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))))) )),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1731])).
% 6.47/2.17  thf(f1731,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((hoasinduction_lem3aa = $false) | ((!! @ subst @ (^[Y0 : subst]: (!! @ subst @ (^[Y1 : subst]: (!! @ term @ (^[Y2 : term]: ((X1 @ (comp @ Y1 @ Y0) @ (sub @ Y2 @ Y0)) = (sub @ (X1 @ Y1 @ Y2) @ Y0)))))))) = $false) | ($true = ((!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))))) )),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1730])).
% 6.47/2.17  thf(f1730,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : ((hoasinduction_lem3aa = $false) | (((!! @ subst @ (^[Y0 : subst]: (!! @ subst @ (^[Y1 : subst]: (!! @ term @ (^[Y2 : term]: ((X1 @ (comp @ Y1 @ Y0) @ (sub @ Y2 @ Y0)) = (sub @ (X1 @ Y1 @ Y2) @ Y0)))))))) => ((!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (X1 @ (d2subst @ d_id) @ Y0) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))) = $true)) )),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1729])).
% 6.47/2.17  thf(f1729,plain,(
% 6.47/2.17    ( ! [X1 : subst > term > term] : (($true = ((^[Y0 : subst > term > term]: ((!! @ subst @ (^[Y1 : subst]: (!! @ subst @ (^[Y2 : subst]: (!! @ term @ (^[Y3 : term]: ((Y0 @ (comp @ Y2 @ Y1) @ (sub @ Y3 @ Y1)) = (sub @ (Y0 @ Y2 @ Y3) @ Y1)))))))) => ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (Y0 @ (d2subst @ d_id) @ Y1) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))))) @ X1)) | (hoasinduction_lem3aa = $false)) )),
% 6.47/2.17    inference(pi_clausification,[status(thm)],[f1728])).
% 6.47/2.17  thf(f1728,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | ($true = (!! @ (subst > term > term) @ (^[Y0 : subst > term > term]: ((!! @ subst @ (^[Y1 : subst]: (!! @ subst @ (^[Y2 : subst]: (!! @ term @ (^[Y3 : term]: ((Y0 @ (comp @ Y2 @ Y1) @ (sub @ Y3 @ Y1)) = (sub @ (Y0 @ Y2 @ Y3) @ Y1)))))))) => ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (Y0 @ (d2subst @ d_id) @ Y1) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))))))),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1726])).
% 6.47/2.17  thf(f1726,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | ($false = ((!! @ (subst > term > term) @ (^[Y0 : subst > term > term]: ((!! @ subst @ (^[Y1 : subst]: (!! @ subst @ (^[Y2 : subst]: (!! @ term @ (^[Y3 : term]: ((Y0 @ (comp @ Y2 @ Y1) @ (sub @ Y3 @ Y1)) = (sub @ (Y0 @ Y2 @ Y3) @ Y1)))))))) => ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (Y0 @ (d2subst @ d_id) @ Y1) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))))) => (!! @ term @ (^[Y0 : term]: ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (sub @ Y0 @ (push @ Y1 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ Y0 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))))))),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1725])).
% 6.47/2.17  thf(f1725,plain,(
% 6.47/2.17    ($false = ((^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (Y1 @ (d2subst @ d_id) @ Y2) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (sub @ Y1 @ (push @ Y2 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (lam @ (sub @ Y1 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))))))) @ sK592)) | (hoasinduction_lem3aa = $false)),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1724])).
% 6.47/2.17  thf(f1724,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | ($false = (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (Y1 @ (d2subst @ d_id) @ Y2) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (sub @ Y1 @ (push @ Y2 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (lam @ (sub @ Y1 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))))))))),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1722])).
% 6.47/2.17  thf(f1722,plain,(
% 6.47/2.17    (hoasinduction_lem3aa != (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (Y1 @ (d2subst @ d_id) @ Y2) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (sub @ Y1 @ (push @ Y2 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (lam @ (sub @ Y1 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))))))))),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1262])).
% 6.47/2.17  thf(f1262,plain,(
% 6.47/2.17    (hoasinduction_lem3aa != (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (Y1 @ (d2subst @ d_id) @ Y2) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ ((^[Y2 : subst]: ((^[Y3 : subst > term > term]: (d2term @ d_one)))) @ (d2subst @ d_id) @ (^[Y2 : subst]: ((^[Y3 : term]: (Y1 @ Y2 @ Y3))))) @ (d2subst @ d_id)))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ (d2subst @ d_id) @ Y2 @ (d2subst @ d_id)) => (Y0 @ (d2subst @ d_id) @ (sub @ Y1 @ (push @ Y2 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (Y0 @ (d2subst @ d_id) @ (lam @ (sub @ Y1 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))))))))),
% 6.47/2.17    inference(definition_unfolding,[status(thm)],[f546,f1223,f1223,f1223,f1223,f1223,f1223,f1149,f1223,f1223,f1223,f1223,f1223,f1223,f1223,f1223,f1250,f1175,f1223])).
% 6.47/2.17  thf(f1149,plain,(
% 6.47/2.17    (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one)))))),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  thf(f546,plain,(
% 6.47/2.17    (hoasinduction_lem3aa != (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (Y1 @ id @ Y2) @ id)))) => (Y0 @ id @ (hoaslam @ id @ (^[Y2 : subst]: ((^[Y3 : term]: (Y1 @ Y2 @ Y3))))) @ id))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (sub @ Y1 @ (push @ Y2 @ id)) @ id)))) => (Y0 @ id @ (lam @ (sub @ Y1 @ (push @ one @ sh))) @ id))))))))),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f9])).
% 6.47/2.17  thf(f9,plain,(
% 6.47/2.17    (hoasinduction_lem3aa != (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (Y1 @ id @ Y2) @ id)))) => (Y0 @ id @ (hoaslam @ id @ (^[Y2 : subst]: ((^[Y3 : term]: (Y1 @ Y2 @ Y3))))) @ id))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (sub @ Y1 @ (push @ Y2 @ id)) @ id)))) => (Y0 @ id @ (lam @ (sub @ Y1 @ (push @ one @ sh))) @ id))))))))),
% 6.47/2.17    inference(flattening,[status(thm)],[f6])).
% 6.47/2.17  thf(f6,plain,(
% 6.47/2.17    ~(hoasinduction_lem3aa = (!! @ (subst > term > subst > $o) @ (^[Y0 : subst > term > subst > $o]: ((!! @ (subst > term > term) @ (^[Y1 : subst > term > term]: ((!! @ subst @ (^[Y2 : subst]: (!! @ subst @ (^[Y3 : subst]: (!! @ term @ (^[Y4 : term]: ((Y1 @ (comp @ Y3 @ Y2) @ (sub @ Y4 @ Y2)) = (sub @ (Y1 @ Y3 @ Y4) @ Y2)))))))) => ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (Y1 @ id @ Y2) @ id)))) => (Y0 @ id @ (hoaslam @ id @ (^[Y2 : subst]: ((^[Y3 : term]: (Y1 @ Y2 @ Y3))))) @ id))))) => (!! @ term @ (^[Y1 : term]: ((!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) => (Y0 @ id @ (sub @ Y1 @ (push @ Y2 @ id)) @ id)))) => (Y0 @ id @ (lam @ (sub @ Y1 @ (push @ one @ sh))) @ id))))))))),
% 6.47/2.17    inference(fool_elimination,[status(thm)],[f5])).
% 6.47/2.17  thf(f5,plain,(
% 6.47/2.17    ~(hoasinduction_lem3aa = ! [X0 : subst > term > subst > $o] : (! [X1 : subst > term > term] : (! [X2 : term,X3 : subst,X4 : subst] : ((X1 @ (comp @ X3 @ X4) @ (sub @ X2 @ X4)) = (sub @ (X1 @ X3 @ X2) @ X4)) => (! [X5 : term] : ((X0 @ id @ X5 @ id) => (X0 @ id @ (X1 @ id @ X5) @ id)) => (X0 @ id @ (hoaslam @ id @ (^[X6 : subst, X7 : term] : (X1 @ X6 @ X7))) @ id))) => ! [X8 : term] : (! [X9 : term] : ((X0 @ id @ X9 @ id) => (X0 @ id @ (sub @ X8 @ (push @ X9 @ id)) @ id)) => (X0 @ id @ (lam @ (sub @ X8 @ (push @ one @ sh))) @ id))))),
% 6.47/2.17    inference(rectify,[status(thm)],[f3])).
% 6.47/2.17  thf(f3,negated_conjecture,(
% 6.47/2.17    ~(hoasinduction_lem3aa = ! [X10 : subst > term > subst > $o] : (! [X18 : subst > term > term] : (! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) => (! [X13 : term] : ((X10 @ id @ X13 @ id) => (X10 @ id @ (X18 @ id @ X13) @ id)) => (X10 @ id @ (hoaslam @ id @ (^[X14 : subst, X13 : term] : (X18 @ X14 @ X13))) @ id))) => ! [X13 : term] : (! [X15 : term] : ((X10 @ id @ X15 @ id) => (X10 @ id @ (sub @ X13 @ (push @ X15 @ id)) @ id)) => (X10 @ id @ (lam @ (sub @ X13 @ (push @ one @ sh))) @ id))))),
% 6.47/2.17    inference(negated_conjecture,[status(cth)],[f2])).
% 6.47/2.17  thf(f2,conjecture,(
% 6.47/2.17    (hoasinduction_lem3aa = ! [X10 : subst > term > subst > $o] : (! [X18 : subst > term > term] : (! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) => (! [X13 : term] : ((X10 @ id @ X13 @ id) => (X10 @ id @ (X18 @ id @ X13) @ id)) => (X10 @ id @ (hoaslam @ id @ (^[X14 : subst, X13 : term] : (X18 @ X14 @ X13))) @ id))) => ! [X13 : term] : (! [X15 : term] : ((X10 @ id @ X15 @ id) => (X10 @ id @ (sub @ X13 @ (push @ X15 @ id)) @ id)) => (X10 @ id @ (lam @ (sub @ X13 @ (push @ one @ sh))) @ id))))),
% 6.47/2.17    file('/export/starexec/sandbox/tmp/tmp.gm43Nmhqtq/DTF2THF_31880.p',hoasinduction_lem3aa)).
% 6.47/2.17  thf(f3868,plain,(
% 6.47/2.17    spl591_457 | spl591_458),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f1751,f3865,f3861])).
% 6.47/2.17  thf(f1751,plain,(
% 6.47/2.17    ($false = (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ sK599 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))) | (hoasinduction_lem3aa = $false)),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1750])).
% 6.47/2.17  thf(f1750,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | ($false = ((!! @ term @ (^[Y0 : term]: ((sK592 @ (d2subst @ d_id) @ Y0 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (sub @ sK599 @ (push @ Y0 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ sK599 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))))),
% 6.47/2.17    inference(beta_eta_normalization,[status(thm)],[f1749])).
% 6.47/2.17  thf(f1749,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | (((^[Y0 : term]: ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (sub @ Y0 @ (push @ Y1 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ Y0 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id)))) @ sK599) = $false)),
% 6.47/2.17    inference(sigma_clausification,[status(thm)],[f1727])).
% 6.47/2.17  thf(f1727,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $false) | ($false = (!! @ term @ (^[Y0 : term]: ((!! @ term @ (^[Y1 : term]: ((sK592 @ (d2subst @ d_id) @ Y1 @ (d2subst @ d_id)) => (sK592 @ (d2subst @ d_id) @ (sub @ Y0 @ (push @ Y1 @ (d2subst @ d_id))) @ (d2subst @ d_id))))) => (sK592 @ (d2subst @ d_id) @ (lam @ (sub @ Y0 @ (push @ (d2term @ d_one) @ (d2subst @ d_id)))) @ (d2subst @ d_id))))))),
% 6.47/2.17    inference(binary_proxy_clausification,[status(thm)],[f1726])).
% 6.47/2.17  thf(f2034,plain,(
% 6.47/2.17    ~spl591_32 | spl591_33),
% 6.47/2.17    inference(avatar_split_clause,[status(thm)],[f1101,f2031,f2027])).
% 6.47/2.17  thf(f2031,definition,(
% 6.47/2.17    spl591_33 <=> (hoasinduction_lem3aa = $true)),
% 6.47/2.17    introduced(definition,[new_symbols(naming,[spl591_33])],[avatar_definition])).
% 6.47/2.17  thf(f1101,plain,(
% 6.47/2.17    (hoasinduction_lem3aa = $true) | ($true != sP21)),
% 6.47/2.17    inference(cnf_transformation,[status(thm)],[f545])).
% 6.47/2.17  % SZS output end Proof for DTF2THF_31880
% 6.47/2.17  % (32274)------------------------------
% 6.47/2.17  % (32274)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.47/2.17  % (32274)Termination reason: Refutation
% 6.47/2.17  
% 6.47/2.17  % (32274)Memory used [KB]: 13048
% 6.47/2.17  % (32274)Time elapsed: 0.180 s
% 6.47/2.17  % (32274)Instructions burned: 377 (million)
% 6.47/2.17  % (32274)------------------------------
% 6.47/2.17  % (32274)------------------------------
% 6.47/2.17  % (32208)Success in time 0.674 s
%------------------------------------------------------------------------------