↑ 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 : n009.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Tue May  5 06:58:45 PM UTC 2026

% Result   : Theorem 2.63s 1.98s
% Output   : Refutation 2.63s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   19
%            Number of leaves      :  194
% Syntax   : Number of formulae    :  237 (  14 unt;   0 typ;   2 def)
%            Number of atoms       : 11819 (5559 equ;   0 cnn)
%            Maximal formula atoms :  530 (  49 avg)
%            Number of connectives : 26405 (3127   ~;2822   |;2458   &;17124   @)
%                                         ( 563 <=>; 288  =>;   0  <=;   3 <~>)
%            Maximal formula depth :  186 (  15 avg)
%            Number of types       :    5 (   4 usr)
%            Number of type conns  : 2168 (2168   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  785 ( 781 usr; 304 con; 0-4 aty)
%                                         (  20  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 5793 ( 116   ^;4320   !;1357   ?;5793   :)

% 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_141,type,
    sP0: ( term > $o ) > $o ).

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

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

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

thf(func_def_146,type,
    sP5: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_174,type,
    sP33: ( subst > term > subst > $o ) > $o ).

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

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

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

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

thf(func_def_184,type,
    sP43: ( subst > term > subst > $o ) > $o ).

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

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

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

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

thf(func_def_192,type,
    sP51: ( term > $o ) > $o ).

thf(func_def_193,type,
    sP52: ( term > $o ) > $o ).

thf(func_def_194,type,
    sP53: ( term > $o ) > $o ).

thf(func_def_195,type,
    sP54: ( term > $o ) > $o ).

thf(func_def_200,type,
    sP59: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_213,type,
    sP72: ( subst > term > subst > $o ) > $o ).

thf(func_def_214,type,
    sP73: term > ( subst > term > subst > $o ) > $o ).

thf(func_def_219,type,
    sP78: ( subst > term > subst > $o ) > $o ).

thf(func_def_220,type,
    sP79: ( term > $o ) > term > $o ).

thf(func_def_221,type,
    sP80: ( subst > term > subst > $o ) > $o ).

thf(func_def_223,type,
    sP82: ( subst > term > subst > $o ) > $o ).

thf(func_def_224,type,
    sP83: ( subst > term > subst > $o ) > $o ).

thf(func_def_227,type,
    sP86: ( subst > term > subst > $o ) > $o ).

thf(func_def_229,type,
    sP88: ( subst > term > subst > $o ) > $o ).

thf(func_def_230,type,
    sP89: ( subst > term > subst > $o ) > $o ).

thf(func_def_231,type,
    sP90: ( subst > term > subst > $o ) > $o ).

thf(func_def_232,type,
    sP91: ( subst > term > subst > $o ) > $o ).

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

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

thf(func_def_236,type,
    sP95: ( term > $o ) > $o ).

thf(func_def_237,type,
    sP96: ( term > $o ) > $o ).

thf(func_def_240,type,
    sP99: ( subst > term > subst > $o ) > $o ).

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

thf(func_def_243,type,
    sP102: ( subst > term > subst > $o ) > $o ).

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

thf(func_def_246,type,
    sP105: ( term > $o ) > $o ).

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

thf(func_def_248,type,
    sP107: ( subst > term > subst > $o ) > $o ).

thf(func_def_249,type,
    sP108: ( subst > term > subst > $o ) > $o ).

thf(func_def_253,type,
    sK112: term > $o ).

thf(func_def_254,type,
    sK113: term > $o ).

thf(func_def_255,type,
    sK114: term ).

thf(func_def_256,type,
    sK115: subst ).

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

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

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

thf(func_def_260,type,
    sK119: term ).

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

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

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

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

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

thf(func_def_266,type,
    sK125: term ).

thf(func_def_267,type,
    sK126: term ).

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

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

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

thf(func_def_271,type,
    sK130: ( subst > term > term ) > subst ).

thf(func_def_272,type,
    sK131: ( subst > term > term ) > subst ).

thf(func_def_273,type,
    sK132: ( subst > term > term ) > term ).

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

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

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

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

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

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

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

thf(func_def_281,type,
    sK140: ( subst > term > term ) > term ).

thf(func_def_282,type,
    sK141: ( subst > term > term ) > subst ).

thf(func_def_283,type,
    sK142: ( subst > term > term ) > subst ).

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

thf(func_def_285,type,
    sK144: term ).

thf(func_def_286,type,
    sK145: subst > term > subst > $o ).

thf(func_def_287,type,
    sK146: term ).

thf(func_def_288,type,
    sK147: ( subst > term > subst > $o ) > subst ).

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

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

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

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

thf(func_def_293,type,
    sK152: ( subst > term > subst > $o ) > subst ).

thf(func_def_294,type,
    sK153: ( subst > term > subst > $o ) > subst ).

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

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

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

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

thf(func_def_299,type,
    sK158: term ).

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

thf(func_def_301,type,
    sK160: ( subst > term > term ) > subst ).

thf(func_def_302,type,
    sK161: ( subst > term > term ) > term ).

thf(func_def_303,type,
    sK162: ( subst > term > term ) > subst ).

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

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

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

thf(func_def_307,type,
    sK166: term ).

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

thf(func_def_309,type,
    sK168: subst ).

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

thf(func_def_311,type,
    sK170: term ).

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

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

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

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

thf(func_def_316,type,
    sK175: ( term > $o ) > term ).

thf(func_def_317,type,
    sK176: ( term > $o ) > term ).

thf(func_def_318,type,
    sK177: ( term > $o ) > term ).

thf(func_def_319,type,
    sK178: ( term > $o ) > term ).

thf(func_def_320,type,
    sK179: subst > term > subst > $o ).

thf(func_def_321,type,
    sK180: term ).

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

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

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

thf(func_def_325,type,
    sK184: ( subst > term > subst > $o ) > subst ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_338,type,
    sK197: term ).

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

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

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

thf(func_def_342,type,
    sK201: ( subst > term > term ) > term > subst ).

thf(func_def_343,type,
    sK202: ( subst > term > term ) > term > subst ).

thf(func_def_344,type,
    sK203: ( subst > term > term ) > term > term ).

thf(func_def_345,type,
    sK204: ( subst > term > term ) > term > subst ).

thf(func_def_346,type,
    sK205: ( subst > term > term ) > term > subst ).

thf(func_def_347,type,
    sK206: ( subst > term > term ) > term > term ).

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

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

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

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

thf(func_def_352,type,
    sK211: term ).

thf(func_def_353,type,
    sK212: term ).

thf(func_def_354,type,
    sK213: subst > term > subst > $o ).

thf(func_def_355,type,
    sK214: ( subst > term > subst > $o ) > term > term ).

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

thf(func_def_357,type,
    sK216: ( subst > term > term ) > subst ).

thf(func_def_358,type,
    sK217: ( subst > term > term ) > subst ).

thf(func_def_359,type,
    sK218: ( subst > term > term ) > term ).

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

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

thf(func_def_362,type,
    sK221: ( subst > term > term ) > subst ).

thf(func_def_363,type,
    sK222: ( subst > term > term ) > subst ).

thf(func_def_364,type,
    sK223: ( subst > term > term ) > term ).

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

thf(func_def_366,type,
    sK225: term ).

thf(func_def_367,type,
    sK226: term > $o ).

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_379,type,
    sK238: ( subst > term > term ) > subst ).

thf(func_def_380,type,
    sK239: ( subst > term > term ) > subst ).

thf(func_def_381,type,
    sK240: ( subst > term > term ) > term ).

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

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

thf(func_def_384,type,
    sK243: term ).

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

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

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

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

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

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

thf(func_def_391,type,
    sK250: term ).

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

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

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

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

thf(func_def_396,type,
    sK255: term ).

thf(func_def_397,type,
    sK256: term ).

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

thf(func_def_399,type,
    sK258: term ).

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

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

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

thf(func_def_403,type,
    sK262: ( subst > term > subst > $o ) > subst ).

thf(func_def_404,type,
    sK263: ( subst > term > subst > $o ) > subst ).

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

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

thf(func_def_407,type,
    sK266: ( subst > term > subst > $o ) > subst ).

thf(func_def_408,type,
    sK267: ( subst > term > subst > $o ) > subst ).

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

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

thf(func_def_411,type,
    sK270: ( subst > term > term ) > subst ).

thf(func_def_412,type,
    sK271: ( subst > term > term ) > term ).

thf(func_def_413,type,
    sK272: ( subst > term > term ) > subst ).

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

thf(func_def_415,type,
    sK274: ( subst > term > subst > $o ) > subst ).

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

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

thf(func_def_418,type,
    sK277: ( subst > term > subst > $o ) > term ).

thf(func_def_419,type,
    sK278: ( subst > term > subst > $o ) > term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_430,type,
    sK289: ( subst > term > term ) > subst ).

thf(func_def_431,type,
    sK290: ( subst > term > term ) > subst ).

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

thf(func_def_433,type,
    sK292: ( term > $o ) > term ).

thf(func_def_434,type,
    sK293: term > ( term > $o ) > term ).

thf(func_def_435,type,
    sK294: ( term > $o ) > term ).

thf(func_def_436,type,
    sK295: ( term > $o ) > term ).

thf(func_def_437,type,
    sK296: ( term > $o ) > term ).

thf(func_def_438,type,
    sK297: subst ).

thf(func_def_439,type,
    sK298: subst ).

thf(func_def_440,type,
    sK299: subst ).

thf(func_def_441,type,
    sK300: subst ).

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

thf(func_def_443,type,
    sK302: term ).

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

thf(func_def_445,type,
    sK304: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

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

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

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

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

thf(func_def_450,type,
    sK309: term ).

thf(func_def_451,type,
    sK310: term ).

thf(func_def_452,type,
    sK311: term ).

thf(func_def_453,type,
    sK312: term ).

thf(func_def_454,type,
    sK313: term ).

thf(func_def_455,type,
    sK314: term ).

thf(func_def_456,type,
    sK315: term ).

thf(func_def_457,type,
    sK316: term ).

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

thf(func_def_459,type,
    sK318: term ).

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

thf(func_def_461,type,
    sK320: subst ).

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

thf(func_def_463,type,
    sK322: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_474,type,
    sK333: term ).

thf(func_def_475,type,
    sK334: subst ).

thf(func_def_476,type,
    sK335: subst > ( term > $o ) > term ).

thf(func_def_477,type,
    sK336: ( term > $o ) > term ).

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

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

thf(func_def_480,type,
    sK339: ( term > $o ) > term ).

thf(func_def_481,type,
    sK340: subst > term > subst > $o ).

thf(func_def_482,type,
    sK341: term ).

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

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

thf(func_def_485,type,
    sK344: ( subst > term > term ) > term ).

thf(func_def_486,type,
    sK345: ( subst > term > term ) > subst ).

thf(func_def_487,type,
    sK346: ( subst > term > term ) > subst ).

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

thf(func_def_489,type,
    sK348: term ).

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

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

thf(func_def_492,type,
    sK351: term ).

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

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

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

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

thf(func_def_497,type,
    sK356: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_498,type,
    sK357: ( subst > term > subst > $o ) > subst ).

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

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

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

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

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

thf(func_def_504,type,
    sK363: subst ).

thf(func_def_505,type,
    sK364: term ).

thf(func_def_506,type,
    sK365: term ).

thf(func_def_507,type,
    sK366: term ).

thf(func_def_508,type,
    sK367: term ).

thf(func_def_509,type,
    sK368: subst ).

thf(func_def_510,type,
    sK369: term ).

thf(func_def_511,type,
    sK370: subst > term > term ).

thf(func_def_512,type,
    sK371: subst ).

thf(func_def_513,type,
    sK372: subst > term > term ).

thf(func_def_514,type,
    sK373: ( subst > term > term ) > subst ).

thf(func_def_515,type,
    sK374: ( subst > term > term ) > subst ).

thf(func_def_516,type,
    sK375: ( subst > term > term ) > term ).

thf(func_def_517,type,
    sK376: ( subst > term > term ) > term ).

thf(func_def_518,type,
    sK377: ( subst > term > term ) > subst ).

thf(func_def_519,type,
    sK378: ( subst > term > term ) > subst ).

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

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

thf(func_def_522,type,
    sK381: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_533,type,
    sK392: ( subst > term > term ) > term ).

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

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

thf(func_def_536,type,
    sK395: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

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

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

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

thf(func_def_540,type,
    sK399: term ).

thf(func_def_541,type,
    sK400: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_559,type,
    sK418: ( subst > term > term ) > subst ).

thf(func_def_560,type,
    sK419: ( subst > term > term ) > subst ).

thf(func_def_561,type,
    sK420: ( subst > term > term ) > term ).

thf(func_def_562,type,
    sK421: term ).

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

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

thf(func_def_565,type,
    sK424: ( term > $o ) > term ).

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

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

thf(func_def_568,type,
    sK427: ( term > $o ) > term ).

thf(func_def_569,type,
    sK428: ( subst > term > subst > $o ) > term ).

thf(func_def_570,type,
    sK429: ( subst > term > subst > $o ) > term ).

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

thf(func_def_572,type,
    sK431: ( subst > term > term ) > subst ).

thf(func_def_573,type,
    sK432: ( subst > term > term ) > subst ).

thf(func_def_574,type,
    sK433: ( subst > term > term ) > term ).

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

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

thf(func_def_577,type,
    sK436: term ).

thf(func_def_578,type,
    sK437: term > $o ).

thf(func_def_579,type,
    sK438: ( term > $o ) > term > term ).

thf(func_def_580,type,
    sK439: ( term > $o ) > ( subst > term > subst > $o ) > term ).

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

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

thf(func_def_583,type,
    sK442: ( subst > term > term ) > term ).

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

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

thf(func_def_586,type,
    sK445: term ).

thf(func_def_587,type,
    sK446: term ).

thf(func_def_588,type,
    sK447: term ).

thf(func_def_589,type,
    sK448: term ).

thf(func_def_590,type,
    sK449: term ).

thf(func_def_591,type,
    sK450: term ).

thf(func_def_592,type,
    sK451: term ).

thf(func_def_593,type,
    sK452: term ).

thf(func_def_594,type,
    sK453: term ).

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

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

thf(func_def_597,type,
    sK456: term ).

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

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

thf(func_def_600,type,
    sK459: ( subst > term > term ) > subst ).

thf(func_def_601,type,
    sK460: ( subst > term > term ) > term ).

thf(func_def_602,type,
    sK461: ( subst > term > term ) > subst ).

thf(func_def_603,type,
    sK462: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

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

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

thf(func_def_606,type,
    sK465: term ).

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

thf(func_def_608,type,
    sK467: ( subst > term > subst > $o ) > subst ).

thf(func_def_609,type,
    sK468: ( subst > term > subst > $o ) > subst ).

thf(func_def_610,type,
    sK469: ( subst > term > subst > $o ) > term ).

thf(func_def_611,type,
    sK470: ( subst > term > subst > $o ) > term ).

thf(func_def_612,type,
    sK471: ( subst > term > subst > $o ) > subst ).

thf(func_def_613,type,
    sK472: ( subst > term > subst > $o ) > subst ).

thf(func_def_614,type,
    sK473: ( subst > term > subst > $o ) > subst ).

thf(func_def_615,type,
    sK474: ( subst > term > subst > $o ) > term > term ).

thf(func_def_616,type,
    sK475: ( subst > term > term ) > subst ).

thf(func_def_617,type,
    sK476: ( subst > term > term ) > subst ).

thf(func_def_618,type,
    sK477: ( subst > term > term ) > term ).

thf(func_def_619,type,
    sK478: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

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

thf(func_def_621,type,
    sK480: term ).

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

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

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

thf(func_def_625,type,
    sK484: ( term > $o ) > term ).

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

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

thf(func_def_628,type,
    sK487: term ).

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

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

thf(func_def_631,type,
    sK490: subst > term > subst > $o ).

thf(func_def_632,type,
    sK491: term ).

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

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

thf(func_def_635,type,
    sK494: term ).

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

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

thf(func_def_638,type,
    sK497: ( subst > term > subst > $o ) > subst ).

thf(func_def_639,type,
    sK498: ( subst > term > subst > $o ) > term ).

thf(func_def_640,type,
    sK499: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_641,type,
    sK500: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_642,type,
    sK501: ( subst > term > term ) > subst ).

thf(func_def_643,type,
    sK502: ( subst > term > term ) > term ).

thf(func_def_644,type,
    sK503: ( subst > term > term ) > subst ).

thf(func_def_645,type,
    sK504: ( term > $o ) > term ).

thf(func_def_646,type,
    sK505: term > ( term > $o ) > term ).

thf(func_def_647,type,
    sK506: ( term > $o ) > term ).

thf(func_def_648,type,
    sK507: ( term > $o ) > term ).

thf(func_def_649,type,
    sK508: ( term > $o ) > term ).

thf(func_def_650,type,
    sK509: ( subst > term > subst > $o ) > subst ).

thf(func_def_651,type,
    sK510: ( subst > term > subst > $o ) > subst ).

thf(func_def_652,type,
    sK511: ( subst > term > subst > $o ) > term ).

thf(func_def_653,type,
    sK512: ( subst > term > subst > $o ) > subst ).

thf(func_def_654,type,
    sK513: ( subst > term > subst > $o ) > term ).

thf(func_def_655,type,
    sK514: ( subst > term > subst > $o ) > term ).

thf(func_def_656,type,
    sK515: ( subst > term > subst > $o ) > term ).

thf(func_def_657,type,
    sK516: ( subst > term > term ) > subst ).

thf(func_def_658,type,
    sK517: ( subst > term > term ) > term ).

thf(func_def_659,type,
    sK518: ( subst > term > term ) > subst ).

thf(func_def_660,type,
    sK519: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_661,type,
    sK520: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_662,type,
    sK521: subst ).

thf(func_def_663,type,
    sK522: term ).

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

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

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

thf(func_def_667,type,
    sK526: term ).

thf(func_def_668,type,
    sK527: subst ).

thf(func_def_669,type,
    sK528: term ).

thf(func_def_670,type,
    sK529: subst ).

thf(func_def_671,type,
    sK530: subst ).

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

thf(func_def_673,type,
    sK532: subst ).

thf(func_def_674,type,
    sK533: term ).

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

thf(func_def_676,type,
    sK535: term ).

thf(func_def_677,type,
    sK536: subst ).

thf(func_def_678,type,
    sK537: term ).

thf(func_def_679,type,
    sK538: term ).

thf(func_def_680,type,
    sK539: subst ).

thf(func_def_681,type,
    sK540: term ).

thf(func_def_682,type,
    sK541: term ).

thf(func_def_683,type,
    sK542: term ).

thf(func_def_684,type,
    sK543: term > subst > term > term ).

thf(func_def_685,type,
    sK544: subst ).

thf(func_def_686,type,
    sK545: term ).

thf(func_def_687,type,
    sK546: term > subst > term > term ).

thf(func_def_688,type,
    sK547: term ).

thf(func_def_689,type,
    sK548: term ).

thf(func_def_690,type,
    sK549: term ).

thf(func_def_691,type,
    sK550: term ).

thf(func_def_692,type,
    sK551: term ).

thf(func_def_693,type,
    sK552: term ).

thf(func_def_694,type,
    sK553: term ).

thf(func_def_695,type,
    sK554: ( term > $o ) > term > subst > term > $o ).

thf(func_def_696,type,
    sK555: subst ).

thf(func_def_697,type,
    sK556: term ).

thf(func_def_698,type,
    sK557: term > $o ).

thf(func_def_699,type,
    sK558: ( term > $o ) > term ).

thf(func_def_700,type,
    sK559: subst ).

thf(func_def_701,type,
    sK560: subst ).

thf(func_def_702,type,
    sK561: subst ).

thf(func_def_703,type,
    sK562: term ).

thf(func_def_704,type,
    sK563: term > d_term ).

thf(func_def_705,type,
    sK564: term ).

thf(func_def_706,type,
    sK565: term ).

thf(func_def_707,type,
    sK566: term ).

thf(func_def_708,type,
    sK567: term ).

thf(func_def_709,type,
    sK568: term ).

thf(func_def_710,type,
    sK569: term ).

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

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

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

thf(func_def_714,type,
    sK573: term ).

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

thf(func_def_716,type,
    sK575: ( subst > term > term ) > subst ).

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

thf(func_def_718,type,
    sK577: subst ).

thf(func_def_719,type,
    sK578: term ).

thf(func_def_720,type,
    sK579: term ).

thf(func_def_721,type,
    sK580: term ).

thf(func_def_722,type,
    sK581: term ).

thf(func_def_723,type,
    sK582: term ).

thf(func_def_724,type,
    sK583: subst ).

thf(func_def_725,type,
    sK584: term ).

thf(func_def_726,type,
    sK585: term > ( term > $o ) > subst > ( term > $o ) > term ).

thf(func_def_727,type,
    sK586: term > $o ).

thf(func_def_728,type,
    sK587: subst ).

thf(func_def_729,type,
    sK588: term > $o ).

thf(func_def_730,type,
    sK589: term ).

thf(func_def_731,type,
    sK590: term ).

thf(func_def_732,type,
    sK591: term ).

thf(func_def_733,type,
    sK592: term ).

thf(func_def_734,type,
    sK593: term ).

thf(func_def_735,type,
    sK594: term ).

thf(func_def_736,type,
    sK595: term > $o ).

thf(func_def_737,type,
    sK596: subst ).

thf(func_def_738,type,
    sK597: term ).

thf(func_def_739,type,
    sK598: term ).

thf(func_def_740,type,
    sK599: term > $o ).

thf(func_def_741,type,
    sK600: term ).

thf(func_def_742,type,
    sK601: ( subst > term > term ) > term ).

thf(func_def_743,type,
    sK602: ( subst > term > term ) > subst ).

thf(func_def_744,type,
    sK603: ( subst > term > term ) > subst ).

thf(func_def_745,type,
    sK604: ( subst > term > term ) > subst ).

thf(func_def_746,type,
    sK605: ( subst > term > term ) > term ).

thf(func_def_747,type,
    sK606: ( subst > term > term ) > subst ).

thf(func_def_748,type,
    sK607: subst > term > term ).

thf(func_def_749,type,
    sK608: subst ).

thf(func_def_750,type,
    sK609: term ).

thf(func_def_751,type,
    sK610: subst > term > term ).

thf(func_def_752,type,
    sK611: subst > term > subst > $o ).

thf(func_def_753,type,
    sK612: ( term > $o ) > term ).

thf(func_def_754,type,
    sK613: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_755,type,
    sK614: subst > term > subst > $o ).

thf(func_def_756,type,
    sK615: term ).

thf(func_def_757,type,
    sK616: subst > d_subst ).

thf(func_def_758,type,
    sK617: subst ).

thf(func_def_759,type,
    sK618: term > $o ).

thf(func_def_760,type,
    sK619: term > $o ).

thf(func_def_761,type,
    sK620: term ).

thf(func_def_762,type,
    sK621: term > ( term > $o ) > ( term > $o ) > subst > term ).

thf(func_def_763,type,
    sK622: subst ).

thf(func_def_764,type,
    sK623: term ).

thf(func_def_765,type,
    sK624: ( term > $o ) > subst > term > term > $o ).

thf(func_def_766,type,
    sK625: term ).

thf(func_def_767,type,
    sK626: subst ).

thf(func_def_768,type,
    sK627: term > $o ).

thf(func_def_769,type,
    sK628: ( term > $o ) > term ).

thf(func_def_770,type,
    sK629: term ).

thf(func_def_771,type,
    sK630: ( subst > term > term ) > subst ).

thf(func_def_772,type,
    sK631: ( subst > term > term ) > term ).

thf(func_def_773,type,
    sK632: term ).

thf(func_def_774,type,
    sK633: term > subst > term > term ).

thf(func_def_775,type,
    sK634: subst > term > term ).

thf(func_def_776,type,
    sK635: term ).

thf(func_def_777,type,
    sK636: term ).

thf(func_def_778,type,
    sK637: ( subst > term > term ) > subst ).

thf(func_def_779,type,
    sK638: ( subst > term > term ) > subst ).

thf(func_def_780,type,
    sK639: ( subst > term > term ) > term ).

thf(func_def_781,type,
    sK640: term > subst > term > term ).

thf(func_def_782,type,
    sK641: term ).

thf(func_def_783,type,
    sK642: ( subst > term > term ) > term ).

thf(func_def_784,type,
    sK643: ( subst > term > term ) > subst ).

thf(func_def_785,type,
    sK644: term ).

thf(func_def_786,type,
    sK645: term ).

thf(func_def_787,type,
    sK646: subst > term > subst > $o ).

thf(func_def_788,type,
    sK647: ( term > $o ) > term ).

thf(func_def_789,type,
    sK648: ( subst > term > subst > $o ) > term > $o ).

thf(func_def_790,type,
    sK649: term ).

thf(func_def_792,type,
    sK651: subst > term > ( term > $o ) > ( term > $o ) > term ).

thf(func_def_793,type,
    sK652: subst > term > ( term > $o ) > ( term > $o ) > term ).

thf(func_def_795,type,
    ph653: 
      !>[X0: $tType] : X0 ).

thf(f3977,plain,
    $false,
    inference(avatar_sat_refutation,[status(thm)],[f3812,f3876,f3976]) ).

thf(f3976,plain,
    spl650_452,
    inference(avatar_contradiction_clause,[status(thm)],[f3975]) ).

thf(f3975,plain,
    ( $false
    | spl650_452 ),
    inference(trivial_inequality_removal,[status(thm)],[f3974]) ).

thf(f3974,plain,
    ( ( $true != $true )
    | spl650_452 ),
    inference(superposition,[status(thm)],[f3811,f3973]) ).

thf(f3973,plain,
    ! [X0: term > $o] :
      ( ( sP0 @ X0 )
      = $true ),
    inference(subsumption_resolution,[status(thm)],[f764,f3898]) ).

thf(f3898,plain,
    ! [X0: term] :
      ( $true
     != ( var @ X0 ) ),
    inference(superposition,[status(thm)],[f1286,f3893]) ).

thf(f3893,plain,
    ! [X87: term] :
      ( ( d2term @ d_one )
      = X87 ),
    inference(forward_demodulation,[status(thm)],[f1420,f1425]) ).

thf(f1425,plain,
    ! [X84: d_term] : ( d_one = X84 ),
    inference(cnf_transformation,[status(thm)],[f757]) ).

thf(f757,plain,
    ( ( ( axscons = $true )
      | ( sK521
       != ( push @ ( sub @ one @ sK521 ) @ ( comp @ sh @ sK521 ) ) ) )
    & ( ! [X1: subst] :
          ( ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) )
          = X1 )
      | ( axscons != $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( $true = sP109 )
      | ( $true = sP111 )
      | ( $true = sP110 )
      | ( sK522
       != ( sub @ sK522 @ id ) )
      | ! [X4: term > $o] :
          ( ( X4 @ ( sK524 @ X4 ) )
         != ( sK523 @ id @ ( sK524 @ X4 ) @ id ) )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP109 )
        & ( $true != sP111 )
        & ( $true != sP110 )
        & ! [X6: term] :
            ( ( sub @ X6 @ id )
            = X6 )
        & ! [X7: subst > term > subst > $o,X9: term] :
            ( ( X7 @ id @ X9 @ id )
            = ( sK525 @ X7 @ X9 ) ) ) )
    & ( axvarshift = $true )
    & ( ( $true = sP103 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP103 ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( $true = sP100 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP100 ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X10: term,X11: subst] :
            ( ( sub @ one @ ( push @ X10 @ X11 ) )
            = X10 )
        & ! [X12: term,X13: subst] :
            ( ( comp @ sh @ ( push @ X12 @ X13 ) )
            = X13 )
        & ( $true != sP97 )
        & ( $true != sP98 )
        & ! [X14: subst] :
            ( ( comp @ X14 @ id )
            = X14 ) ) )
    & ( ( ( sub @ one @ ( push @ sK526 @ sK527 ) )
       != sK526 )
      | ( sK529
       != ( comp @ sh @ ( push @ sK528 @ sK529 ) ) )
      | ( $true = sP97 )
      | ( $true = sP98 )
      | ( sK530
       != ( comp @ sK530 @ id ) )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslamnotvar = $true )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X20: subst,X21: term] :
            ( ( sub @ one @ ( push @ X21 @ X20 ) )
            = X21 )
        & ( $true
          = ( sK531 @ sK533 ) )
        & ( $true
         != ( sK534 @ ( sub @ sK533 @ ( push @ sK535 @ sK532 ) ) ) )
        & ! [X27: term,X28: subst] :
            ( ( comp @ sh @ ( push @ X27 @ X28 ) )
            = X28 ) ) )
    & ( ( ( sub @ one @ ( push @ sK537 @ sK536 ) )
       != sK537 )
      | ! [X31: term > $o,X32: subst,X33: term,X34: term > $o,X35: term] :
          ( ( $true
           != ( X31 @ X33 ) )
          | ( ( X34 @ ( sub @ X33 @ ( push @ X35 @ X32 ) ) )
            = $true ) )
      | ( ( comp @ sh @ ( push @ sK538 @ sK539 ) )
       != sK539 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( $true = sP92 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP92 ) )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( shinj = $true )
      | ( ( ( sub @ sK541 @ sh )
          = ( sub @ sK540 @ sh ) )
        & ( sK540 != sK541 ) ) )
    & ( ! [X40: term,X41: term] :
          ( ( ( sub @ X40 @ sh )
           != ( sub @ X41 @ sh ) )
          | ( X40 = X41 ) )
      | ( shinj != $true ) )
    & ( hoasinduction_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ! [X43: subst > term > term] :
          ( ( X43 @ sh @ one )
         != ( sub @ sK542 @ ( push @ one @ sh ) ) ) )
    & ( ! [X44: term] :
          ( ( sK543 @ X44 @ sh @ one )
          = ( sub @ X44 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( axidr = $true )
      | ( ( comp @ sK544 @ id )
       != sK544 ) )
    & ( ! [X47: subst] :
          ( ( comp @ X47 @ id )
          = X47 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( sP87 != $true ) )
    & ( ( sP87 = $true )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ulamvarsh = $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X48: term] :
            ( ( sub @ X48 @ id )
            = X48 )
        & ( $true != sP85 ) ) )
    & ( ( $true = sP84 )
      | ( sK545
       != ( sub @ sK545 @ id ) )
      | ( $true = sP85 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X50: term] :
          ( ( sub @ X50 @ ( push @ one @ sh ) )
          = ( sK546 @ X50 @ sh @ one ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ! [X53: subst > term > term] :
          ( ( sub @ sK547 @ ( push @ one @ sh ) )
         != ( X53 @ sh @ one ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP81 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP81 ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X54: term] :
            ( ( sub @ X54 @ id )
            = X54 )
        & ( sK548
         != ( sub @ sK548 @ id ) ) ) )
    & ( ( sK549
       != ( sub @ sK549 @ id ) )
      | ! [X57: term] :
          ( ( sub @ X57 @ id )
          = X57 )
      | ( termmset_lthm != $true ) )
    & ( termmset_gthm = $true )
    & ( ! [X58: term,X59: term,X60: term,X61: term] :
          ( ( X58 = X59 )
          | ( ( ap @ ( sub @ X61 @ id ) @ X59 )
           != ( ap @ ( sub @ X60 @ id ) @ X58 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ( ( sK551 != sK550 )
        & ( ( ap @ ( sub @ sK552 @ id ) @ sK550 )
          = ( ap @ ( sub @ sK553 @ id ) @ sK551 ) ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP76 )
        & ( $true != sP75 )
        & ( $true != sP74 )
        & ( $true != sP77 ) ) )
    & ( ( $true = sP76 )
      | ( $true = sP75 )
      | ( $true = sP74 )
      | ( $true = sP77 )
      | ( hoasinduction_lthm != $true ) )
    & ( lamnotap != $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( $true = sP61 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP61 ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X66: subst,X67: term,X68: term > $o,X70: term] :
          ( ( sK554 @ X68 @ X67 @ X66 @ X70 )
          = ( X68 @ ( sub @ X70 @ ( push @ X67 @ X66 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ! [X74: term > $o] :
          ( ( sK557 @ ( sub @ ( sK558 @ X74 ) @ ( push @ sK556 @ sK555 ) ) )
         != ( X74 @ ( sK558 @ X74 ) ) ) )
    & ( ( axidl = $true )
      | ( sK559
       != ( comp @ id @ sK559 ) ) )
    & ( ! [X77: subst] :
          ( ( comp @ id @ X77 )
          = X77 )
      | ( axidl != $true ) )
    & ( ( $true = sP60 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP60 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP58 ) )
    & ( ( $true = sP58 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( ! [X78: subst] :
            ( ( comp @ id @ X78 )
            = X78 )
        & ! [X79: subst] :
            ( ( comp @ X79 @ id )
            = X79 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ( ( comp @ id @ sK560 )
       != sK560 )
      | ( ( comp @ sK561 @ id )
       != sK561 ) )
    & ( axapp = $true )
    & ! [X82: d_subst,X83: d_subst] :
        ( ( ( d2subst @ X83 )
         != ( d2subst @ X82 ) )
        | ( X82 = X83 ) )
    & ! [X84: d_term] : ( d_one = X84 )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP55 )
        & ( $true != sP56 )
        & ! [X85: term] :
            ( ( sub @ X85 @ id )
            = X85 ) ) )
    & ( ( $true = sP55 )
      | ( $true = sP56 )
      | ( sK562
       != ( sub @ sK562 @ id ) )
      | ( induction2_lthm != $true ) )
    & ! [X87: term] :
        ( ( d2term @ ( sK563 @ X87 ) )
        = X87 )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( laminj = $true )
      | ( ( ( lam @ sK565 )
          = ( lam @ sK564 ) )
        & ( sK565 != sK564 ) ) )
    & ( ! [X91: term,X92: term] :
          ( ( ( lam @ X92 )
           != ( lam @ X91 ) )
          | ( X91 = X92 ) )
      | ( laminj != $true ) )
    & ( ( hoasapinj1 = $true )
      | ( ( ( ap @ ( sub @ sK566 @ id ) @ sK568 )
          = ( ap @ ( sub @ sK569 @ id ) @ sK567 ) )
        & ( sK566 != sK569 ) ) )
    & ( ! [X97: term,X98: term,X99: term,X100: term] :
          ( ( ( ap @ ( sub @ X100 @ id ) @ X98 )
           != ( ap @ ( sub @ X97 @ id ) @ X99 ) )
          | ( X97 = X100 ) )
      | ( hoasapinj1 != $true ) )
    & ! [X101: d_term,X102: d_term] :
        ( ( X101 = X102 )
        | ( ( d2term @ X102 )
         != ( d2term @ X101 ) ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ! [X104: term > $o] :
          ( ( X104 @ ( sK571 @ X104 ) )
         != ( sK570 @ id @ ( sK571 @ X104 ) @ id ) ) )
    & ( ! [X106: subst > term > subst > $o,X108: term] :
          ( ( X106 @ id @ X108 @ id )
          = ( sK572 @ X106 @ X108 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ! [X110: subst > term > term] :
          ( ( sub @ sK573 @ ( push @ ( sK574 @ X110 ) @ ( sK575 @ X110 ) ) )
         != ( X110 @ ( sK575 @ X110 ) @ ( sK574 @ X110 ) ) ) )
    & ( ! [X113: term,X115: term,X116: subst] :
          ( ( sub @ X113 @ ( push @ X115 @ X116 ) )
          = ( sK576 @ X113 @ X116 @ X115 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( induction2lem = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( induction2lem != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( axshiftcons = $true )
      | ( ( comp @ sh @ ( push @ sK578 @ sK577 ) )
       != sK577 ) )
    & ( ! [X119: subst,X120: term] :
          ( ( comp @ sh @ ( push @ X120 @ X119 ) )
          = X119 )
      | ( axshiftcons != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( lamnotvar = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ! [X121: term,X122: term,X123: term,X124: term] :
          ( ( X123 = X124 )
          | ( ( ap @ X122 @ X124 )
           != ( ap @ X121 @ X123 ) ) )
      | ( apinj2 != $true ) )
    & ( ( apinj2 = $true )
      | ( ( sK582 != sK581 )
        & ( ( ap @ sK579 @ sK581 )
          = ( ap @ sK580 @ sK582 ) ) ) )
    & ( ( $true = sP47 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP47 ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( axclos = $true )
    & ! [X129: d_subst] : ( d_id = X129 )
    & ( ( axvarcons = $true )
      | ( sK584
       != ( sub @ one @ ( push @ sK584 @ sK583 ) ) ) )
    & ( ! [X132: subst,X133: term] :
          ( ( sub @ one @ ( push @ X133 @ X132 ) )
          = X133 )
      | ( axvarcons != $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( $true = sP42 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP42 ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X134: term > $o,X135: subst,X136: term > $o,X137: term] :
          ( ( ( X134 @ one )
            = $true )
          | ( $true
           != ( X136 @ X137 ) )
          | ( ( X134 @ ( sK585 @ X137 @ X136 @ X135 @ X134 ) )
           != ( X136 @ ( sub @ ( sK585 @ X137 @ X136 @ X135 @ X134 ) @ ( push @ X137 @ X135 ) ) ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ( ( $true
         != ( sK586 @ one ) )
        & ( $true
          = ( sK588 @ sK589 ) )
        & ! [X143: term] :
            ( ( sK588 @ ( sub @ X143 @ ( push @ sK589 @ sK587 ) ) )
            = ( sK586 @ X143 ) ) ) )
    & ( ! [X144: term,X145: term,X146: term,X147: term] :
          ( ( X146 = X147 )
          | ( ( ap @ X146 @ X144 )
           != ( ap @ X147 @ X145 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ( ( sK592 != sK593 )
        & ( ( ap @ sK592 @ sK590 )
          = ( ap @ sK593 @ sK591 ) ) ) )
    & ( ( ( sub @ sK594 @ id )
       != sK594 )
      | ( $true = sP40 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X153: term] :
            ( ( sub @ X153 @ id )
            = X153 )
        & ( $true != sP40 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X154: term > $o,X155: subst,X156: term,X157: term,X158: term > $o] :
          ( ( $true
           != ( X154 @ X157 ) )
          | ( ( X158 @ ( sub @ X157 @ ( push @ X156 @ X155 ) ) )
            = $true ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ( ( $true
          = ( sK595 @ sK598 ) )
        & ( $true
         != ( sK599 @ ( sub @ sK598 @ ( push @ sK597 @ sK596 ) ) ) ) ) )
    & ( ( $true = sP35 )
      | ( sK600
       != ( sub @ sK600 @ id ) )
      | ( sP36 = $true )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP35 )
        & ! [X165: term] :
            ( ( sub @ X165 @ id )
            = X165 )
        & ( sP36 != $true ) ) )
    & ( ! [X166: subst > term > term,X167: subst,X168: term,X169: subst > term > term] :
          ( ( ( X166 @ ( comp @ ( sK602 @ X166 ) @ ( sK603 @ X166 ) ) @ ( sub @ ( sK601 @ X166 ) @ ( sK603 @ X166 ) ) )
           != ( sub @ ( X166 @ ( sK602 @ X166 ) @ ( sK601 @ X166 ) ) @ ( sK603 @ X166 ) ) )
          | ( ( X169 @ ( comp @ ( sK604 @ X169 ) @ ( sK606 @ X169 ) ) @ ( sub @ ( sK605 @ X169 ) @ ( sK606 @ X169 ) ) )
           != ( sub @ ( X169 @ ( sK604 @ X169 ) @ ( sK605 @ X169 ) ) @ ( sK606 @ X169 ) ) )
          | ( ( X169 @ X167 @ X168 )
            = ( X166 @ X167 @ X168 ) )
          | ( ( lam @ ( X169 @ sh @ one ) )
           != ( lam @ ( X166 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ( ! [X180: term,X181: subst,X182: subst] :
            ( ( sK607 @ ( comp @ X181 @ X182 ) @ ( sub @ X180 @ X182 ) )
            = ( sub @ ( sK607 @ X181 @ X180 ) @ X182 ) )
        & ! [X183: subst,X184: term,X185: subst] :
            ( ( sK610 @ ( comp @ X183 @ X185 ) @ ( sub @ X184 @ X185 ) )
            = ( sub @ ( sK610 @ X183 @ X184 ) @ X185 ) )
        & ( ( sK607 @ sK608 @ sK609 )
         != ( sK610 @ sK608 @ sK609 ) )
        & ( ( lam @ ( sK610 @ sh @ one ) )
          = ( lam @ ( sK607 @ sh @ one ) ) ) ) )
    & ( ( hoasinduction_lem0 = $true )
      | ! [X187: term > $o] :
          ( ( X187 @ ( sK612 @ X187 ) )
         != ( sK611 @ id @ ( sK612 @ X187 ) @ id ) ) )
    & ( ! [X189: subst > term > subst > $o,X191: term] :
          ( ( X189 @ id @ X191 @ id )
          = ( sK613 @ X189 @ X191 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( sP30 = $true )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( sP30 != $true ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ( ( $true
         != ( sP27 @ sK614 ) )
        & ( $true
         != ( sP26 @ sK614 ) )
        & ( $true
         != ( sK614 @ id @ sK615 @ id ) ) ) )
    & ( ! [X194: subst > term > subst > $o,X195: term] :
          ( ( ( sP27 @ X194 )
            = $true )
          | ( ( sP26 @ X194 )
            = $true )
          | ( ( X194 @ id @ X195 @ id )
            = $true ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ! [X196: subst] :
        ( ( d2subst @ ( sK616 @ X196 ) )
        = X196 )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ! [X202: term] :
            ( ( sK618 @ X202 )
            = ( sK619 @ ( sub @ X202 @ ( push @ sK620 @ sK617 ) ) ) )
        & ( $true
         != ( sK618 @ one ) )
        & ( $true
          = ( sK619 @ sK620 ) )
        & ! [X203: subst,X204: term] :
            ( ( sub @ one @ ( push @ X204 @ X203 ) )
            = X204 ) ) )
    & ( ! [X205: subst,X206: term > $o,X207: term > $o,X208: term] :
          ( ( ( X206 @ ( sK621 @ X208 @ X207 @ X206 @ X205 ) )
           != ( X207 @ ( sub @ ( sK621 @ X208 @ X207 @ X206 @ X205 ) @ ( push @ X208 @ X205 ) ) ) )
          | ( ( X206 @ one )
            = $true )
          | ( $true
           != ( X207 @ X208 ) ) )
      | ( ( sub @ one @ ( push @ sK623 @ sK622 ) )
       != sK623 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X212: term,X213: subst,X214: term > $o,X216: term] :
          ( ( sK624 @ X214 @ X213 @ X212 @ X216 )
          = ( X214 @ ( sub @ X216 @ ( push @ X212 @ X213 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ! [X220: term > $o] :
          ( ( sK627 @ ( sub @ ( sK628 @ X220 ) @ ( push @ sK625 @ sK626 ) ) )
         != ( X220 @ ( sK628 @ X220 ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( ! [X223: subst > term > term] :
          ( ( X223 @ ( sK630 @ X223 ) @ ( sK631 @ X223 ) )
         != ( sub @ sK629 @ ( push @ ( sK631 @ X223 ) @ ( sK630 @ X223 ) ) ) )
      | ( ( sub @ sK632 @ id )
       != sK632 )
      | ( sP25 = $true )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X227: term,X229: subst,X230: term] :
            ( ( sK633 @ X227 @ X229 @ X230 )
            = ( sub @ X227 @ ( push @ X230 @ X229 ) ) )
        & ! [X231: term] :
            ( ( sub @ X231 @ id )
            = X231 )
        & ( sP25 != $true ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( axassoc = $true )
    & ( ( hoaslamnotap = $true )
      | ( ( ( ap @ ( sub @ sK635 @ id ) @ sK636 )
          = ( lam @ ( sK634 @ sh @ one ) ) )
        & ! [X235: subst,X236: subst,X237: term] :
            ( ( sub @ ( sK634 @ X235 @ X237 ) @ X236 )
            = ( sK634 @ ( comp @ X235 @ X236 ) @ ( sub @ X237 @ X236 ) ) ) ) )
    & ( ! [X238: subst > term > term,X239: term,X240: term] :
          ( ( ( ap @ ( sub @ X239 @ id ) @ X240 )
           != ( lam @ ( X238 @ sh @ one ) ) )
          | ( ( sub @ ( X238 @ ( sK637 @ X238 ) @ ( sK639 @ X238 ) ) @ ( sK638 @ X238 ) )
           != ( X238 @ ( comp @ ( sK637 @ X238 ) @ ( sK638 @ X238 ) ) @ ( sub @ ( sK639 @ X238 ) @ ( sK638 @ X238 ) ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP23 ) )
    & ( ( $true = sP23 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ! [X244: term,X246: term,X247: subst] :
          ( ( sK640 @ X244 @ X247 @ X246 )
          = ( sub @ X244 @ ( push @ X246 @ X247 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ! [X249: subst > term > term] :
          ( ( X249 @ ( sK643 @ X249 ) @ ( sK642 @ X249 ) )
         != ( sub @ sK641 @ ( push @ ( sK642 @ X249 ) @ ( sK643 @ X249 ) ) ) ) )
    & ( hoasapnotvar = $true )
    & ( axmap = $true )
    & ( ( axvarid = $true )
      | ( sK644
       != ( sub @ sK644 @ id ) ) )
    & ( ! [X253: term] :
          ( ( sub @ X253 @ id )
          = X253 )
      | ( axvarid != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP19 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP19 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( $true = sP15 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP11 )
      | ( ( sub @ sK645 @ id )
       != sK645 )
      | ( sP12 = $true )
      | ( sP10 = $true )
      | ! [X256: term > $o] :
          ( ( sK646 @ id @ ( sK647 @ X256 ) @ id )
         != ( X256 @ ( sK647 @ X256 ) ) )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP11 )
        & ! [X258: term] :
            ( ( sub @ X258 @ id )
            = X258 )
        & ( sP12 != $true )
        & ( sP10 != $true )
        & ! [X259: subst > term > subst > $o,X261: term] :
            ( ( sK648 @ X259 @ X261 )
            = ( X259 @ id @ X261 @ id ) ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( induction2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X262: term] :
          ( ( sub @ X262 @ id )
          = X262 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ( sK649
       != ( sub @ sK649 @ id ) ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK591,sK592,sK593,sK594,sK595,sK596,sK597,sK598,sK599,sK600,sK601,sK602,sK603,sK604,sK605,sK606,sK607,sK608,sK609,sK610,sK611,sK612,sK613,sK614,sK615,sK616,sK617,sK618,sK619,sK620,sK621,sK622,sK623,sK624,sK625,sK626,sK627,sK628,sK629,sK630,sK631,sK632,sK633,sK634,sK635,sK636,sK637,sK638,sK639,sK640,sK641,sK642,sK643,sK644,sK645,sK646,sK647,sK648,sK649])],[f681,f756,f755,f754,f753,f752,f751,f750,f749,f748,f747,f746,f745,f744,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682]) ).

thf(f682,plain,
    ( ? [X0: subst] :
        ( ( push @ ( sub @ one @ X0 ) @ ( comp @ sh @ X0 ) )
       != X0 )
   => ( sK521
     != ( push @ ( sub @ one @ sK521 ) @ ( comp @ sh @ sK521 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f683,plain,
    ( ? [X2: term] :
        ( ( sub @ X2 @ id )
       != X2 )
   => ( sK522
     != ( sub @ sK522 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f684,plain,
    ( ? [X3: subst > term > subst > $o] :
      ! [X4: term > $o] :
      ? [X5: term] :
        ( ( X4 @ X5 )
       != ( X3 @ id @ X5 @ id ) )
   => ! [X4: term > $o] :
      ? [X5: term] :
        ( ( X4 @ X5 )
       != ( sK523 @ id @ X5 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f685,plain,
    ! [X4: term > $o] :
      ( ? [X5: term] :
          ( ( X4 @ X5 )
         != ( sK523 @ id @ X5 @ id ) )
     => ( ( X4 @ ( sK524 @ X4 ) )
       != ( sK523 @ id @ ( sK524 @ X4 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f686,plain,
    ! [X7: subst > term > subst > $o] :
      ( ? [X8: term > $o] :
        ! [X9: term] :
          ( ( X7 @ id @ X9 @ id )
          = ( X8 @ X9 ) )
     => ! [X9: term] :
          ( ( X7 @ id @ X9 @ id )
          = ( sK525 @ X7 @ X9 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f687,plain,
    ( ? [X15: term,X16: subst] :
        ( ( sub @ one @ ( push @ X15 @ X16 ) )
       != X15 )
   => ( ( sub @ one @ ( push @ sK526 @ sK527 ) )
     != sK526 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f688,plain,
    ( ? [X17: term,X18: subst] :
        ( ( comp @ sh @ ( push @ X17 @ X18 ) )
       != X18 )
   => ( sK529
     != ( comp @ sh @ ( push @ sK528 @ sK529 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f689,plain,
    ( ? [X19: subst] :
        ( ( comp @ X19 @ id )
       != X19 )
   => ( sK530
     != ( comp @ sK530 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f690,plain,
    ( ? [X22: term > $o,X23: subst,X24: term,X25: term > $o,X26: term] :
        ( ( $true
          = ( X22 @ X24 ) )
        & ( $true
         != ( X25 @ ( sub @ X24 @ ( push @ X26 @ X23 ) ) ) ) )
   => ( ( $true
        = ( sK531 @ sK533 ) )
      & ( $true
       != ( sK534 @ ( sub @ sK533 @ ( push @ sK535 @ sK532 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f691,plain,
    ( ? [X29: subst,X30: term] :
        ( ( sub @ one @ ( push @ X30 @ X29 ) )
       != X30 )
   => ( ( sub @ one @ ( push @ sK537 @ sK536 ) )
     != sK537 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f692,plain,
    ( ? [X36: term,X37: subst] :
        ( ( comp @ sh @ ( push @ X36 @ X37 ) )
       != X37 )
   => ( ( comp @ sh @ ( push @ sK538 @ sK539 ) )
     != sK539 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f693,plain,
    ( ? [X38: term,X39: term] :
        ( ( ( sub @ X38 @ sh )
          = ( sub @ X39 @ sh ) )
        & ( X38 != X39 ) )
   => ( ( ( sub @ sK541 @ sh )
        = ( sub @ sK540 @ sh ) )
      & ( sK540 != sK541 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f694,plain,
    ( ? [X42: term] :
      ! [X43: subst > term > term] :
        ( ( sub @ X42 @ ( push @ one @ sh ) )
       != ( X43 @ sh @ one ) )
   => ! [X43: subst > term > term] :
        ( ( X43 @ sh @ one )
       != ( sub @ sK542 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f695,plain,
    ! [X44: term] :
      ( ? [X45: subst > term > term] :
          ( ( sub @ X44 @ ( push @ one @ sh ) )
          = ( X45 @ sh @ one ) )
     => ( ( sK543 @ X44 @ sh @ one )
        = ( sub @ X44 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f696,plain,
    ( ? [X46: subst] :
        ( ( comp @ X46 @ id )
       != X46 )
   => ( ( comp @ sK544 @ id )
     != sK544 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f697,plain,
    ( ? [X49: term] :
        ( ( sub @ X49 @ id )
       != X49 )
   => ( sK545
     != ( sub @ sK545 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f698,plain,
    ! [X50: term] :
      ( ? [X51: subst > term > term] :
          ( ( sub @ X50 @ ( push @ one @ sh ) )
          = ( X51 @ sh @ one ) )
     => ( ( sub @ X50 @ ( push @ one @ sh ) )
        = ( sK546 @ X50 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f699,plain,
    ( ? [X52: term] :
      ! [X53: subst > term > term] :
        ( ( sub @ X52 @ ( push @ one @ sh ) )
       != ( X53 @ sh @ one ) )
   => ! [X53: subst > term > term] :
        ( ( sub @ sK547 @ ( push @ one @ sh ) )
       != ( X53 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f701,plain,
    ( ? [X56: term] :
        ( ( sub @ X56 @ id )
       != X56 )
   => ( sK549
     != ( sub @ sK549 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f702,plain,
    ( ? [X62: term,X63: term,X64: term,X65: term] :
        ( ( X62 != X63 )
        & ( ( ap @ ( sub @ X64 @ id ) @ X62 )
          = ( ap @ ( sub @ X65 @ id ) @ X63 ) ) )
   => ( ( sK551 != sK550 )
      & ( ( ap @ ( sub @ sK552 @ id ) @ sK550 )
        = ( ap @ ( sub @ sK553 @ id ) @ sK551 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f703,plain,
    ! [X66: subst,X67: term,X68: term > $o] :
      ( ? [X69: term > $o] :
        ! [X70: term] :
          ( ( X69 @ X70 )
          = ( X68 @ ( sub @ X70 @ ( push @ X67 @ X66 ) ) ) )
     => ! [X70: term] :
          ( ( sK554 @ X68 @ X67 @ X66 @ X70 )
          = ( X68 @ ( sub @ X70 @ ( push @ X67 @ X66 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f705,plain,
    ! [X74: term > $o] :
      ( ? [X75: term] :
          ( ( X74 @ X75 )
         != ( sK557 @ ( sub @ X75 @ ( push @ sK556 @ sK555 ) ) ) )
     => ( ( sK557 @ ( sub @ ( sK558 @ X74 ) @ ( push @ sK556 @ sK555 ) ) )
       != ( X74 @ ( sK558 @ X74 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f706,plain,
    ( ? [X76: subst] :
        ( ( comp @ id @ X76 )
       != X76 )
   => ( sK559
     != ( comp @ id @ sK559 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f707,plain,
    ( ? [X80: subst] :
        ( ( comp @ id @ X80 )
       != X80 )
   => ( ( comp @ id @ sK560 )
     != sK560 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f708,plain,
    ( ? [X81: subst] :
        ( ( comp @ X81 @ id )
       != X81 )
   => ( ( comp @ sK561 @ id )
     != sK561 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f709,plain,
    ( ? [X86: term] :
        ( ( sub @ X86 @ id )
       != X86 )
   => ( sK562
     != ( sub @ sK562 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f710,plain,
    ! [X87: term] :
      ( ? [X88: d_term] :
          ( ( d2term @ X88 )
          = X87 )
     => ( ( d2term @ ( sK563 @ X87 ) )
        = X87 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f711,plain,
    ( ? [X89: term,X90: term] :
        ( ( ( lam @ X89 )
          = ( lam @ X90 ) )
        & ( X89 != X90 ) )
   => ( ( ( lam @ sK565 )
        = ( lam @ sK564 ) )
      & ( sK565 != sK564 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f712,plain,
    ( ? [X93: term,X94: term,X95: term,X96: term] :
        ( ( ( ap @ ( sub @ X93 @ id ) @ X95 )
          = ( ap @ ( sub @ X96 @ id ) @ X94 ) )
        & ( X93 != X96 ) )
   => ( ( ( ap @ ( sub @ sK566 @ id ) @ sK568 )
        = ( ap @ ( sub @ sK569 @ id ) @ sK567 ) )
      & ( sK566 != sK569 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f713,plain,
    ( ? [X103: subst > term > subst > $o] :
      ! [X104: term > $o] :
      ? [X105: term] :
        ( ( X103 @ id @ X105 @ id )
       != ( X104 @ X105 ) )
   => ! [X104: term > $o] :
      ? [X105: term] :
        ( ( sK570 @ id @ X105 @ id )
       != ( X104 @ X105 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f714,plain,
    ! [X104: term > $o] :
      ( ? [X105: term] :
          ( ( sK570 @ id @ X105 @ id )
         != ( X104 @ X105 ) )
     => ( ( X104 @ ( sK571 @ X104 ) )
       != ( sK570 @ id @ ( sK571 @ X104 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f715,plain,
    ! [X106: subst > term > subst > $o] :
      ( ? [X107: term > $o] :
        ! [X108: term] :
          ( ( X106 @ id @ X108 @ id )
          = ( X107 @ X108 ) )
     => ! [X108: term] :
          ( ( X106 @ id @ X108 @ id )
          = ( sK572 @ X106 @ X108 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f716,plain,
    ( ? [X109: term] :
      ! [X110: subst > term > term] :
      ? [X111: term,X112: subst] :
        ( ( sub @ X109 @ ( push @ X111 @ X112 ) )
       != ( X110 @ X112 @ X111 ) )
   => ! [X110: subst > term > term] :
      ? [X112: subst,X111: term] :
        ( ( X110 @ X112 @ X111 )
       != ( sub @ sK573 @ ( push @ X111 @ X112 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f717,plain,
    ! [X110: subst > term > term] :
      ( ? [X112: subst,X111: term] :
          ( ( X110 @ X112 @ X111 )
         != ( sub @ sK573 @ ( push @ X111 @ X112 ) ) )
     => ( ( sub @ sK573 @ ( push @ ( sK574 @ X110 ) @ ( sK575 @ X110 ) ) )
       != ( X110 @ ( sK575 @ X110 ) @ ( sK574 @ X110 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f718,plain,
    ! [X113: term] :
      ( ? [X114: subst > term > term] :
        ! [X115: term,X116: subst] :
          ( ( X114 @ X116 @ X115 )
          = ( sub @ X113 @ ( push @ X115 @ X116 ) ) )
     => ! [X116: subst,X115: term] :
          ( ( sub @ X113 @ ( push @ X115 @ X116 ) )
          = ( sK576 @ X113 @ X116 @ X115 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f719,plain,
    ( ? [X117: subst,X118: term] :
        ( ( comp @ sh @ ( push @ X118 @ X117 ) )
       != X117 )
   => ( ( comp @ sh @ ( push @ sK578 @ sK577 ) )
     != sK577 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f720,plain,
    ( ? [X125: term,X126: term,X127: term,X128: term] :
        ( ( X127 != X128 )
        & ( ( ap @ X126 @ X128 )
          = ( ap @ X125 @ X127 ) ) )
   => ( ( sK582 != sK581 )
      & ( ( ap @ sK579 @ sK581 )
        = ( ap @ sK580 @ sK582 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f721,plain,
    ( ? [X130: subst,X131: term] :
        ( ( sub @ one @ ( push @ X131 @ X130 ) )
       != X131 )
   => ( sK584
     != ( sub @ one @ ( push @ sK584 @ sK583 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f722,plain,
    ! [X134: term > $o,X135: subst,X136: term > $o,X137: term] :
      ( ? [X138: term] :
          ( ( X136 @ ( sub @ X138 @ ( push @ X137 @ X135 ) ) )
         != ( X134 @ X138 ) )
     => ( ( X134 @ ( sK585 @ X137 @ X136 @ X135 @ X134 ) )
       != ( X136 @ ( sub @ ( sK585 @ X137 @ X136 @ X135 @ X134 ) @ ( push @ X137 @ X135 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f723,plain,
    ( ? [X139: term > $o,X140: subst,X141: term > $o,X142: term] :
        ( ( $true
         != ( X139 @ one ) )
        & ( ( X141 @ X142 )
          = $true )
        & ! [X143: term] :
            ( ( X141 @ ( sub @ X143 @ ( push @ X142 @ X140 ) ) )
            = ( X139 @ X143 ) ) )
   => ( ( $true
       != ( sK586 @ one ) )
      & ( $true
        = ( sK588 @ sK589 ) )
      & ! [X143: term] :
          ( ( sK588 @ ( sub @ X143 @ ( push @ sK589 @ sK587 ) ) )
          = ( sK586 @ X143 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f724,plain,
    ( ? [X148: term,X149: term,X150: term,X151: term] :
        ( ( X150 != X151 )
        & ( ( ap @ X150 @ X148 )
          = ( ap @ X151 @ X149 ) ) )
   => ( ( sK592 != sK593 )
      & ( ( ap @ sK592 @ sK590 )
        = ( ap @ sK593 @ sK591 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f725,plain,
    ( ? [X152: term] :
        ( ( sub @ X152 @ id )
       != X152 )
   => ( ( sub @ sK594 @ id )
     != sK594 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f726,plain,
    ( ? [X159: term > $o,X160: subst,X161: term,X162: term,X163: term > $o] :
        ( ( $true
          = ( X159 @ X162 ) )
        & ( ( X163 @ ( sub @ X162 @ ( push @ X161 @ X160 ) ) )
         != $true ) )
   => ( ( $true
        = ( sK595 @ sK598 ) )
      & ( $true
       != ( sK599 @ ( sub @ sK598 @ ( push @ sK597 @ sK596 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f727,plain,
    ( ? [X164: term] :
        ( ( sub @ X164 @ id )
       != X164 )
   => ( sK600
     != ( sub @ sK600 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f728,plain,
    ! [X166: subst > term > term] :
      ( ? [X170: term,X171: subst,X172: subst] :
          ( ( sub @ ( X166 @ X171 @ X170 ) @ X172 )
         != ( X166 @ ( comp @ X171 @ X172 ) @ ( sub @ X170 @ X172 ) ) )
     => ( ( X166 @ ( comp @ ( sK602 @ X166 ) @ ( sK603 @ X166 ) ) @ ( sub @ ( sK601 @ X166 ) @ ( sK603 @ X166 ) ) )
       != ( sub @ ( X166 @ ( sK602 @ X166 ) @ ( sK601 @ X166 ) ) @ ( sK603 @ X166 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f729,plain,
    ! [X169: subst > term > term] :
      ( ? [X173: subst,X174: term,X175: subst] :
          ( ( sub @ ( X169 @ X173 @ X174 ) @ X175 )
         != ( X169 @ ( comp @ X173 @ X175 ) @ ( sub @ X174 @ X175 ) ) )
     => ( ( X169 @ ( comp @ ( sK604 @ X169 ) @ ( sK606 @ X169 ) ) @ ( sub @ ( sK605 @ X169 ) @ ( sK606 @ X169 ) ) )
       != ( sub @ ( X169 @ ( sK604 @ X169 ) @ ( sK605 @ X169 ) ) @ ( sK606 @ X169 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f730,plain,
    ( ? [X176: subst > term > term,X177: subst,X178: term,X179: subst > term > term] :
        ( ! [X180: term,X181: subst,X182: subst] :
            ( ( sub @ ( X176 @ X181 @ X180 ) @ X182 )
            = ( X176 @ ( comp @ X181 @ X182 ) @ ( sub @ X180 @ X182 ) ) )
        & ! [X183: subst,X184: term,X185: subst] :
            ( ( sub @ ( X179 @ X183 @ X184 ) @ X185 )
            = ( X179 @ ( comp @ X183 @ X185 ) @ ( sub @ X184 @ X185 ) ) )
        & ( ( X176 @ X177 @ X178 )
         != ( X179 @ X177 @ X178 ) )
        & ( ( lam @ ( X176 @ sh @ one ) )
          = ( lam @ ( X179 @ sh @ one ) ) ) )
   => ( ! [X182: subst,X181: subst,X180: term] :
          ( ( sK607 @ ( comp @ X181 @ X182 ) @ ( sub @ X180 @ X182 ) )
          = ( sub @ ( sK607 @ X181 @ X180 ) @ X182 ) )
      & ! [X185: subst,X184: term,X183: subst] :
          ( ( sK610 @ ( comp @ X183 @ X185 ) @ ( sub @ X184 @ X185 ) )
          = ( sub @ ( sK610 @ X183 @ X184 ) @ X185 ) )
      & ( ( sK607 @ sK608 @ sK609 )
       != ( sK610 @ sK608 @ sK609 ) )
      & ( ( lam @ ( sK610 @ sh @ one ) )
        = ( lam @ ( sK607 @ sh @ one ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f731,plain,
    ( ? [X186: subst > term > subst > $o] :
      ! [X187: term > $o] :
      ? [X188: term] :
        ( ( X187 @ X188 )
       != ( X186 @ id @ X188 @ id ) )
   => ! [X187: term > $o] :
      ? [X188: term] :
        ( ( X187 @ X188 )
       != ( sK611 @ id @ X188 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f732,plain,
    ! [X187: term > $o] :
      ( ? [X188: term] :
          ( ( X187 @ X188 )
         != ( sK611 @ id @ X188 @ id ) )
     => ( ( X187 @ ( sK612 @ X187 ) )
       != ( sK611 @ id @ ( sK612 @ X187 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f733,plain,
    ! [X189: subst > term > subst > $o] :
      ( ? [X190: term > $o] :
        ! [X191: term] :
          ( ( X189 @ id @ X191 @ id )
          = ( X190 @ X191 ) )
     => ! [X191: term] :
          ( ( X189 @ id @ X191 @ id )
          = ( sK613 @ X189 @ X191 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f734,plain,
    ( ? [X192: subst > term > subst > $o,X193: term] :
        ( ( $true
         != ( sP27 @ X192 ) )
        & ( $true
         != ( sP26 @ X192 ) )
        & ( $true
         != ( X192 @ id @ X193 @ id ) ) )
   => ( ( $true
       != ( sP27 @ sK614 ) )
      & ( $true
       != ( sP26 @ sK614 ) )
      & ( $true
       != ( sK614 @ id @ sK615 @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f735,plain,
    ! [X196: subst] :
      ( ? [X197: d_subst] :
          ( ( d2subst @ X197 )
          = X196 )
     => ( ( d2subst @ ( sK616 @ X196 ) )
        = X196 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f736,plain,
    ( ? [X198: subst,X199: term > $o,X200: term > $o,X201: term] :
        ( ! [X202: term] :
            ( ( X200 @ ( sub @ X202 @ ( push @ X201 @ X198 ) ) )
            = ( X199 @ X202 ) )
        & ( $true
         != ( X199 @ one ) )
        & ( $true
          = ( X200 @ X201 ) ) )
   => ( ! [X202: term] :
          ( ( sK618 @ X202 )
          = ( sK619 @ ( sub @ X202 @ ( push @ sK620 @ sK617 ) ) ) )
      & ( $true
       != ( sK618 @ one ) )
      & ( $true
        = ( sK619 @ sK620 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f737,plain,
    ! [X205: subst,X206: term > $o,X207: term > $o,X208: term] :
      ( ? [X209: term] :
          ( ( X207 @ ( sub @ X209 @ ( push @ X208 @ X205 ) ) )
         != ( X206 @ X209 ) )
     => ( ( X206 @ ( sK621 @ X208 @ X207 @ X206 @ X205 ) )
       != ( X207 @ ( sub @ ( sK621 @ X208 @ X207 @ X206 @ X205 ) @ ( push @ X208 @ X205 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f738,plain,
    ( ? [X210: subst,X211: term] :
        ( ( sub @ one @ ( push @ X211 @ X210 ) )
       != X211 )
   => ( ( sub @ one @ ( push @ sK623 @ sK622 ) )
     != sK623 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f739,plain,
    ! [X212: term,X213: subst,X214: term > $o] :
      ( ? [X215: term > $o] :
        ! [X216: term] :
          ( ( X215 @ X216 )
          = ( X214 @ ( sub @ X216 @ ( push @ X212 @ X213 ) ) ) )
     => ! [X216: term] :
          ( ( sK624 @ X214 @ X213 @ X212 @ X216 )
          = ( X214 @ ( sub @ X216 @ ( push @ X212 @ X213 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f740,plain,
    ( ? [X217: term,X218: subst,X219: term > $o] :
      ! [X220: term > $o] :
      ? [X221: term] :
        ( ( X220 @ X221 )
       != ( X219 @ ( sub @ X221 @ ( push @ X217 @ X218 ) ) ) )
   => ! [X220: term > $o] :
      ? [X221: term] :
        ( ( sK627 @ ( sub @ X221 @ ( push @ sK625 @ sK626 ) ) )
       != ( X220 @ X221 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f741,plain,
    ! [X220: term > $o] :
      ( ? [X221: term] :
          ( ( sK627 @ ( sub @ X221 @ ( push @ sK625 @ sK626 ) ) )
         != ( X220 @ X221 ) )
     => ( ( sK627 @ ( sub @ ( sK628 @ X220 ) @ ( push @ sK625 @ sK626 ) ) )
       != ( X220 @ ( sK628 @ X220 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f742,plain,
    ( ? [X222: term] :
      ! [X223: subst > term > term] :
      ? [X224: subst,X225: term] :
        ( ( sub @ X222 @ ( push @ X225 @ X224 ) )
       != ( X223 @ X224 @ X225 ) )
   => ! [X223: subst > term > term] :
      ? [X225: term,X224: subst] :
        ( ( X223 @ X224 @ X225 )
       != ( sub @ sK629 @ ( push @ X225 @ X224 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f743,plain,
    ! [X223: subst > term > term] :
      ( ? [X225: term,X224: subst] :
          ( ( X223 @ X224 @ X225 )
         != ( sub @ sK629 @ ( push @ X225 @ X224 ) ) )
     => ( ( X223 @ ( sK630 @ X223 ) @ ( sK631 @ X223 ) )
       != ( sub @ sK629 @ ( push @ ( sK631 @ X223 ) @ ( sK630 @ X223 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f744,plain,
    ( ? [X226: term] :
        ( ( sub @ X226 @ id )
       != X226 )
   => ( ( sub @ sK632 @ id )
     != sK632 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f745,plain,
    ! [X227: term] :
      ( ? [X228: subst > term > term] :
        ! [X229: subst,X230: term] :
          ( ( sub @ X227 @ ( push @ X230 @ X229 ) )
          = ( X228 @ X229 @ X230 ) )
     => ! [X230: term,X229: subst] :
          ( ( sK633 @ X227 @ X229 @ X230 )
          = ( sub @ X227 @ ( push @ X230 @ X229 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f746,plain,
    ( ? [X232: subst > term > term,X233: term,X234: term] :
        ( ( ( lam @ ( X232 @ sh @ one ) )
          = ( ap @ ( sub @ X233 @ id ) @ X234 ) )
        & ! [X235: subst,X236: subst,X237: term] :
            ( ( sub @ ( X232 @ X235 @ X237 ) @ X236 )
            = ( X232 @ ( comp @ X235 @ X236 ) @ ( sub @ X237 @ X236 ) ) ) )
   => ( ( ( ap @ ( sub @ sK635 @ id ) @ sK636 )
        = ( lam @ ( sK634 @ sh @ one ) ) )
      & ! [X237: term,X236: subst,X235: subst] :
          ( ( sub @ ( sK634 @ X235 @ X237 ) @ X236 )
          = ( sK634 @ ( comp @ X235 @ X236 ) @ ( sub @ X237 @ X236 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f747,plain,
    ! [X238: subst > term > term] :
      ( ? [X241: subst,X242: subst,X243: term] :
          ( ( sub @ ( X238 @ X241 @ X243 ) @ X242 )
         != ( X238 @ ( comp @ X241 @ X242 ) @ ( sub @ X243 @ X242 ) ) )
     => ( ( sub @ ( X238 @ ( sK637 @ X238 ) @ ( sK639 @ X238 ) ) @ ( sK638 @ X238 ) )
       != ( X238 @ ( comp @ ( sK637 @ X238 ) @ ( sK638 @ X238 ) ) @ ( sub @ ( sK639 @ X238 ) @ ( sK638 @ X238 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f748,plain,
    ! [X244: term] :
      ( ? [X245: subst > term > term] :
        ! [X246: term,X247: subst] :
          ( ( sub @ X244 @ ( push @ X246 @ X247 ) )
          = ( X245 @ X247 @ X246 ) )
     => ! [X247: subst,X246: term] :
          ( ( sK640 @ X244 @ X247 @ X246 )
          = ( sub @ X244 @ ( push @ X246 @ X247 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f749,plain,
    ( ? [X248: term] :
      ! [X249: subst > term > term] :
      ? [X250: term,X251: subst] :
        ( ( sub @ X248 @ ( push @ X250 @ X251 ) )
       != ( X249 @ X251 @ X250 ) )
   => ! [X249: subst > term > term] :
      ? [X251: subst,X250: term] :
        ( ( sub @ sK641 @ ( push @ X250 @ X251 ) )
       != ( X249 @ X251 @ X250 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f750,plain,
    ! [X249: subst > term > term] :
      ( ? [X251: subst,X250: term] :
          ( ( sub @ sK641 @ ( push @ X250 @ X251 ) )
         != ( X249 @ X251 @ X250 ) )
     => ( ( X249 @ ( sK643 @ X249 ) @ ( sK642 @ X249 ) )
       != ( sub @ sK641 @ ( push @ ( sK642 @ X249 ) @ ( sK643 @ X249 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f751,plain,
    ( ? [X252: term] :
        ( ( sub @ X252 @ id )
       != X252 )
   => ( sK644
     != ( sub @ sK644 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f752,plain,
    ( ? [X254: term] :
        ( ( sub @ X254 @ id )
       != X254 )
   => ( ( sub @ sK645 @ id )
     != sK645 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f753,plain,
    ( ? [X255: subst > term > subst > $o] :
      ! [X256: term > $o] :
      ? [X257: term] :
        ( ( X255 @ id @ X257 @ id )
       != ( X256 @ X257 ) )
   => ! [X256: term > $o] :
      ? [X257: term] :
        ( ( sK646 @ id @ X257 @ id )
       != ( X256 @ X257 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f754,plain,
    ! [X256: term > $o] :
      ( ? [X257: term] :
          ( ( sK646 @ id @ X257 @ id )
         != ( X256 @ X257 ) )
     => ( ( sK646 @ id @ ( sK647 @ X256 ) @ id )
       != ( X256 @ ( sK647 @ X256 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f755,plain,
    ! [X259: subst > term > subst > $o] :
      ( ? [X260: term > $o] :
        ! [X261: term] :
          ( ( X260 @ X261 )
          = ( X259 @ id @ X261 @ id ) )
     => ! [X261: term] :
          ( ( sK648 @ X259 @ X261 )
          = ( X259 @ id @ X261 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f756,plain,
    ( ? [X263: term] :
        ( ( sub @ X263 @ id )
       != X263 )
   => ( sK649
     != ( sub @ sK649 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f680,plain,
    ( ( ( axscons = $true )
      | ? [X86: subst] :
          ( ( push @ ( sub @ one @ X86 ) @ ( comp @ sh @ X86 ) )
         != X86 ) )
    & ( ! [X86: subst] :
          ( ( push @ ( sub @ one @ X86 ) @ ( comp @ sh @ X86 ) )
          = X86 )
      | ( axscons != $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( $true = sP109 )
      | ( $true = sP111 )
      | ( $true = sP110 )
      | ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 )
      | ? [X174: subst > term > subst > $o] :
        ! [X175: term > $o] :
        ? [X176: term] :
          ( ( X174 @ id @ X176 @ id )
         != ( X175 @ X176 ) )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP109 )
        & ( $true != sP111 )
        & ( $true != sP110 )
        & ! [X184: term] :
            ( ( sub @ X184 @ id )
            = X184 )
        & ! [X174: subst > term > subst > $o] :
          ? [X175: term > $o] :
          ! [X176: term] :
            ( ( X174 @ id @ X176 @ id )
            = ( X175 @ X176 ) ) ) )
    & ( axvarshift = $true )
    & ( ( $true = sP103 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP103 ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( $true = sP100 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP100 ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X236: term,X237: subst] :
            ( ( sub @ one @ ( push @ X236 @ X237 ) )
            = X236 )
        & ! [X238: term,X239: subst] :
            ( ( comp @ sh @ ( push @ X238 @ X239 ) )
            = X239 )
        & ( $true != sP97 )
        & ( $true != sP98 )
        & ! [X240: subst] :
            ( ( comp @ X240 @ id )
            = X240 ) ) )
    & ( ? [X236: term,X237: subst] :
          ( ( sub @ one @ ( push @ X236 @ X237 ) )
         != X236 )
      | ? [X238: term,X239: subst] :
          ( ( comp @ sh @ ( push @ X238 @ X239 ) )
         != X239 )
      | ( $true = sP97 )
      | ( $true = sP98 )
      | ? [X240: subst] :
          ( ( comp @ X240 @ id )
         != X240 )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslamnotvar = $true )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X451: subst,X452: term] :
            ( ( sub @ one @ ( push @ X452 @ X451 ) )
            = X452 )
        & ? [X455: term > $o,X456: subst,X457: term,X458: term > $o,X459: term] :
            ( ( $true
              = ( X455 @ X457 ) )
            & ( $true
             != ( X458 @ ( sub @ X457 @ ( push @ X459 @ X456 ) ) ) ) )
        & ! [X453: term,X454: subst] :
            ( ( comp @ sh @ ( push @ X453 @ X454 ) )
            = X454 ) ) )
    & ( ? [X451: subst,X452: term] :
          ( ( sub @ one @ ( push @ X452 @ X451 ) )
         != X452 )
      | ! [X455: term > $o,X456: subst,X457: term,X458: term > $o,X459: term] :
          ( ( $true
           != ( X455 @ X457 ) )
          | ( $true
            = ( X458 @ ( sub @ X457 @ ( push @ X459 @ X456 ) ) ) ) )
      | ? [X453: term,X454: subst] :
          ( ( comp @ sh @ ( push @ X453 @ X454 ) )
         != X454 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( $true = sP92 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP92 ) )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( shinj = $true )
      | ? [X50: term,X51: term] :
          ( ( ( sub @ X51 @ sh )
            = ( sub @ X50 @ sh ) )
          & ( X50 != X51 ) ) )
    & ( ! [X50: term,X51: term] :
          ( ( ( sub @ X51 @ sh )
           != ( sub @ X50 @ sh ) )
          | ( X50 = X51 ) )
      | ( shinj != $true ) )
    & ( hoasinduction_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X526: term] :
        ! [X527: subst > term > term] :
          ( ( X527 @ sh @ one )
         != ( sub @ X526 @ ( push @ one @ sh ) ) ) )
    & ( ! [X526: term] :
        ? [X527: subst > term > term] :
          ( ( X527 @ sh @ one )
          = ( sub @ X526 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( axidr = $true )
      | ? [X529: subst] :
          ( ( comp @ X529 @ id )
         != X529 ) )
    & ( ! [X529: subst] :
          ( ( comp @ X529 @ id )
          = X529 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( sP87 != $true ) )
    & ( ( sP87 = $true )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ulamvarsh = $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X359: term] :
            ( ( sub @ X359 @ id )
            = X359 )
        & ( $true != sP85 ) ) )
    & ( ( $true = sP84 )
      | ? [X359: term] :
          ( ( sub @ X359 @ id )
         != X359 )
      | ( $true = sP85 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X158: term] :
        ? [X159: subst > term > term] :
          ( ( X159 @ sh @ one )
          = ( sub @ X158 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X158: term] :
        ! [X159: subst > term > term] :
          ( ( X159 @ sh @ one )
         != ( sub @ X158 @ ( push @ one @ sh ) ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP81 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP81 ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X480: term] :
            ( ( sub @ X480 @ id )
            = X480 )
        & ? [X481: term] :
            ( ( sub @ X481 @ id )
           != X481 ) ) )
    & ( ? [X480: term] :
          ( ( sub @ X480 @ id )
         != X480 )
      | ! [X481: term] :
          ( ( sub @ X481 @ id )
          = X481 )
      | ( termmset_lthm != $true ) )
    & ( termmset_gthm = $true )
    & ( ! [X160: term,X161: term,X162: term,X163: term] :
          ( ( X160 = X161 )
          | ( ( ap @ ( sub @ X163 @ id ) @ X161 )
           != ( ap @ ( sub @ X162 @ id ) @ X160 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X160: term,X161: term,X162: term,X163: term] :
          ( ( X160 != X161 )
          & ( ( ap @ ( sub @ X163 @ id ) @ X161 )
            = ( ap @ ( sub @ X162 @ id ) @ X160 ) ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP76 )
        & ( $true != sP75 )
        & ( $true != sP74 )
        & ( $true != sP77 ) ) )
    & ( ( $true = sP76 )
      | ( $true = sP75 )
      | ( $true = sP74 )
      | ( $true = sP77 )
      | ( hoasinduction_lthm != $true ) )
    & ( lamnotap != $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( $true = sP61 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP61 ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X446: subst,X447: term,X448: term > $o] :
        ? [X449: term > $o] :
        ! [X450: term] :
          ( ( X449 @ X450 )
          = ( X448 @ ( sub @ X450 @ ( push @ X447 @ X446 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X446: subst,X447: term,X448: term > $o] :
        ! [X449: term > $o] :
        ? [X450: term] :
          ( ( X449 @ X450 )
         != ( X448 @ ( sub @ X450 @ ( push @ X447 @ X446 ) ) ) ) )
    & ( ( axidl = $true )
      | ? [X528: subst] :
          ( ( comp @ id @ X528 )
         != X528 ) )
    & ( ! [X528: subst] :
          ( ( comp @ id @ X528 )
          = X528 )
      | ( axidl != $true ) )
    & ( ( $true = sP60 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP60 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP58 ) )
    & ( ( $true = sP58 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( ! [X82: subst] :
            ( ( comp @ id @ X82 )
            = X82 )
        & ! [X83: subst] :
            ( ( comp @ X83 @ id )
            = X83 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ? [X82: subst] :
          ( ( comp @ id @ X82 )
         != X82 )
      | ? [X83: subst] :
          ( ( comp @ X83 @ id )
         != X83 ) )
    & ( axapp = $true )
    & ! [X482: d_subst,X483: d_subst] :
        ( ( ( d2subst @ X482 )
         != ( d2subst @ X483 ) )
        | ( X482 = X483 ) )
    & ! [X38: d_term] : ( d_one = X38 )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP55 )
        & ( $true != sP56 )
        & ! [X87: term] :
            ( ( sub @ X87 @ id )
            = X87 ) ) )
    & ( ( $true = sP55 )
      | ( $true = sP56 )
      | ? [X87: term] :
          ( ( sub @ X87 @ id )
         != X87 )
      | ( induction2_lthm != $true ) )
    & ! [X39: term] :
      ? [X40: d_term] :
        ( ( d2term @ X40 )
        = X39 )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( laminj = $true )
      | ? [X530: term,X531: term] :
          ( ( ( lam @ X531 )
            = ( lam @ X530 ) )
          & ( X530 != X531 ) ) )
    & ( ! [X530: term,X531: term] :
          ( ( ( lam @ X531 )
           != ( lam @ X530 ) )
          | ( X530 = X531 ) )
      | ( laminj != $true ) )
    & ( ( hoasapinj1 = $true )
      | ? [X522: term,X523: term,X524: term,X525: term] :
          ( ( ( ap @ ( sub @ X525 @ id ) @ X523 )
            = ( ap @ ( sub @ X522 @ id ) @ X524 ) )
          & ( X522 != X525 ) ) )
    & ( ! [X522: term,X523: term,X524: term,X525: term] :
          ( ( ( ap @ ( sub @ X525 @ id ) @ X523 )
           != ( ap @ ( sub @ X522 @ id ) @ X524 ) )
          | ( X522 = X525 ) )
      | ( hoasapinj1 != $true ) )
    & ! [X84: d_term,X85: d_term] :
        ( ( X84 = X85 )
        | ( ( d2term @ X85 )
         != ( d2term @ X84 ) ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X461: subst > term > subst > $o] :
        ! [X462: term > $o] :
        ? [X463: term] :
          ( ( X461 @ id @ X463 @ id )
         != ( X462 @ X463 ) ) )
    & ( ! [X461: subst > term > subst > $o] :
        ? [X462: term > $o] :
        ! [X463: term] :
          ( ( X461 @ id @ X463 @ id )
          = ( X462 @ X463 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X509: term] :
        ! [X510: subst > term > term] :
        ? [X511: term,X512: subst] :
          ( ( sub @ X509 @ ( push @ X511 @ X512 ) )
         != ( X510 @ X512 @ X511 ) ) )
    & ( ! [X509: term] :
        ? [X510: subst > term > term] :
        ! [X511: term,X512: subst] :
          ( ( sub @ X509 @ ( push @ X511 @ X512 ) )
          = ( X510 @ X512 @ X511 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( induction2lem = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( induction2lem != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( axshiftcons = $true )
      | ? [X45: subst,X46: term] :
          ( ( comp @ sh @ ( push @ X46 @ X45 ) )
         != X45 ) )
    & ( ! [X45: subst,X46: term] :
          ( ( comp @ sh @ ( push @ X46 @ X45 ) )
          = X45 )
      | ( axshiftcons != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( lamnotvar = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ! [X135: term,X136: term,X137: term,X138: term] :
          ( ( X137 = X138 )
          | ( ( ap @ X136 @ X138 )
           != ( ap @ X135 @ X137 ) ) )
      | ( apinj2 != $true ) )
    & ( ( apinj2 = $true )
      | ? [X135: term,X136: term,X137: term,X138: term] :
          ( ( X137 != X138 )
          & ( ( ap @ X136 @ X138 )
            = ( ap @ X135 @ X137 ) ) ) )
    & ( ( $true = sP47 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP47 ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( axclos = $true )
    & ! [X235: d_subst] : ( d_id = X235 )
    & ( ( axvarcons = $true )
      | ? [X532: subst,X533: term] :
          ( ( sub @ one @ ( push @ X533 @ X532 ) )
         != X533 ) )
    & ( ! [X532: subst,X533: term] :
          ( ( sub @ one @ ( push @ X533 @ X532 ) )
          = X533 )
      | ( axvarcons != $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( $true = sP42 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP42 ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X7: term > $o,X8: subst,X9: term > $o,X10: term] :
          ( ( $true
            = ( X7 @ one ) )
          | ( ( X9 @ X10 )
           != $true )
          | ? [X11: term] :
              ( ( X7 @ X11 )
             != ( X9 @ ( sub @ X11 @ ( push @ X10 @ X8 ) ) ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X7: term > $o,X8: subst,X9: term > $o,X10: term] :
          ( ( $true
           != ( X7 @ one ) )
          & ( ( X9 @ X10 )
            = $true )
          & ! [X11: term] :
              ( ( X7 @ X11 )
              = ( X9 @ ( sub @ X11 @ ( push @ X10 @ X8 ) ) ) ) ) )
    & ( ! [X126: term,X127: term,X128: term,X129: term] :
          ( ( X128 = X129 )
          | ( ( ap @ X128 @ X126 )
           != ( ap @ X129 @ X127 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X126: term,X127: term,X128: term,X129: term] :
          ( ( X128 != X129 )
          & ( ( ap @ X128 @ X126 )
            = ( ap @ X129 @ X127 ) ) ) )
    & ( ? [X139: term] :
          ( ( sub @ X139 @ id )
         != X139 )
      | ( $true = sP40 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X139: term] :
            ( ( sub @ X139 @ id )
            = X139 )
        & ( $true != sP40 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X255: term > $o,X256: subst,X257: term,X258: term,X259: term > $o] :
          ( ( $true
           != ( X255 @ X258 ) )
          | ( $true
            = ( X259 @ ( sub @ X258 @ ( push @ X257 @ X256 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X255: term > $o,X256: subst,X257: term,X258: term,X259: term > $o] :
          ( ( $true
            = ( X255 @ X258 ) )
          & ( $true
           != ( X259 @ ( sub @ X258 @ ( push @ X257 @ X256 ) ) ) ) ) )
    & ( ( $true = sP35 )
      | ? [X484: term] :
          ( ( sub @ X484 @ id )
         != X484 )
      | ( sP36 = $true )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP35 )
        & ! [X484: term] :
            ( ( sub @ X484 @ id )
            = X484 )
        & ( sP36 != $true ) ) )
    & ( ! [X12: subst > term > term,X13: subst,X14: term,X15: subst > term > term] :
          ( ? [X16: term,X17: subst,X18: subst] :
              ( ( sub @ ( X12 @ X17 @ X16 ) @ X18 )
             != ( X12 @ ( comp @ X17 @ X18 ) @ ( sub @ X16 @ X18 ) ) )
          | ? [X19: subst,X20: term,X21: subst] :
              ( ( sub @ ( X15 @ X19 @ X20 ) @ X21 )
             != ( X15 @ ( comp @ X19 @ X21 ) @ ( sub @ X20 @ X21 ) ) )
          | ( ( X12 @ X13 @ X14 )
            = ( X15 @ X13 @ X14 ) )
          | ( ( lam @ ( X12 @ sh @ one ) )
           != ( lam @ ( X15 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X12: subst > term > term,X13: subst,X14: term,X15: subst > term > term] :
          ( ! [X16: term,X17: subst,X18: subst] :
              ( ( sub @ ( X12 @ X17 @ X16 ) @ X18 )
              = ( X12 @ ( comp @ X17 @ X18 ) @ ( sub @ X16 @ X18 ) ) )
          & ! [X19: subst,X20: term,X21: subst] :
              ( ( sub @ ( X15 @ X19 @ X20 ) @ X21 )
              = ( X15 @ ( comp @ X19 @ X21 ) @ ( sub @ X20 @ X21 ) ) )
          & ( ( X12 @ X13 @ X14 )
           != ( X15 @ X13 @ X14 ) )
          & ( ( lam @ ( X12 @ sh @ one ) )
            = ( lam @ ( X15 @ sh @ one ) ) ) ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X47: subst > term > subst > $o] :
        ! [X48: term > $o] :
        ? [X49: term] :
          ( ( X48 @ X49 )
         != ( X47 @ id @ X49 @ id ) ) )
    & ( ! [X47: subst > term > subst > $o] :
        ? [X48: term > $o] :
        ! [X49: term] :
          ( ( X48 @ X49 )
          = ( X47 @ id @ X49 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( sP30 = $true )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( sP30 != $true ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X270: subst > term > subst > $o,X271: term] :
          ( ( $true
           != ( sP27 @ X270 ) )
          & ( $true
           != ( sP26 @ X270 ) )
          & ( $true
           != ( X270 @ id @ X271 @ id ) ) ) )
    & ( ! [X270: subst > term > subst > $o,X271: term] :
          ( ( $true
            = ( sP27 @ X270 ) )
          | ( $true
            = ( sP26 @ X270 ) )
          | ( $true
            = ( X270 @ id @ X271 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ! [X520: subst] :
      ? [X521: d_subst] :
        ( ( d2subst @ X521 )
        = X520 )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X515: subst,X516: term > $o,X517: term > $o,X518: term] :
            ( ! [X519: term] :
                ( ( X517 @ ( sub @ X519 @ ( push @ X518 @ X515 ) ) )
                = ( X516 @ X519 ) )
            & ( $true
             != ( X516 @ one ) )
            & ( $true
              = ( X517 @ X518 ) ) )
        & ! [X513: subst,X514: term] :
            ( ( sub @ one @ ( push @ X514 @ X513 ) )
            = X514 ) ) )
    & ( ! [X515: subst,X516: term > $o,X517: term > $o,X518: term] :
          ( ? [X519: term] :
              ( ( X517 @ ( sub @ X519 @ ( push @ X518 @ X515 ) ) )
             != ( X516 @ X519 ) )
          | ( $true
            = ( X516 @ one ) )
          | ( $true
           != ( X517 @ X518 ) ) )
      | ? [X513: subst,X514: term] :
          ( ( sub @ one @ ( push @ X514 @ X513 ) )
         != X514 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X130: term,X131: subst,X132: term > $o] :
        ? [X133: term > $o] :
        ! [X134: term] :
          ( ( X133 @ X134 )
          = ( X132 @ ( sub @ X134 @ ( push @ X130 @ X131 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X130: term,X131: subst,X132: term > $o] :
        ! [X133: term > $o] :
        ? [X134: term] :
          ( ( X133 @ X134 )
         != ( X132 @ ( sub @ X134 @ ( push @ X130 @ X131 ) ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( ? [X305: term] :
        ! [X306: subst > term > term] :
        ? [X307: subst,X308: term] :
          ( ( sub @ X305 @ ( push @ X308 @ X307 ) )
         != ( X306 @ X307 @ X308 ) )
      | ? [X309: term] :
          ( ( sub @ X309 @ id )
         != X309 )
      | ( sP25 = $true )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X305: term] :
          ? [X306: subst > term > term] :
          ! [X307: subst,X308: term] :
            ( ( sub @ X305 @ ( push @ X308 @ X307 ) )
            = ( X306 @ X307 @ X308 ) )
        & ! [X309: term] :
            ( ( sub @ X309 @ id )
            = X309 )
        & ( sP25 != $true ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( axassoc = $true )
    & ( ( hoaslamnotap = $true )
      | ? [X534: subst > term > term,X535: term,X536: term] :
          ( ( ( ap @ ( sub @ X535 @ id ) @ X536 )
            = ( lam @ ( X534 @ sh @ one ) ) )
          & ! [X537: subst,X538: subst,X539: term] :
              ( ( X534 @ ( comp @ X537 @ X538 ) @ ( sub @ X539 @ X538 ) )
              = ( sub @ ( X534 @ X537 @ X539 ) @ X538 ) ) ) )
    & ( ! [X534: subst > term > term,X535: term,X536: term] :
          ( ( ( ap @ ( sub @ X535 @ id ) @ X536 )
           != ( lam @ ( X534 @ sh @ one ) ) )
          | ? [X537: subst,X538: subst,X539: term] :
              ( ( X534 @ ( comp @ X537 @ X538 ) @ ( sub @ X539 @ X538 ) )
             != ( sub @ ( X534 @ X537 @ X539 ) @ X538 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP23 ) )
    & ( ( $true = sP23 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ! [X103: term] :
        ? [X104: subst > term > term] :
        ! [X105: term,X106: subst] :
          ( ( X104 @ X106 @ X105 )
          = ( sub @ X103 @ ( push @ X105 @ X106 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X103: term] :
        ! [X104: subst > term > term] :
        ? [X105: term,X106: subst] :
          ( ( X104 @ X106 @ X105 )
         != ( sub @ X103 @ ( push @ X105 @ X106 ) ) ) )
    & ( hoasapnotvar = $true )
    & ( axmap = $true )
    & ( ( axvarid = $true )
      | ? [X460: term] :
          ( ( sub @ X460 @ id )
         != X460 ) )
    & ( ! [X460: term] :
          ( ( sub @ X460 @ id )
          = X460 )
      | ( axvarid != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP19 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP19 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( $true = sP15 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP11 )
      | ? [X330: term] :
          ( ( sub @ X330 @ id )
         != X330 )
      | ( sP12 = $true )
      | ( sP10 = $true )
      | ? [X320: subst > term > subst > $o] :
        ! [X321: term > $o] :
        ? [X322: term] :
          ( ( X320 @ id @ X322 @ id )
         != ( X321 @ X322 ) )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP11 )
        & ! [X330: term] :
            ( ( sub @ X330 @ id )
            = X330 )
        & ( sP12 != $true )
        & ( sP10 != $true )
        & ! [X320: subst > term > subst > $o] :
          ? [X321: term > $o] :
          ! [X322: term] :
            ( ( X320 @ id @ X322 @ id )
            = ( X321 @ X322 ) ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( induction2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X269: term] :
          ( ( sub @ X269 @ id )
          = X269 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ? [X269: term] :
          ( ( sub @ X269 @ id )
         != X269 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true ) ),
    inference(flattening,[status(thm)],[f679]) ).

thf(f679,plain,
    ( ( ( axscons = $true )
      | ? [X86: subst] :
          ( ( push @ ( sub @ one @ X86 ) @ ( comp @ sh @ X86 ) )
         != X86 ) )
    & ( ! [X86: subst] :
          ( ( push @ ( sub @ one @ X86 ) @ ( comp @ sh @ X86 ) )
          = X86 )
      | ( axscons != $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( $true = sP109 )
      | ( $true = sP111 )
      | ( $true = sP110 )
      | ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 )
      | ? [X174: subst > term > subst > $o] :
        ! [X175: term > $o] :
        ? [X176: term] :
          ( ( X174 @ id @ X176 @ id )
         != ( X175 @ X176 ) )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP109 )
        & ( $true != sP111 )
        & ( $true != sP110 )
        & ! [X184: term] :
            ( ( sub @ X184 @ id )
            = X184 )
        & ! [X174: subst > term > subst > $o] :
          ? [X175: term > $o] :
          ! [X176: term] :
            ( ( X174 @ id @ X176 @ id )
            = ( X175 @ X176 ) ) ) )
    & ( axvarshift = $true )
    & ( ( $true = sP103 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP103 ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( $true = sP100 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP100 ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X236: term,X237: subst] :
            ( ( sub @ one @ ( push @ X236 @ X237 ) )
            = X236 )
        & ! [X238: term,X239: subst] :
            ( ( comp @ sh @ ( push @ X238 @ X239 ) )
            = X239 )
        & ( $true != sP97 )
        & ( $true != sP98 )
        & ! [X240: subst] :
            ( ( comp @ X240 @ id )
            = X240 ) ) )
    & ( ? [X236: term,X237: subst] :
          ( ( sub @ one @ ( push @ X236 @ X237 ) )
         != X236 )
      | ? [X238: term,X239: subst] :
          ( ( comp @ sh @ ( push @ X238 @ X239 ) )
         != X239 )
      | ( $true = sP97 )
      | ( $true = sP98 )
      | ? [X240: subst] :
          ( ( comp @ X240 @ id )
         != X240 )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslamnotvar = $true )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X451: subst,X452: term] :
            ( ( sub @ one @ ( push @ X452 @ X451 ) )
            = X452 )
        & ? [X455: term > $o,X456: subst,X457: term,X458: term > $o,X459: term] :
            ( ( $true
              = ( X455 @ X457 ) )
            & ( $true
             != ( X458 @ ( sub @ X457 @ ( push @ X459 @ X456 ) ) ) ) )
        & ! [X453: term,X454: subst] :
            ( ( comp @ sh @ ( push @ X453 @ X454 ) )
            = X454 ) ) )
    & ( ? [X451: subst,X452: term] :
          ( ( sub @ one @ ( push @ X452 @ X451 ) )
         != X452 )
      | ! [X455: term > $o,X456: subst,X457: term,X458: term > $o,X459: term] :
          ( ( $true
           != ( X455 @ X457 ) )
          | ( $true
            = ( X458 @ ( sub @ X457 @ ( push @ X459 @ X456 ) ) ) ) )
      | ? [X453: term,X454: subst] :
          ( ( comp @ sh @ ( push @ X453 @ X454 ) )
         != X454 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( $true = sP92 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP92 ) )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( shinj = $true )
      | ? [X50: term,X51: term] :
          ( ( ( sub @ X51 @ sh )
            = ( sub @ X50 @ sh ) )
          & ( X50 != X51 ) ) )
    & ( ! [X50: term,X51: term] :
          ( ( ( sub @ X51 @ sh )
           != ( sub @ X50 @ sh ) )
          | ( X50 = X51 ) )
      | ( shinj != $true ) )
    & ( hoasinduction_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X526: term] :
        ! [X527: subst > term > term] :
          ( ( X527 @ sh @ one )
         != ( sub @ X526 @ ( push @ one @ sh ) ) ) )
    & ( ! [X526: term] :
        ? [X527: subst > term > term] :
          ( ( X527 @ sh @ one )
          = ( sub @ X526 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( axidr = $true )
      | ? [X529: subst] :
          ( ( comp @ X529 @ id )
         != X529 ) )
    & ( ! [X529: subst] :
          ( ( comp @ X529 @ id )
          = X529 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( sP87 != $true ) )
    & ( ( sP87 = $true )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ulamvarsh = $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X359: term] :
            ( ( sub @ X359 @ id )
            = X359 )
        & ( $true != sP85 ) ) )
    & ( ( $true = sP84 )
      | ? [X359: term] :
          ( ( sub @ X359 @ id )
         != X359 )
      | ( $true = sP85 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X158: term] :
        ? [X159: subst > term > term] :
          ( ( X159 @ sh @ one )
          = ( sub @ X158 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X158: term] :
        ! [X159: subst > term > term] :
          ( ( X159 @ sh @ one )
         != ( sub @ X158 @ ( push @ one @ sh ) ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP81 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP81 ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X480: term] :
            ( ( sub @ X480 @ id )
            = X480 )
        & ? [X481: term] :
            ( ( sub @ X481 @ id )
           != X481 ) ) )
    & ( ? [X480: term] :
          ( ( sub @ X480 @ id )
         != X480 )
      | ! [X481: term] :
          ( ( sub @ X481 @ id )
          = X481 )
      | ( termmset_lthm != $true ) )
    & ( termmset_gthm = $true )
    & ( ! [X160: term,X161: term,X162: term,X163: term] :
          ( ( X160 = X161 )
          | ( ( ap @ ( sub @ X163 @ id ) @ X161 )
           != ( ap @ ( sub @ X162 @ id ) @ X160 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X160: term,X161: term,X162: term,X163: term] :
          ( ( X160 != X161 )
          & ( ( ap @ ( sub @ X163 @ id ) @ X161 )
            = ( ap @ ( sub @ X162 @ id ) @ X160 ) ) ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP76 )
        & ( $true != sP75 )
        & ( $true != sP74 )
        & ( $true != sP77 ) ) )
    & ( ( $true = sP76 )
      | ( $true = sP75 )
      | ( $true = sP74 )
      | ( $true = sP77 )
      | ( hoasinduction_lthm != $true ) )
    & ( lamnotap != $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( $true = sP61 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP61 ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X446: subst,X447: term,X448: term > $o] :
        ? [X449: term > $o] :
        ! [X450: term] :
          ( ( X449 @ X450 )
          = ( X448 @ ( sub @ X450 @ ( push @ X447 @ X446 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X446: subst,X447: term,X448: term > $o] :
        ! [X449: term > $o] :
        ? [X450: term] :
          ( ( X449 @ X450 )
         != ( X448 @ ( sub @ X450 @ ( push @ X447 @ X446 ) ) ) ) )
    & ( ( axidl = $true )
      | ? [X528: subst] :
          ( ( comp @ id @ X528 )
         != X528 ) )
    & ( ! [X528: subst] :
          ( ( comp @ id @ X528 )
          = X528 )
      | ( axidl != $true ) )
    & ( ( $true = sP60 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP60 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP58 ) )
    & ( ( $true = sP58 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( ! [X82: subst] :
            ( ( comp @ id @ X82 )
            = X82 )
        & ! [X83: subst] :
            ( ( comp @ X83 @ id )
            = X83 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ? [X82: subst] :
          ( ( comp @ id @ X82 )
         != X82 )
      | ? [X83: subst] :
          ( ( comp @ X83 @ id )
         != X83 ) )
    & ( axapp = $true )
    & ! [X482: d_subst,X483: d_subst] :
        ( ( ( d2subst @ X482 )
         != ( d2subst @ X483 ) )
        | ( X482 = X483 ) )
    & ! [X38: d_term] : ( d_one = X38 )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP55 )
        & ( $true != sP56 )
        & ! [X87: term] :
            ( ( sub @ X87 @ id )
            = X87 ) ) )
    & ( ( $true = sP55 )
      | ( $true = sP56 )
      | ? [X87: term] :
          ( ( sub @ X87 @ id )
         != X87 )
      | ( induction2_lthm != $true ) )
    & ! [X39: term] :
      ? [X40: d_term] :
        ( ( d2term @ X40 )
        = X39 )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( laminj = $true )
      | ? [X530: term,X531: term] :
          ( ( ( lam @ X531 )
            = ( lam @ X530 ) )
          & ( X530 != X531 ) ) )
    & ( ! [X530: term,X531: term] :
          ( ( ( lam @ X531 )
           != ( lam @ X530 ) )
          | ( X530 = X531 ) )
      | ( laminj != $true ) )
    & ( ( hoasapinj1 = $true )
      | ? [X522: term,X523: term,X524: term,X525: term] :
          ( ( ( ap @ ( sub @ X525 @ id ) @ X523 )
            = ( ap @ ( sub @ X522 @ id ) @ X524 ) )
          & ( X522 != X525 ) ) )
    & ( ! [X522: term,X523: term,X524: term,X525: term] :
          ( ( ( ap @ ( sub @ X525 @ id ) @ X523 )
           != ( ap @ ( sub @ X522 @ id ) @ X524 ) )
          | ( X522 = X525 ) )
      | ( hoasapinj1 != $true ) )
    & ! [X84: d_term,X85: d_term] :
        ( ( X84 = X85 )
        | ( ( d2term @ X85 )
         != ( d2term @ X84 ) ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X461: subst > term > subst > $o] :
        ! [X462: term > $o] :
        ? [X463: term] :
          ( ( X461 @ id @ X463 @ id )
         != ( X462 @ X463 ) ) )
    & ( ! [X461: subst > term > subst > $o] :
        ? [X462: term > $o] :
        ! [X463: term] :
          ( ( X461 @ id @ X463 @ id )
          = ( X462 @ X463 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X509: term] :
        ! [X510: subst > term > term] :
        ? [X511: term,X512: subst] :
          ( ( sub @ X509 @ ( push @ X511 @ X512 ) )
         != ( X510 @ X512 @ X511 ) ) )
    & ( ! [X509: term] :
        ? [X510: subst > term > term] :
        ! [X511: term,X512: subst] :
          ( ( sub @ X509 @ ( push @ X511 @ X512 ) )
          = ( X510 @ X512 @ X511 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( induction2lem = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( induction2lem != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( axshiftcons = $true )
      | ? [X45: subst,X46: term] :
          ( ( comp @ sh @ ( push @ X46 @ X45 ) )
         != X45 ) )
    & ( ! [X45: subst,X46: term] :
          ( ( comp @ sh @ ( push @ X46 @ X45 ) )
          = X45 )
      | ( axshiftcons != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( lamnotvar = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ! [X135: term,X136: term,X137: term,X138: term] :
          ( ( X137 = X138 )
          | ( ( ap @ X136 @ X138 )
           != ( ap @ X135 @ X137 ) ) )
      | ( apinj2 != $true ) )
    & ( ( apinj2 = $true )
      | ? [X135: term,X136: term,X137: term,X138: term] :
          ( ( X137 != X138 )
          & ( ( ap @ X136 @ X138 )
            = ( ap @ X135 @ X137 ) ) ) )
    & ( ( $true = sP47 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP47 ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( axclos = $true )
    & ! [X235: d_subst] : ( d_id = X235 )
    & ( ( axvarcons = $true )
      | ? [X532: subst,X533: term] :
          ( ( sub @ one @ ( push @ X533 @ X532 ) )
         != X533 ) )
    & ( ! [X532: subst,X533: term] :
          ( ( sub @ one @ ( push @ X533 @ X532 ) )
          = X533 )
      | ( axvarcons != $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP45 ) )
    & ( ( $true = sP45 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( $true = sP42 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP42 ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X7: term > $o,X8: subst,X9: term > $o,X10: term] :
          ( ( $true
            = ( X7 @ one ) )
          | ( ( X9 @ X10 )
           != $true )
          | ? [X11: term] :
              ( ( X7 @ X11 )
             != ( X9 @ ( sub @ X11 @ ( push @ X10 @ X8 ) ) ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X7: term > $o,X8: subst,X9: term > $o,X10: term] :
          ( ( $true
           != ( X7 @ one ) )
          & ( ( X9 @ X10 )
            = $true )
          & ! [X11: term] :
              ( ( X7 @ X11 )
              = ( X9 @ ( sub @ X11 @ ( push @ X10 @ X8 ) ) ) ) ) )
    & ( ! [X126: term,X127: term,X128: term,X129: term] :
          ( ( X128 = X129 )
          | ( ( ap @ X128 @ X126 )
           != ( ap @ X129 @ X127 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X126: term,X127: term,X128: term,X129: term] :
          ( ( X128 != X129 )
          & ( ( ap @ X128 @ X126 )
            = ( ap @ X129 @ X127 ) ) ) )
    & ( ? [X139: term] :
          ( ( sub @ X139 @ id )
         != X139 )
      | ( $true = sP40 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X139: term] :
            ( ( sub @ X139 @ id )
            = X139 )
        & ( $true != sP40 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X255: term > $o,X256: subst,X257: term,X258: term,X259: term > $o] :
          ( ( $true
           != ( X255 @ X258 ) )
          | ( $true
            = ( X259 @ ( sub @ X258 @ ( push @ X257 @ X256 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X255: term > $o,X256: subst,X257: term,X258: term,X259: term > $o] :
          ( ( $true
            = ( X255 @ X258 ) )
          & ( $true
           != ( X259 @ ( sub @ X258 @ ( push @ X257 @ X256 ) ) ) ) ) )
    & ( ( $true = sP35 )
      | ? [X484: term] :
          ( ( sub @ X484 @ id )
         != X484 )
      | ( sP36 = $true )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP35 )
        & ! [X484: term] :
            ( ( sub @ X484 @ id )
            = X484 )
        & ( sP36 != $true ) ) )
    & ( ! [X12: subst > term > term,X13: subst,X14: term,X15: subst > term > term] :
          ( ? [X16: term,X17: subst,X18: subst] :
              ( ( sub @ ( X12 @ X17 @ X16 ) @ X18 )
             != ( X12 @ ( comp @ X17 @ X18 ) @ ( sub @ X16 @ X18 ) ) )
          | ? [X19: subst,X20: term,X21: subst] :
              ( ( sub @ ( X15 @ X19 @ X20 ) @ X21 )
             != ( X15 @ ( comp @ X19 @ X21 ) @ ( sub @ X20 @ X21 ) ) )
          | ( ( X12 @ X13 @ X14 )
            = ( X15 @ X13 @ X14 ) )
          | ( ( lam @ ( X12 @ sh @ one ) )
           != ( lam @ ( X15 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X12: subst > term > term,X13: subst,X14: term,X15: subst > term > term] :
          ( ! [X16: term,X17: subst,X18: subst] :
              ( ( sub @ ( X12 @ X17 @ X16 ) @ X18 )
              = ( X12 @ ( comp @ X17 @ X18 ) @ ( sub @ X16 @ X18 ) ) )
          & ! [X19: subst,X20: term,X21: subst] :
              ( ( sub @ ( X15 @ X19 @ X20 ) @ X21 )
              = ( X15 @ ( comp @ X19 @ X21 ) @ ( sub @ X20 @ X21 ) ) )
          & ( ( X12 @ X13 @ X14 )
           != ( X15 @ X13 @ X14 ) )
          & ( ( lam @ ( X12 @ sh @ one ) )
            = ( lam @ ( X15 @ sh @ one ) ) ) ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X47: subst > term > subst > $o] :
        ! [X48: term > $o] :
        ? [X49: term] :
          ( ( X48 @ X49 )
         != ( X47 @ id @ X49 @ id ) ) )
    & ( ! [X47: subst > term > subst > $o] :
        ? [X48: term > $o] :
        ! [X49: term] :
          ( ( X48 @ X49 )
          = ( X47 @ id @ X49 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( sP30 = $true )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( sP30 != $true ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X270: subst > term > subst > $o,X271: term] :
          ( ( $true
           != ( sP27 @ X270 ) )
          & ( $true
           != ( sP26 @ X270 ) )
          & ( $true
           != ( X270 @ id @ X271 @ id ) ) ) )
    & ( ! [X270: subst > term > subst > $o,X271: term] :
          ( ( $true
            = ( sP27 @ X270 ) )
          | ( $true
            = ( sP26 @ X270 ) )
          | ( $true
            = ( X270 @ id @ X271 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ! [X520: subst] :
      ? [X521: d_subst] :
        ( ( d2subst @ X521 )
        = X520 )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X515: subst,X516: term > $o,X517: term > $o,X518: term] :
            ( ! [X519: term] :
                ( ( X517 @ ( sub @ X519 @ ( push @ X518 @ X515 ) ) )
                = ( X516 @ X519 ) )
            & ( $true
             != ( X516 @ one ) )
            & ( $true
              = ( X517 @ X518 ) ) )
        & ! [X513: subst,X514: term] :
            ( ( sub @ one @ ( push @ X514 @ X513 ) )
            = X514 ) ) )
    & ( ! [X515: subst,X516: term > $o,X517: term > $o,X518: term] :
          ( ? [X519: term] :
              ( ( X517 @ ( sub @ X519 @ ( push @ X518 @ X515 ) ) )
             != ( X516 @ X519 ) )
          | ( $true
            = ( X516 @ one ) )
          | ( $true
           != ( X517 @ X518 ) ) )
      | ? [X513: subst,X514: term] :
          ( ( sub @ one @ ( push @ X514 @ X513 ) )
         != X514 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X130: term,X131: subst,X132: term > $o] :
        ? [X133: term > $o] :
        ! [X134: term] :
          ( ( X133 @ X134 )
          = ( X132 @ ( sub @ X134 @ ( push @ X130 @ X131 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X130: term,X131: subst,X132: term > $o] :
        ! [X133: term > $o] :
        ? [X134: term] :
          ( ( X133 @ X134 )
         != ( X132 @ ( sub @ X134 @ ( push @ X130 @ X131 ) ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( ? [X305: term] :
        ! [X306: subst > term > term] :
        ? [X307: subst,X308: term] :
          ( ( sub @ X305 @ ( push @ X308 @ X307 ) )
         != ( X306 @ X307 @ X308 ) )
      | ? [X309: term] :
          ( ( sub @ X309 @ id )
         != X309 )
      | ( sP25 = $true )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X305: term] :
          ? [X306: subst > term > term] :
          ! [X307: subst,X308: term] :
            ( ( sub @ X305 @ ( push @ X308 @ X307 ) )
            = ( X306 @ X307 @ X308 ) )
        & ! [X309: term] :
            ( ( sub @ X309 @ id )
            = X309 )
        & ( sP25 != $true ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( axassoc = $true )
    & ( ( hoaslamnotap = $true )
      | ? [X534: subst > term > term,X535: term,X536: term] :
          ( ( ( ap @ ( sub @ X535 @ id ) @ X536 )
            = ( lam @ ( X534 @ sh @ one ) ) )
          & ! [X537: subst,X538: subst,X539: term] :
              ( ( X534 @ ( comp @ X537 @ X538 ) @ ( sub @ X539 @ X538 ) )
              = ( sub @ ( X534 @ X537 @ X539 ) @ X538 ) ) ) )
    & ( ! [X534: subst > term > term,X535: term,X536: term] :
          ( ( ( ap @ ( sub @ X535 @ id ) @ X536 )
           != ( lam @ ( X534 @ sh @ one ) ) )
          | ? [X537: subst,X538: subst,X539: term] :
              ( ( X534 @ ( comp @ X537 @ X538 ) @ ( sub @ X539 @ X538 ) )
             != ( sub @ ( X534 @ X537 @ X539 ) @ X538 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP23 ) )
    & ( ( $true = sP23 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP21 ) )
    & ( ( $true = sP21 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ! [X103: term] :
        ? [X104: subst > term > term] :
        ! [X105: term,X106: subst] :
          ( ( X104 @ X106 @ X105 )
          = ( sub @ X103 @ ( push @ X105 @ X106 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X103: term] :
        ! [X104: subst > term > term] :
        ? [X105: term,X106: subst] :
          ( ( X104 @ X106 @ X105 )
         != ( sub @ X103 @ ( push @ X105 @ X106 ) ) ) )
    & ( hoasapnotvar = $true )
    & ( axmap = $true )
    & ( ( axvarid = $true )
      | ? [X460: term] :
          ( ( sub @ X460 @ id )
         != X460 ) )
    & ( ! [X460: term] :
          ( ( sub @ X460 @ id )
          = X460 )
      | ( axvarid != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP19 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP19 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( $true = sP15 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP15 ) )
    & ( ( $true = sP11 )
      | ? [X330: term] :
          ( ( sub @ X330 @ id )
         != X330 )
      | ( sP12 = $true )
      | ( sP10 = $true )
      | ? [X320: subst > term > subst > $o] :
        ! [X321: term > $o] :
        ? [X322: term] :
          ( ( X320 @ id @ X322 @ id )
         != ( X321 @ X322 ) )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP11 )
        & ! [X330: term] :
            ( ( sub @ X330 @ id )
            = X330 )
        & ( sP12 != $true )
        & ( sP10 != $true )
        & ! [X320: subst > term > subst > $o] :
          ? [X321: term > $o] :
          ! [X322: term] :
            ( ( X320 @ id @ X322 @ id )
            = ( X321 @ X322 ) ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( induction2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X269: term] :
          ( ( sub @ X269 @ id )
          = X269 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ? [X269: term] :
          ( ( sub @ X269 @ id )
         != X269 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true ) ),
    inference(nnf_transformation,[status(thm)],[f128]) ).

thf(f128,plain,
    ( ( ( axscons = $true )
    <=> ! [X86: subst] :
          ( ( push @ ( sub @ one @ X86 ) @ ( comp @ sh @ X86 ) )
          = X86 ) )
    & ( hoasapinj1_gthm = $true )
    & ( pushprop_lem3v2 = $true )
    & ( hoasapnotvar_lthm = $true )
    & ( ( ( $true = sP109 )
        | ( $true = sP111 )
        | ( $true = sP110 )
        | ? [X184: term] :
            ( ( sub @ X184 @ id )
           != X184 )
        | ? [X174: subst > term > subst > $o] :
          ! [X175: term > $o] :
          ? [X176: term] :
            ( ( X174 @ id @ X176 @ id )
           != ( X175 @ X176 ) ) )
    <=> ( hoasinduction_no_psi_cond_lthm = $true ) )
    & ( axvarshift = $true )
    & ( ( $true = sP103 )
    <=> ( hoasinduction_lem2 = $true ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( $true = sP100 )
    <=> ( hoasinduction_lem3a = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( induction2lem_lthm = $true )
    <=> ( ? [X236: term,X237: subst] :
            ( ( sub @ one @ ( push @ X236 @ X237 ) )
           != X236 )
        | ? [X238: term,X239: subst] :
            ( ( comp @ sh @ ( push @ X238 @ X239 ) )
           != X239 )
        | ( $true = sP97 )
        | ( $true = sP98 )
        | ? [X240: subst] :
            ( ( comp @ X240 @ id )
           != X240 ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( hoaslamnotvar = $true )
    & ( ( pushprop_lem1_lthm = $true )
    <=> ( ? [X451: subst,X452: term] :
            ( ( sub @ one @ ( push @ X452 @ X451 ) )
           != X452 )
        | ! [X455: term > $o,X456: subst,X457: term,X458: term > $o,X459: term] :
            ( ( $true
             != ( X455 @ X457 ) )
            | ( $true
              = ( X458 @ ( sub @ X457 @ ( push @ X459 @ X456 ) ) ) ) )
        | ? [X453: term,X454: subst] :
            ( ( comp @ sh @ ( push @ X453 @ X454 ) )
           != X454 ) ) )
    & ( ( $true = sP92 )
    <=> ( hoasinduction = $true ) )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( shinj = $true )
    <=> ! [X50: term,X51: term] :
          ( ( ( sub @ X51 @ sh )
           != ( sub @ X50 @ sh ) )
          | ( X50 = X51 ) ) )
    & ( hoasinduction_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X526: term] :
        ? [X527: subst > term > term] :
          ( ( X527 @ sh @ one )
          = ( sub @ X526 @ ( push @ one @ sh ) ) ) )
    & ( ( axidr = $true )
    <=> ! [X529: subst] :
          ( ( comp @ X529 @ id )
          = X529 ) )
    & ( ( hoasinduction_lem3aaa = $true )
    <=> ( sP87 = $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ulamvarsh = $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( ( $true = sP84 )
        | ? [X359: term] :
            ( ( sub @ X359 @ id )
           != X359 )
        | ( $true = sP85 ) ) )
    & ( ! [X158: term] :
        ? [X159: subst > term > term] :
          ( ( X159 @ sh @ one )
          = ( sub @ X158 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b = $true ) )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP81 )
    <=> ( hoasinduction_lem3v2 = $true ) )
    & ( ( termmset_lthm = $true )
    <=> ( ? [X480: term] :
            ( ( sub @ X480 @ id )
           != X480 )
        | ! [X481: term] :
            ( ( sub @ X481 @ id )
            = X481 ) ) )
    & ( termmset_gthm = $true )
    & ( ! [X160: term,X161: term,X162: term,X163: term] :
          ( ( X160 = X161 )
          | ( ( ap @ ( sub @ X163 @ id ) @ X161 )
           != ( ap @ ( sub @ X162 @ id ) @ X160 ) ) )
    <=> ( hoasapinj2 = $true ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( hoasinduction_lthm = $true )
    <=> ( ( $true = sP76 )
        | ( $true = sP75 )
        | ( $true = sP74 )
        | ( $true = sP77 ) ) )
    & ( lamnotap != $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ( $true = sP61 )
    <=> ( substmonoid_lthm = $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X446: subst,X447: term,X448: term > $o] :
        ? [X449: term > $o] :
        ! [X450: term] :
          ( ( X449 @ X450 )
          = ( X448 @ ( sub @ X450 @ ( push @ X447 @ X446 ) ) ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( ( axidl = $true )
    <=> ! [X528: subst] :
          ( ( comp @ id @ X528 )
          = X528 ) )
    & ( ( $true = sP60 )
    <=> ( hoasinduction_lem3aa = $true ) )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( $true = sP58 ) )
    & ( ( ! [X82: subst] :
            ( ( comp @ id @ X82 )
            = X82 )
        & ! [X83: subst] :
            ( ( comp @ X83 @ id )
            = X83 ) )
    <=> ( substmonoid = $true ) )
    & ( axapp = $true )
    & ! [X482: d_subst,X483: d_subst] :
        ( ( ( d2subst @ X482 )
         != ( d2subst @ X483 ) )
        | ( X482 = X483 ) )
    & ! [X38: d_term] : ( d_one = X38 )
    & ( ( induction2_lthm = $true )
    <=> ( ( $true = sP55 )
        | ( $true = sP56 )
        | ? [X87: term] :
            ( ( sub @ X87 @ id )
           != X87 ) ) )
    & ! [X39: term] :
      ? [X40: d_term] :
        ( ( d2term @ X40 )
        = X39 )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( laminj = $true )
    <=> ! [X530: term,X531: term] :
          ( ( ( lam @ X531 )
           != ( lam @ X530 ) )
          | ( X530 = X531 ) ) )
    & ( ( hoasapinj1 = $true )
    <=> ! [X522: term,X523: term,X524: term,X525: term] :
          ( ( ( ap @ ( sub @ X525 @ id ) @ X523 )
           != ( ap @ ( sub @ X522 @ id ) @ X524 ) )
          | ( X522 = X525 ) ) )
    & ! [X84: d_term,X85: d_term] :
        ( ( X84 = X85 )
        | ( ( d2term @ X85 )
         != ( d2term @ X84 ) ) )
    & ( ( hoasinduction_lem0_lthm = $true )
    <=> ! [X461: subst > term > subst > $o] :
        ? [X462: term > $o] :
        ! [X463: term] :
          ( ( X461 @ id @ X463 @ id )
          = ( X462 @ X463 ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X509: term] :
        ? [X510: subst > term > term] :
        ! [X511: term,X512: subst] :
          ( ( sub @ X509 @ ( push @ X511 @ X512 ) )
          = ( X510 @ X512 @ X511 ) ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( induction2lem = $true )
    <=> ( $true = sP50 ) )
    & ( pushprop_lem0_gthm = $true )
    & ( ( axshiftcons = $true )
    <=> ! [X45: subst,X46: term] :
          ( ( comp @ sh @ ( push @ X46 @ X45 ) )
          = X45 ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( lamnotvar = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ! [X135: term,X136: term,X137: term,X138: term] :
          ( ( X137 = X138 )
          | ( ( ap @ X136 @ X138 )
           != ( ap @ X135 @ X137 ) ) )
    <=> ( apinj2 = $true ) )
    & ( ( $true = sP47 )
    <=> ( hoasinduction_lem3aa_lthm = $true ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( pushprop_lthm_orig = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( axclos = $true )
    & ! [X235: d_subst] : ( d_id = X235 )
    & ( ( axvarcons = $true )
    <=> ! [X532: subst,X533: term] :
          ( ( sub @ one @ ( push @ X533 @ X532 ) )
          = X533 ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem2v2 = $true )
    <=> ( $true = sP45 ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( $true = sP42 )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( pushprop_gthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X7: term > $o,X8: subst,X9: term > $o,X10: term] :
          ( ( $true
            = ( X7 @ one ) )
          | ( ( X9 @ X10 )
           != $true )
          | ? [X11: term] :
              ( ( X7 @ X11 )
             != ( X9 @ ( sub @ X11 @ ( push @ X10 @ X8 ) ) ) ) )
    <=> ( pushprop_lem1v2 = $true ) )
    & ( ! [X126: term,X127: term,X128: term,X129: term] :
          ( ( X128 = X129 )
          | ( ( ap @ X128 @ X126 )
           != ( ap @ X129 @ X127 ) ) )
    <=> ( apinj1 = $true ) )
    & ( ( ? [X139: term] :
            ( ( sub @ X139 @ id )
           != X139 )
        | ( $true = sP40 ) )
    <=> ( hoasinduction_lem3v2_lthm = $true ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ! [X255: term > $o,X256: subst,X257: term,X258: term,X259: term > $o] :
          ( ( $true
           != ( X255 @ X258 ) )
          | ( $true
            = ( X259 @ ( sub @ X258 @ ( push @ X257 @ X256 ) ) ) ) )
    <=> ( pushprop_lem1 = $true ) )
    & ( ( ( $true = sP35 )
        | ? [X484: term] :
            ( ( sub @ X484 @ id )
           != X484 )
        | ( sP36 = $true ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( ! [X12: subst > term > term,X13: subst,X14: term,X15: subst > term > term] :
          ( ? [X16: term,X17: subst,X18: subst] :
              ( ( sub @ ( X12 @ X17 @ X16 ) @ X18 )
             != ( X12 @ ( comp @ X17 @ X18 ) @ ( sub @ X16 @ X18 ) ) )
          | ? [X19: subst,X20: term,X21: subst] :
              ( ( sub @ ( X15 @ X19 @ X20 ) @ X21 )
             != ( X15 @ ( comp @ X19 @ X21 ) @ ( sub @ X20 @ X21 ) ) )
          | ( ( X12 @ X13 @ X14 )
            = ( X15 @ X13 @ X14 ) )
          | ( ( lam @ ( X12 @ sh @ one ) )
           != ( lam @ ( X15 @ sh @ one ) ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( ( hoasinduction_lem0 = $true )
    <=> ! [X47: subst > term > subst > $o] :
        ? [X48: term > $o] :
        ! [X49: term] :
          ( ( X48 @ X49 )
          = ( X47 @ id @ X49 @ id ) ) )
    & ( ( sP30 = $true )
    <=> ( induction2 = $true ) )
    & ( substmonoid_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
    <=> ! [X270: subst > term > subst > $o,X271: term] :
          ( ( $true
            = ( sP27 @ X270 ) )
          | ( $true
            = ( sP26 @ X270 ) )
          | ( $true
            = ( X270 @ id @ X271 @ id ) ) ) )
    & ! [X520: subst] :
      ? [X521: d_subst] :
        ( ( d2subst @ X521 )
        = X520 )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X515: subst,X516: term > $o,X517: term > $o,X518: term] :
            ( ? [X519: term] :
                ( ( X517 @ ( sub @ X519 @ ( push @ X518 @ X515 ) ) )
               != ( X516 @ X519 ) )
            | ( $true
              = ( X516 @ one ) )
            | ( $true
             != ( X517 @ X518 ) ) )
        | ? [X513: subst,X514: term] :
            ( ( sub @ one @ ( push @ X514 @ X513 ) )
           != X514 ) ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X130: term,X131: subst,X132: term > $o] :
        ? [X133: term > $o] :
        ! [X134: term] :
          ( ( X133 @ X134 )
          = ( X132 @ ( sub @ X134 @ ( push @ X130 @ X131 ) ) ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( ( ? [X305: term] :
          ! [X306: subst > term > term] :
          ? [X307: subst,X308: term] :
            ( ( sub @ X305 @ ( push @ X308 @ X307 ) )
           != ( X306 @ X307 @ X308 ) )
        | ? [X309: term] :
            ( ( sub @ X309 @ id )
           != X309 )
        | ( sP25 = $true ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( hoasapnotvar_gthm = $true )
    & ( axassoc = $true )
    & ( ( hoaslamnotap = $true )
    <=> ! [X534: subst > term > term,X535: term,X536: term] :
          ( ( ( ap @ ( sub @ X535 @ id ) @ X536 )
           != ( lam @ ( X534 @ sh @ one ) ) )
          | ? [X537: subst,X538: subst,X539: term] :
              ( ( X534 @ ( comp @ X537 @ X538 ) @ ( sub @ X539 @ X538 ) )
             != ( sub @ ( X534 @ X537 @ X539 ) @ X538 ) ) ) )
    & ( pushprop_lem1_gthm = $true )
    & ( apnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( $true = sP23 ) )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ( $true = sP21 ) )
    & ( ! [X103: term] :
        ? [X104: subst > term > term] :
        ! [X105: term,X106: subst] :
          ( ( X104 @ X106 @ X105 )
          = ( sub @ X103 @ ( push @ X105 @ X106 ) ) )
    <=> ( hoasinduction_lem3v2_f_lthm = $true ) )
    & ( hoasapnotvar = $true )
    & ( axmap = $true )
    & ( ( axvarid = $true )
    <=> ! [X460: term] :
          ( ( sub @ X460 @ id )
          = X460 ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP19 )
    <=> ( hoasinduction_lem3 = $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( axabs = $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( $true = sP15 )
    <=> ( induction = $true ) )
    & ( ( ( $true = sP11 )
        | ? [X330: term] :
            ( ( sub @ X330 @ id )
           != X330 )
        | ( sP12 = $true )
        | ( sP10 = $true )
        | ? [X320: subst > term > subst > $o] :
          ! [X321: term > $o] :
          ? [X322: term] :
            ( ( X320 @ id @ X322 @ id )
           != ( X321 @ X322 ) ) )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( induction2_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( ! [X269: term] :
          ( ( sub @ X269 @ id )
          = X269 )
    <=> ( termmset = $true ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( var @ ( d2term @ d_one ) )
     != $true ) ),
    inference(definition_folding,[status(thm)],[f14,f127,f126,f125,f124,f123,f122,f121,f120,f119,f118,f117,f116,f115,f114,f113,f112,f111,f110,f109,f108,f107,f106,f105,f104,f103,f102,f101,f100,f99,f98,f97,f96,f95,f94,f93,f92,f91,f90,f89,f88,f87,f86,f85,f84,f83,f82,f81,f80,f79,f78,f77,f76,f75,f74,f73,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]) ).

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

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

thf(f20,plain,
    ! [X341: subst > term > subst > $o] :
      ( ( $true
        = ( sP4 @ X341 ) )
    <=> ? [X349: term] :
          ( ( ( X341 @ id @ X349 @ id )
           != $true )
          & ( $true
            = ( var @ ( sub @ X349 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f21,plain,
    ! [X341: subst > term > subst > $o] :
      ( ( $true
        = ( sP5 @ X341 ) )
    <=> ? [X355: subst,X356: subst,X357: term,X358: subst] :
          ( ( ( X341 @ X355 @ X357 @ ( comp @ X358 @ X356 ) )
           != $true )
          & ( ( X341 @ ( comp @ X355 @ X358 ) @ ( sub @ X357 @ X358 ) @ X356 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f22,plain,
    ! [X323: term > $o] :
      ( ( $true
        = ( sP6 @ X323 ) )
    <=> ! [X327: term,X328: term] :
          ( ( $true
           != ( X323 @ X327 ) )
          | ( $true
           != ( X323 @ X328 ) )
          | ( $true
            = ( X323 @ ( ap @ X328 @ X327 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f23,plain,
    ! [X323: term > $o] :
      ( ( ( sP7 @ X323 )
        = $true )
    <=> ! [X329: term] :
          ( ( $true
           != ( var @ X329 ) )
          | ( ( X323 @ X329 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f24,plain,
    ! [X323: term > $o] :
      ( ( $true
        = ( sP8 @ X323 ) )
    <=> ! [X325: term] :
          ( ? [X326: term] :
              ( ( $true
                = ( X323 @ X326 ) )
              & ( $true
               != ( X323 @ ( sub @ X325 @ ( push @ X326 @ id ) ) ) ) )
          | ( $true
            = ( X323 @ ( lam @ X325 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f25,plain,
    ! [X331: subst > term > subst > $o] :
      ( ( ( sP9 @ X331 )
        = $true )
    <=> ! [X335: subst > term > term] :
          ( ( ( X331 @ id @ ( lam @ ( X335 @ sh @ one ) ) @ id )
            = $true )
          | ? [X339: term] :
              ( ( ( X331 @ id @ X339 @ id )
                = $true )
              & ( $true
               != ( X331 @ id @ ( X335 @ id @ X339 ) @ id ) ) )
          | ? [X336: subst,X337: term,X338: subst] :
              ( ( sub @ ( X335 @ X338 @ X337 ) @ X336 )
             != ( X335 @ ( comp @ X338 @ X336 ) @ ( sub @ X337 @ X336 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f26,plain,
    ( ( sP10 = $true )
  <=> ! [X341: subst > term > subst > $o,X342: term] :
        ( ( $true
          = ( X341 @ id @ X342 @ id ) )
        | ? [X343: subst,X344: subst,X345: subst,X346: term] :
            ( ( $true
             != ( X341 @ ( comp @ X343 @ X344 ) @ ( sub @ X346 @ X344 ) @ X345 ) )
            & ( $true
              = ( X341 @ X343 @ X346 @ ( comp @ X344 @ X345 ) ) ) )
        | ( $true
          = ( sP5 @ X341 ) )
        | ( $true
          = ( sP4 @ X341 ) )
        | ( $true
          = ( sP2 @ X341 ) )
        | ( $true
          = ( sP3 @ X341 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f27,plain,
    ( ( $true = sP11 )
  <=> ? [X331: subst > term > subst > $o,X332: term,X333: term > $o] :
        ( ( ( X333 @ ( lam @ X332 ) )
         != $true )
        & ! [X340: term] :
            ( ( X333 @ X340 )
            = ( X331 @ id @ X340 @ id ) )
        & ! [X334: term] :
            ( ( $true
             != ( X333 @ X334 ) )
            | ( $true
              = ( X333 @ ( sub @ X332 @ ( push @ X334 @ id ) ) ) ) )
        & ( ( sP9 @ X331 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f28,plain,
    ( ( sP12 = $true )
  <=> ? [X323: term > $o,X324: term] :
        ( ( $true
          = ( sP6 @ X323 ) )
        & ( $true
          = ( sP8 @ X323 ) )
        & ( ( sP7 @ X323 )
          = $true )
        & ( $true
         != ( X323 @ X324 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f29,plain,
    ! [X121: term > $o] :
      ( ( ( sP13 @ X121 )
        = $true )
    <=> ? [X122: term,X123: term] :
          ( ( ( X121 @ X122 )
            = $true )
          & ( $true
           != ( X121 @ ( ap @ X123 @ X122 ) ) )
          & ( $true
            = ( X121 @ X123 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f30,plain,
    ! [X121: term > $o] :
      ( ( $true
        = ( sP14 @ X121 ) )
    <=> ? [X124: term] :
          ( ( $true
           != ( X121 @ ( lam @ X124 ) ) )
          & ( ( X121 @ X124 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f31,plain,
    ( ( $true = sP15 )
  <=> ! [X120: term,X121: term > $o] :
        ( ( $true
          = ( X121 @ X120 ) )
        | ? [X125: term] :
            ( ( ( var @ X125 )
              = $true )
            & ( ( X121 @ X125 )
             != $true ) )
        | ( ( sP13 @ X121 )
          = $true )
        | ( $true
          = ( sP14 @ X121 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f32,plain,
    ! [X430: subst > term > subst > $o] :
      ( ( ( sP16 @ X430 )
        = $true )
    <=> ? [X441: subst > term > term] :
          ( ( $true
           != ( X430 @ id @ ( lam @ ( X441 @ sh @ one ) ) @ id ) )
          & ! [X442: subst,X443: subst,X444: term] :
              ( ( sub @ ( X441 @ X443 @ X444 ) @ X442 )
              = ( X441 @ ( comp @ X443 @ X442 ) @ ( sub @ X444 @ X442 ) ) )
          & ! [X445: term] :
              ( ( $true
                = ( X430 @ id @ ( X441 @ id @ X445 ) @ id ) )
              | ( $true
               != ( X430 @ id @ X445 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f33,plain,
    ! [X431: term,X430: subst > term > subst > $o] :
      ( ( $true
        = ( sP17 @ X430 @ X431 ) )
    <=> ? [X436: term] :
          ( ( ( X430 @ id @ ( sub @ X431 @ ( push @ X436 @ id ) ) @ id )
           != $true )
          & ( ( X430 @ id @ X436 @ id )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f34,plain,
    ! [X430: subst > term > subst > $o] :
      ( ( ( sP18 @ X430 )
        = $true )
    <=> ? [X437: term,X438: subst,X439: subst,X440: subst] :
          ( ( $true
           != ( X430 @ X440 @ X437 @ ( comp @ X439 @ X438 ) ) )
          & ( $true
            = ( X430 @ ( comp @ X440 @ X439 ) @ ( sub @ X437 @ X439 ) @ X438 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f35,plain,
    ( ( $true = sP19 )
  <=> ! [X430: subst > term > subst > $o,X431: term] :
        ( ? [X432: subst,X433: subst,X434: subst,X435: term] :
            ( ( $true
             != ( X430 @ ( comp @ X432 @ X434 ) @ ( sub @ X435 @ X434 ) @ X433 ) )
            & ( $true
              = ( X430 @ X432 @ X435 @ ( comp @ X434 @ X433 ) ) ) )
        | ( ( sP18 @ X430 )
          = $true )
        | ( $true
          = ( sP17 @ X430 @ X431 ) )
        | ( $true
          = ( X430 @ id @ ( lam @ X431 ) @ id ) )
        | ( ( sP16 @ X430 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f36,plain,
    ! [X164: subst > term > subst > $o] :
      ( ( ( sP20 @ X164 )
        = $true )
    <=> ? [X168: subst > term > term] :
          ( ! [X170: subst,X171: term,X172: subst] :
              ( ( sub @ ( X168 @ X172 @ X171 ) @ X170 )
              = ( X168 @ ( comp @ X172 @ X170 ) @ ( sub @ X171 @ X170 ) ) )
          & ! [X169: term] :
              ( ( ( X164 @ id @ X169 @ id )
               != $true )
              | ( ( X164 @ id @ ( X168 @ id @ X169 ) @ id )
                = $true ) )
          & ( $true
           != ( X164 @ id @ ( lam @ ( X168 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f37,plain,
    ( ( $true = sP21 )
  <=> ! [X164: subst > term > subst > $o,X165: term > $o,X166: term] :
        ( ? [X167: term] :
            ( ( $true
              = ( X165 @ X167 ) )
            & ( $true
             != ( X165 @ ( sub @ X166 @ ( push @ X167 @ id ) ) ) ) )
        | ? [X173: term] :
            ( ( X165 @ X173 )
           != ( X164 @ id @ X173 @ id ) )
        | ( $true
          = ( X165 @ ( lam @ X166 ) ) )
        | ( ( sP20 @ X164 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f38,plain,
    ( ( $true = sP22 )
  <=> ! [X265: term,X266: term,X267: term,X268: term] :
        ( ( X266 = X267 )
        | ( ( ap @ ( sub @ X267 @ id ) @ X265 )
         != ( ap @ ( sub @ X266 @ id ) @ X268 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f39,plain,
    ( ( $true = sP23 )
  <=> ( ? [X260: term] :
          ( ( sub @ X260 @ id )
         != X260 )
      | ? [X261: term,X262: term,X263: term,X264: term] :
          ( ( X261 != X264 )
          & ( ( ap @ X264 @ X262 )
            = ( ap @ X261 @ X263 ) ) )
      | ( $true = sP22 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f40,plain,
    ! [X310: subst > term > subst > $o] :
      ( ( $true
        = ( sP24 @ X310 ) )
    <=> ? [X314: subst > term > term] :
          ( ( ( X310 @ id @ ( lam @ ( X314 @ sh @ one ) ) @ id )
           != $true )
          & ! [X316: subst,X317: subst,X318: term] :
              ( ( X314 @ ( comp @ X317 @ X316 ) @ ( sub @ X318 @ X316 ) )
              = ( sub @ ( X314 @ X317 @ X318 ) @ X316 ) )
          & ! [X315: term] :
              ( ( $true
                = ( X310 @ id @ ( X314 @ id @ X315 ) @ id ) )
              | ( $true
               != ( X310 @ id @ X315 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f41,plain,
    ( ( sP25 = $true )
  <=> ! [X310: subst > term > subst > $o,X311: term,X312: term > $o] :
        ( ( ( X312 @ ( lam @ X311 ) )
          = $true )
        | ? [X313: term] :
            ( ( $true
              = ( X312 @ X313 ) )
            & ( $true
             != ( X312 @ ( sub @ X311 @ ( push @ X313 @ id ) ) ) ) )
        | ? [X319: term] :
            ( ( X312 @ X319 )
           != ( X310 @ id @ X319 @ id ) )
        | ( $true
          = ( sP24 @ X310 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f42,plain,
    ! [X270: subst > term > subst > $o] :
      ( ( $true
        = ( sP26 @ X270 ) )
    <=> ? [X272: subst > term > term] :
          ( ! [X273: term] :
              ( ( $true
                = ( X270 @ id @ ( X272 @ id @ X273 ) @ id ) )
              | ( $true
               != ( X270 @ id @ X273 @ id ) ) )
          & ! [X274: subst,X275: subst,X276: term] :
              ( ( X272 @ ( comp @ X274 @ X275 ) @ ( sub @ X276 @ X275 ) )
              = ( sub @ ( X272 @ X274 @ X276 ) @ X275 ) )
          & ( $true
           != ( X270 @ id @ ( lam @ ( X272 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f43,plain,
    ! [X270: subst > term > subst > $o] :
      ( ( $true
        = ( sP27 @ X270 ) )
    <=> ? [X277: term,X278: term] :
          ( ( ( X270 @ id @ ( ap @ ( sub @ X278 @ id ) @ X277 ) @ id )
           != $true )
          & ( $true
            = ( X270 @ id @ X278 @ id ) )
          & ( $true
            = ( X270 @ id @ X277 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f44,plain,
    ! [X1: term > $o] :
      ( ( $true
        = ( sP28 @ X1 ) )
    <=> ? [X4: term] :
          ( ! [X5: term] :
              ( ( $true
                = ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
              | ( $true
               != ( X1 @ X5 ) ) )
          & ( $true
           != ( X1 @ ( lam @ X4 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f45,plain,
    ! [X1: term > $o] :
      ( ( ( sP29 @ X1 )
        = $true )
    <=> ? [X2: term,X3: term] :
          ( ( $true
            = ( X1 @ X3 ) )
          & ( ( X1 @ X2 )
            = $true )
          & ( ( X1 @ ( ap @ X3 @ X2 ) )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f46,plain,
    ( ( sP30 = $true )
  <=> ! [X0: term,X1: term > $o] :
        ( ( $true
          = ( sP28 @ X1 ) )
        | ( ( X1 @ X0 )
          = $true )
        | ? [X6: term] :
            ( ( $true
             != ( X1 @ X6 ) )
            & ( ( var @ X6 )
              = $true ) )
        | ( ( sP29 @ X1 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f47,plain,
    ! [X485: subst > term > subst > $o] :
      ( ( $true
        = ( sP31 @ X485 ) )
    <=> ! [X488: subst > term > term] :
          ( ? [X492: term] :
              ( ( $true
                = ( X485 @ id @ X492 @ id ) )
              & ( $true
               != ( X485 @ id @ ( X488 @ id @ X492 ) @ id ) ) )
          | ( ( X485 @ id @ ( lam @ ( X488 @ sh @ one ) ) @ id )
            = $true )
          | ? [X489: subst,X490: subst,X491: term] :
              ( ( X488 @ ( comp @ X489 @ X490 ) @ ( sub @ X491 @ X490 ) )
             != ( sub @ ( X488 @ X489 @ X491 ) @ X490 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f48,plain,
    ! [X494: subst > term > subst > $o] :
      ( ( $true
        = ( sP32 @ X494 ) )
    <=> ? [X504: subst > term > term] :
          ( ! [X506: subst,X507: subst,X508: term] :
              ( ( X504 @ ( comp @ X507 @ X506 ) @ ( sub @ X508 @ X506 ) )
              = ( sub @ ( X504 @ X507 @ X508 ) @ X506 ) )
          & ( $true
           != ( X494 @ id @ ( lam @ ( X504 @ sh @ one ) ) @ id ) )
          & ! [X505: term] :
              ( ( $true
                = ( X494 @ id @ ( X504 @ id @ X505 ) @ id ) )
              | ( ( X494 @ id @ X505 @ id )
               != $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f49,plain,
    ! [X494: subst > term > subst > $o] :
      ( ( ( sP33 @ X494 )
        = $true )
    <=> ? [X495: term,X496: subst,X497: subst,X498: subst] :
          ( ( $true
           != ( X494 @ X497 @ X495 @ ( comp @ X496 @ X498 ) ) )
          & ( $true
            = ( X494 @ ( comp @ X497 @ X496 ) @ ( sub @ X495 @ X496 ) @ X498 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f50,plain,
    ! [X493: term,X494: subst > term > subst > $o] :
      ( ( $true
        = ( sP34 @ X494 @ X493 ) )
    <=> ? [X499: term] :
          ( ( $true
           != ( X494 @ id @ ( sub @ X493 @ ( push @ X499 @ id ) ) @ id ) )
          & ( $true
            = ( X494 @ id @ X499 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f51,plain,
    ( ( $true = sP35 )
  <=> ! [X493: term,X494: subst > term > subst > $o] :
        ( ( ( X494 @ id @ ( lam @ X493 ) @ id )
          = $true )
        | ? [X500: term,X501: subst,X502: subst,X503: subst] :
            ( ( $true
              = ( X494 @ X503 @ X500 @ ( comp @ X501 @ X502 ) ) )
            & ( $true
             != ( X494 @ ( comp @ X503 @ X501 ) @ ( sub @ X500 @ X501 ) @ X502 ) ) )
        | ( $true
          = ( sP34 @ X494 @ X493 ) )
        | ( ( sP33 @ X494 )
          = $true )
        | ( $true
          = ( sP32 @ X494 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f52,plain,
    ( ( sP36 = $true )
  <=> ? [X485: subst > term > subst > $o,X486: term] :
        ( ! [X487: term] :
            ( ( $true
              = ( X485 @ id @ ( sub @ X486 @ ( push @ X487 @ id ) ) @ id ) )
            | ( $true
             != ( X485 @ id @ X487 @ id ) ) )
        & ( $true
         != ( X485 @ id @ ( lam @ ( sub @ X486 @ ( push @ one @ sh ) ) ) @ id ) )
        & ( $true
          = ( sP31 @ X485 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f53,plain,
    ! [X140: subst > term > subst > $o] :
      ( ( $true
        = ( sP37 @ X140 ) )
    <=> ? [X152: subst > term > term] :
          ( ( ( X140 @ id @ ( lam @ ( X152 @ sh @ one ) ) @ id )
           != $true )
          & ! [X153: term,X154: subst,X155: subst] :
              ( ( sub @ ( X152 @ X154 @ X153 ) @ X155 )
              = ( X152 @ ( comp @ X154 @ X155 ) @ ( sub @ X153 @ X155 ) ) )
          & ! [X156: term] :
              ( ( $true
                = ( X140 @ id @ ( X152 @ id @ X156 ) @ id ) )
              | ( $true
               != ( X140 @ id @ X156 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f54,plain,
    ! [X140: subst > term > subst > $o] :
      ( ( $true
        = ( sP38 @ X140 ) )
    <=> ? [X148: subst,X149: subst,X150: term,X151: subst] :
          ( ( $true
            = ( X140 @ X151 @ X150 @ ( comp @ X149 @ X148 ) ) )
          & ( ( X140 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) @ X148 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f55,plain,
    ! [X141: term > $o,X142: term] :
      ( ( $true
        = ( sP39 @ X142 @ X141 ) )
    <=> ? [X157: term] :
          ( ( $true
            = ( X141 @ X157 ) )
          & ( $true
           != ( X141 @ ( sub @ X142 @ ( push @ X157 @ id ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f56,plain,
    ( ( $true = sP40 )
  <=> ! [X140: subst > term > subst > $o,X141: term > $o,X142: term] :
        ( ( $true
          = ( X141 @ ( lam @ X142 ) ) )
        | ( $true
          = ( sP37 @ X140 ) )
        | ? [X143: term] :
            ( ( X140 @ id @ X143 @ id )
           != ( X141 @ X143 ) )
        | ? [X144: subst,X145: term,X146: subst,X147: subst] :
            ( ( $true
              = ( X140 @ ( comp @ X147 @ X144 ) @ ( sub @ X145 @ X144 ) @ X146 ) )
            & ( $true
             != ( X140 @ X147 @ X145 @ ( comp @ X144 @ X146 ) ) ) )
        | ( $true
          = ( sP39 @ X142 @ X141 ) )
        | ( $true
          = ( sP38 @ X140 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f57,plain,
    ( ( $true = sP41 )
  <=> ! [X470: term,X471: subst > term > term,X472: subst,X473: subst > term > term] :
        ( ? [X477: subst,X478: subst,X479: term] :
            ( ( sub @ ( X473 @ X478 @ X479 ) @ X477 )
           != ( X473 @ ( comp @ X478 @ X477 ) @ ( sub @ X479 @ X477 ) ) )
        | ( ( X471 @ X472 @ X470 )
          = ( X473 @ X472 @ X470 ) )
        | ( ( lam @ ( X473 @ sh @ one ) )
         != ( lam @ ( X471 @ sh @ one ) ) )
        | ? [X474: term,X475: subst,X476: subst] :
            ( ( X471 @ ( comp @ X475 @ X476 ) @ ( sub @ X474 @ X476 ) )
           != ( sub @ ( X471 @ X475 @ X474 ) @ X476 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f58,plain,
    ( ( $true = sP42 )
  <=> ( ( $true = sP41 )
      | ? [X466: subst,X467: term] :
          ( ( comp @ sh @ ( push @ X467 @ X466 ) )
         != X466 )
      | ? [X468: term,X469: term] :
          ( ( X468 != X469 )
          & ( ( lam @ X468 )
            = ( lam @ X469 ) ) )
      | ? [X464: term,X465: subst] :
          ( ( sub @ one @ ( push @ X464 @ X465 ) )
         != X464 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f59,plain,
    ! [X213: subst > term > subst > $o] :
      ( ( $true
        = ( sP43 @ X213 ) )
    <=> ? [X225: term,X226: term] :
          ( ( $true
            = ( X213 @ id @ X225 @ id ) )
          & ( $true
           != ( X213 @ id @ ( ap @ ( sub @ X226 @ id ) @ X225 ) @ id ) )
          & ( $true
            = ( X213 @ id @ X226 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f60,plain,
    ! [X213: subst > term > subst > $o] :
      ( ( $true
        = ( sP44 @ X213 ) )
    <=> ? [X216: subst,X217: subst,X218: term,X219: subst] :
          ( ( $true
            = ( X213 @ ( comp @ X216 @ X219 ) @ ( sub @ X218 @ X219 ) @ X217 ) )
          & ( ( X213 @ X216 @ X218 @ ( comp @ X219 @ X217 ) )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f61,plain,
    ( ( $true = sP45 )
  <=> ! [X212: term,X213: subst > term > subst > $o,X214: term > $o,X215: term] :
        ( ? [X220: subst,X221: term,X222: subst,X223: subst] :
            ( ( $true
              = ( X213 @ X223 @ X221 @ ( comp @ X220 @ X222 ) ) )
            & ( $true
             != ( X213 @ ( comp @ X223 @ X220 ) @ ( sub @ X221 @ X220 ) @ X222 ) ) )
        | ( $true
          = ( sP43 @ X213 ) )
        | ? [X224: term] :
            ( ( X214 @ X224 )
           != ( X213 @ id @ X224 @ id ) )
        | ( $true
         != ( X214 @ X215 ) )
        | ( $true
          = ( X214 @ ( ap @ X212 @ X215 ) ) )
        | ( $true
         != ( X214 @ X212 ) )
        | ( $true
          = ( sP44 @ X213 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f62,plain,
    ! [X204: subst > term > subst > $o] :
      ( ( $true
        = ( sP46 @ X204 ) )
    <=> ? [X206: subst > term > term] :
          ( ! [X207: term] :
              ( ( $true
               != ( X204 @ id @ X207 @ id ) )
              | ( $true
                = ( X204 @ id @ ( X206 @ id @ X207 ) @ id ) ) )
          & ( $true
           != ( X204 @ id @ ( lam @ ( X206 @ sh @ one ) ) @ id ) )
          & ! [X208: term,X209: subst,X210: subst] :
              ( ( sub @ ( X206 @ X209 @ X208 ) @ X210 )
              = ( X206 @ ( comp @ X209 @ X210 ) @ ( sub @ X208 @ X210 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f63,plain,
    ( ( $true = sP47 )
  <=> ! [X204: subst > term > subst > $o,X205: term] :
        ( ( $true
          = ( X204 @ id @ ( lam @ ( sub @ X205 @ ( push @ one @ sh ) ) ) @ id ) )
        | ( $true
          = ( sP46 @ X204 ) )
        | ? [X211: term] :
            ( ( ( X204 @ id @ ( sub @ X205 @ ( push @ X211 @ id ) ) @ id )
             != $true )
            & ( $true
              = ( X204 @ id @ X211 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f64,plain,
    ! [X279: term > $o] :
      ( ( ( sP48 @ X279 )
        = $true )
    <=> ? [X283: term] :
          ( ! [X284: term] :
              ( ( $true
                = ( X279 @ ( sub @ X283 @ ( push @ X284 @ id ) ) ) )
              | ( $true
               != ( X279 @ X284 ) ) )
          & ( $true
           != ( X279 @ ( lam @ X283 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f65,plain,
    ! [X279: term > $o] :
      ( ( ( sP49 @ X279 )
        = $true )
    <=> ? [X285: term,X286: term] :
          ( ( ( X279 @ X285 )
            = $true )
          & ( $true
            = ( X279 @ X286 ) )
          & ( $true
           != ( X279 @ ( ap @ X286 @ X285 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f66,plain,
    ( ( $true = sP50 )
  <=> ! [X279: term > $o,X280: term,X281: subst] :
        ( ? [X282: term] :
            ( ( ( X279 @ ( sub @ X282 @ X281 ) )
             != $true )
            & ( $true
              = ( var @ X282 ) ) )
        | ( ( sP49 @ X279 )
          = $true )
        | ( ( sP48 @ X279 )
          = $true )
        | ( $true
          = ( X279 @ ( sub @ X280 @ X281 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f67,plain,
    ! [X89: term > $o] :
      ( ( ( sP51 @ X89 )
        = $true )
    <=> ! [X94: term,X95: term] :
          ( ( $true
            = ( X89 @ ( ap @ X94 @ X95 ) ) )
          | ( $true
           != ( X89 @ X94 ) )
          | ( $true
           != ( X89 @ X95 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f68,plain,
    ! [X89: term > $o] :
      ( ( $true
        = ( sP52 @ X89 ) )
    <=> ! [X91: term] :
          ( ( $true
            = ( X89 @ ( lam @ X91 ) ) )
          | ? [X92: term] :
              ( ( $true
                = ( X89 @ X92 ) )
              & ( $true
               != ( X89 @ ( sub @ X91 @ ( push @ X92 @ id ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f69,plain,
    ! [X96: term > $o] :
      ( ( $true
        = ( sP53 @ X96 ) )
    <=> ? [X98: term] :
          ( ! [X99: term] :
              ( ( $true
                = ( X96 @ ( sub @ X98 @ ( push @ X99 @ id ) ) ) )
              | ( ( X96 @ X99 )
               != $true ) )
          & ( ( X96 @ ( lam @ X98 ) )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f70,plain,
    ! [X96: term > $o] :
      ( ( $true
        = ( sP54 @ X96 ) )
    <=> ? [X100: term,X101: term] :
          ( ( $true
           != ( X96 @ ( ap @ X100 @ X101 ) ) )
          & ( ( X96 @ X100 )
            = $true )
          & ( $true
            = ( X96 @ X101 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f71,plain,
    ( ( $true = sP55 )
  <=> ! [X96: term > $o,X97: term] :
        ( ( ( X96 @ X97 )
          = $true )
        | ? [X102: term] :
            ( ( $true
             != ( X96 @ X102 ) )
            & ( $true
              = ( var @ X102 ) ) )
        | ( $true
          = ( sP53 @ X96 ) )
        | ( $true
          = ( sP54 @ X96 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f72,plain,
    ( ( $true = sP56 )
  <=> ? [X88: term,X89: term > $o,X90: subst] :
        ( ! [X93: term] :
            ( ( $true
              = ( X89 @ ( sub @ X93 @ X90 ) ) )
            | ( $true
             != ( var @ X93 ) ) )
        & ( ( sP51 @ X89 )
          = $true )
        & ( $true
          = ( sP52 @ X89 ) )
        & ( $true
         != ( X89 @ ( sub @ X88 @ X90 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f73,plain,
    ( ( sP57 = $true )
  <=> ! [X34: term,X35: term,X36: term,X37: term] :
        ( ( ( ap @ ( sub @ X35 @ id ) @ X37 )
         != ( ap @ ( sub @ X34 @ id ) @ X36 ) )
        | ( X36 = X37 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f74,plain,
    ( ( $true = sP58 )
  <=> ( ? [X30: term,X31: term,X32: term,X33: term] :
          ( ( X31 != X33 )
          & ( ( ap @ X32 @ X33 )
            = ( ap @ X30 @ X31 ) ) )
      | ( sP57 = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f75,plain,
    ! [X227: subst > term > subst > $o] :
      ( ( $true
        = ( sP59 @ X227 ) )
    <=> ? [X229: subst > term > term] :
          ( ( ( X227 @ id @ ( lam @ ( X229 @ sh @ one ) ) @ id )
           != $true )
          & ! [X233: term] :
              ( ( $true
                = ( X227 @ id @ ( X229 @ id @ X233 ) @ id ) )
              | ( $true
               != ( X227 @ id @ X233 @ id ) ) )
          & ! [X230: term,X231: subst,X232: subst] :
              ( ( sub @ ( X229 @ X231 @ X230 ) @ X232 )
              = ( X229 @ ( comp @ X231 @ X232 ) @ ( sub @ X230 @ X232 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f76,plain,
    ( ( $true = sP60 )
  <=> ! [X227: subst > term > subst > $o,X228: term] :
        ( ? [X234: term] :
            ( ( $true
             != ( X227 @ id @ ( sub @ X228 @ ( push @ X234 @ id ) ) @ id ) )
            & ( $true
              = ( X227 @ id @ X234 @ id ) ) )
        | ( $true
          = ( sP59 @ X227 ) )
        | ( ( X227 @ id @ ( lam @ ( sub @ X228 @ ( push @ one @ sh ) ) ) @ id )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f77,plain,
    ( ( $true = sP61 )
  <=> ( ? [X42: subst] :
          ( ( comp @ X42 @ id )
         != X42 )
      | ( ! [X43: subst] :
            ( ( comp @ id @ X43 )
            = X43 )
        & ! [X44: subst] :
            ( ( comp @ X44 @ id )
            = X44 ) )
      | ? [X41: subst] :
          ( ( comp @ id @ X41 )
         != X41 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f78,plain,
    ! [X377: term > $o] :
      ( ( ( sP62 @ X377 )
        = $true )
    <=> ! [X381: term,X382: term] :
          ( ( ( X377 @ X381 )
           != $true )
          | ( $true
            = ( X377 @ ( ap @ X382 @ X381 ) ) )
          | ( $true
           != ( X377 @ X382 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f79,plain,
    ! [X377: term > $o] :
      ( ( $true
        = ( sP63 @ X377 ) )
    <=> ! [X378: term] :
          ( ( $true
            = ( X377 @ X378 ) )
          | ( $true
           != ( var @ X378 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f80,plain,
    ! [X377: term > $o] :
      ( ( ( sP64 @ X377 )
        = $true )
    <=> ! [X379: term] :
          ( ? [X380: term] :
              ( ( $true
               != ( X377 @ ( sub @ X379 @ ( push @ X380 @ id ) ) ) )
              & ( $true
                = ( X377 @ X380 ) ) )
          | ( $true
            = ( X377 @ ( lam @ X379 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f81,plain,
    ! [X413: subst > term > subst > $o] :
      ( ( ( sP65 @ X413 )
        = $true )
    <=> ? [X425: subst > term > term] :
          ( ! [X426: term] :
              ( ( ( X413 @ id @ X426 @ id )
               != $true )
              | ( $true
                = ( X413 @ id @ ( X425 @ id @ X426 ) @ id ) ) )
          & ( $true
           != ( X413 @ id @ ( lam @ ( X425 @ sh @ one ) ) @ id ) )
          & ! [X427: term,X428: subst,X429: subst] :
              ( ( sub @ ( X425 @ X428 @ X427 ) @ X429 )
              = ( X425 @ ( comp @ X428 @ X429 ) @ ( sub @ X427 @ X429 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f82,plain,
    ! [X413: subst > term > subst > $o] :
      ( ( $true
        = ( sP66 @ X413 ) )
    <=> ? [X418: term,X419: term] :
          ( ( $true
            = ( X413 @ id @ X419 @ id ) )
          & ( $true
            = ( X413 @ id @ X418 @ id ) )
          & ( $true
           != ( X413 @ id @ ( ap @ ( sub @ X419 @ id ) @ X418 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f83,plain,
    ! [X413: subst > term > subst > $o] :
      ( ( $true
        = ( sP67 @ X413 ) )
    <=> ? [X414: term,X415: subst,X416: subst,X417: subst] :
          ( ( $true
           != ( X413 @ X415 @ X414 @ ( comp @ X417 @ X416 ) ) )
          & ( $true
            = ( X413 @ ( comp @ X415 @ X417 ) @ ( sub @ X414 @ X417 ) @ X416 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f84,plain,
    ! [X413: subst > term > subst > $o] :
      ( ( $true
        = ( sP68 @ X413 ) )
    <=> ? [X420: term] :
          ( ( $true
           != ( X413 @ id @ X420 @ id ) )
          & ( $true
            = ( var @ ( sub @ X420 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f85,plain,
    ! [X385: subst > term > subst > $o] :
      ( ( $true
        = ( sP69 @ X385 ) )
    <=> ! [X386: term,X387: term] :
          ( ( ( X385 @ id @ ( ap @ ( sub @ X386 @ id ) @ X387 ) @ id )
            = $true )
          | ( $true
           != ( X385 @ id @ X386 @ id ) )
          | ( ( X385 @ id @ X387 @ id )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f86,plain,
    ! [X385: subst > term > subst > $o] :
      ( ( ( sP70 @ X385 )
        = $true )
    <=> ! [X392: subst,X393: subst,X394: subst,X395: term] :
          ( ( $true
           != ( X385 @ X393 @ X395 @ ( comp @ X394 @ X392 ) ) )
          | ( $true
            = ( X385 @ ( comp @ X393 @ X394 ) @ ( sub @ X395 @ X394 ) @ X392 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f87,plain,
    ! [X396: subst > term > subst > $o] :
      ( ( ( sP71 @ X396 )
        = $true )
    <=> ! [X407: subst > term > term] :
          ( ? [X408: subst,X409: term,X410: subst] :
              ( ( sub @ ( X407 @ X410 @ X409 ) @ X408 )
             != ( X407 @ ( comp @ X410 @ X408 ) @ ( sub @ X409 @ X408 ) ) )
          | ? [X411: term] :
              ( ( $true
                = ( X396 @ id @ X411 @ id ) )
              & ( $true
               != ( X396 @ id @ ( X407 @ id @ X411 ) @ id ) ) )
          | ( ( X396 @ id @ ( lam @ ( X407 @ sh @ one ) ) @ id )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f88,plain,
    ! [X396: subst > term > subst > $o] :
      ( ( $true
        = ( sP72 @ X396 ) )
    <=> ! [X399: subst,X400: subst,X401: subst,X402: term] :
          ( ( $true
           != ( X396 @ ( comp @ X399 @ X401 ) @ ( sub @ X402 @ X401 ) @ X400 ) )
          | ( $true
            = ( X396 @ X399 @ X402 @ ( comp @ X401 @ X400 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f89,plain,
    ! [X396: subst > term > subst > $o,X397: term] :
      ( ( $true
        = ( sP73 @ X397 @ X396 ) )
    <=> ! [X398: term] :
          ( ( $true
           != ( X396 @ id @ X398 @ id ) )
          | ( $true
            = ( X396 @ id @ ( sub @ X397 @ ( push @ X398 @ id ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f90,plain,
    ( ( $true = sP74 )
  <=> ! [X412: term,X413: subst > term > subst > $o] :
        ( ? [X421: term,X422: subst,X423: subst,X424: subst] :
            ( ( $true
              = ( X413 @ X422 @ X421 @ ( comp @ X424 @ X423 ) ) )
            & ( ( X413 @ ( comp @ X422 @ X424 ) @ ( sub @ X421 @ X424 ) @ X423 )
             != $true ) )
        | ( $true
          = ( sP68 @ X413 ) )
        | ( $true
          = ( sP67 @ X413 ) )
        | ( $true
          = ( sP66 @ X413 ) )
        | ( ( X413 @ id @ X412 @ id )
          = $true )
        | ( ( sP65 @ X413 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f91,plain,
    ( ( $true = sP75 )
  <=> ? [X383: term,X384: term,X385: subst > term > subst > $o] :
        ( ( $true
         != ( X385 @ id @ ( ap @ X384 @ X383 ) @ id ) )
        & ( $true
          = ( sP69 @ X385 ) )
        & ! [X388: term,X389: subst,X390: subst,X391: subst] :
            ( ( $true
              = ( X385 @ X391 @ X388 @ ( comp @ X390 @ X389 ) ) )
            | ( $true
             != ( X385 @ ( comp @ X391 @ X390 ) @ ( sub @ X388 @ X390 ) @ X389 ) ) )
        & ( $true
          = ( X385 @ id @ X384 @ id ) )
        & ( ( sP70 @ X385 )
          = $true )
        & ( $true
          = ( X385 @ id @ X383 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f92,plain,
    ( ( $true = sP76 )
  <=> ? [X396: subst > term > subst > $o,X397: term] :
        ( ! [X403: subst,X404: term,X405: subst,X406: subst] :
            ( ( ( X396 @ ( comp @ X403 @ X406 ) @ ( sub @ X404 @ X406 ) @ X405 )
              = $true )
            | ( ( X396 @ X403 @ X404 @ ( comp @ X406 @ X405 ) )
             != $true ) )
        & ( ( sP71 @ X396 )
          = $true )
        & ( $true
          = ( sP73 @ X397 @ X396 ) )
        & ( $true
          = ( sP72 @ X396 ) )
        & ( $true
         != ( X396 @ id @ ( lam @ X397 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f93,plain,
    ( ( $true = sP77 )
  <=> ? [X376: term,X377: term > $o] :
        ( ( ( sP64 @ X377 )
          = $true )
        & ( ( sP62 @ X377 )
          = $true )
        & ( $true
          = ( sP63 @ X377 ) )
        & ( ( X377 @ X376 )
         != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f94,plain,
    ! [X66: subst > term > subst > $o] :
      ( ( $true
        = ( sP78 @ X66 ) )
    <=> ? [X75: subst > term > term] :
          ( ( $true
           != ( X66 @ id @ ( lam @ ( X75 @ sh @ one ) ) @ id ) )
          & ! [X77: subst,X78: subst,X79: term] :
              ( ( X75 @ ( comp @ X77 @ X78 ) @ ( sub @ X79 @ X78 ) )
              = ( sub @ ( X75 @ X77 @ X79 ) @ X78 ) )
          & ! [X76: term] :
              ( ( ( X66 @ id @ ( X75 @ id @ X76 ) @ id )
                = $true )
              | ( $true
               != ( X66 @ id @ X76 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f95,plain,
    ! [X64: term,X65: term > $o] :
      ( ( $true
        = ( sP79 @ X65 @ X64 ) )
    <=> ? [X80: term] :
          ( ( $true
           != ( X65 @ ( sub @ X64 @ ( push @ X80 @ id ) ) ) )
          & ( $true
            = ( X65 @ X80 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f96,plain,
    ! [X66: subst > term > subst > $o] :
      ( ( $true
        = ( sP80 @ X66 ) )
    <=> ? [X67: subst,X68: term,X69: subst,X70: subst] :
          ( ( ( X66 @ ( comp @ X70 @ X67 ) @ ( sub @ X68 @ X67 ) @ X69 )
           != $true )
          & ( $true
            = ( X66 @ X70 @ X68 @ ( comp @ X67 @ X69 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f97,plain,
    ( ( $true = sP81 )
  <=> ! [X64: term,X65: term > $o,X66: subst > term > subst > $o] :
        ( ? [X71: subst,X72: term,X73: subst,X74: subst] :
            ( ( ( X66 @ X74 @ X72 @ ( comp @ X71 @ X73 ) )
             != $true )
            & ( $true
              = ( X66 @ ( comp @ X74 @ X71 ) @ ( sub @ X72 @ X71 ) @ X73 ) ) )
        | ( $true
          = ( X65 @ ( lam @ X64 ) ) )
        | ( $true
          = ( sP78 @ X66 ) )
        | ( $true
          = ( sP80 @ X66 ) )
        | ( $true
          = ( sP79 @ X65 @ X64 ) )
        | ? [X81: term] :
            ( ( X66 @ id @ X81 @ id )
           != ( X65 @ X81 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f99,plain,
    ! [X369: subst > term > subst > $o] :
      ( ( $true
        = ( sP83 @ X369 ) )
    <=> ? [X371: subst > term > term] :
          ( ( $true
           != ( X369 @ id @ ( lam @ ( X371 @ sh @ one ) ) @ id ) )
          & ! [X375: term] :
              ( ( $true
                = ( X369 @ id @ ( X371 @ id @ X375 ) @ id ) )
              | ( $true
               != ( X369 @ id @ X375 @ id ) ) )
          & ! [X372: subst,X373: subst,X374: term] :
              ( ( X371 @ ( comp @ X373 @ X372 ) @ ( sub @ X374 @ X372 ) )
              = ( sub @ ( X371 @ X373 @ X374 ) @ X372 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f100,plain,
    ( ( $true = sP84 )
  <=> ! [X368: term,X369: subst > term > subst > $o] :
        ( ( $true
          = ( X369 @ id @ ( lam @ X368 ) @ id ) )
        | ( $true
          = ( sP83 @ X369 ) )
        | ? [X370: term] :
            ( ( $true
              = ( X369 @ id @ X370 @ id ) )
            & ( $true
             != ( X369 @ id @ ( sub @ X368 @ ( push @ X370 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f101,plain,
    ( ( $true = sP85 )
  <=> ? [X360: subst > term > subst > $o,X361: term] :
        ( ( $true
         != ( X360 @ id @ ( lam @ ( sub @ X361 @ ( push @ one @ sh ) ) ) @ id ) )
        & ( ( sP82 @ X360 )
          = $true )
        & ! [X367: term] :
            ( ( $true
             != ( X360 @ id @ X367 @ id ) )
            | ( $true
              = ( X360 @ id @ ( sub @ X361 @ ( push @ X367 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f102,plain,
    ! [X53: subst > term > subst > $o] :
      ( ( $true
        = ( sP86 @ X53 ) )
    <=> ? [X54: term,X55: subst > term > term] :
          ( ( $true
           != ( X53 @ id @ ( lam @ ( X55 @ sh @ one ) ) @ id ) )
          & ! [X59: term] :
              ( ( ( X53 @ id @ X59 @ id )
               != $true )
              | ( ( X53 @ id @ ( X55 @ id @ X59 ) @ id )
                = $true ) )
          & ! [X60: subst,X61: subst,X62: term] :
              ( ( sub @ ( sub @ X54 @ ( push @ X62 @ X61 ) ) @ X60 )
              = ( sub @ ( X55 @ X61 @ X62 ) @ X60 ) )
          & ! [X56: subst,X57: subst,X58: term] :
              ( ( sub @ X54 @ ( push @ ( sub @ X58 @ X57 ) @ ( comp @ X56 @ X57 ) ) )
              = ( X55 @ ( comp @ X56 @ X57 ) @ ( sub @ X58 @ X57 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f103,plain,
    ( ( sP87 = $true )
  <=> ! [X52: term,X53: subst > term > subst > $o] :
        ( ? [X63: term] :
            ( ( ( X53 @ id @ ( sub @ X52 @ ( push @ X63 @ id ) ) @ id )
             != $true )
            & ( ( X53 @ id @ X63 @ id )
              = $true ) )
        | ( $true
          = ( sP86 @ X53 ) )
        | ( $true
          = ( X53 @ id @ ( lam @ ( sub @ X52 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f104,plain,
    ! [X287: subst > term > subst > $o] :
      ( ( $true
        = ( sP88 @ X287 ) )
    <=> ? [X289: subst > term > term] :
          ( ! [X290: subst,X291: term,X292: subst] :
              ( ( sub @ ( X289 @ X290 @ X291 ) @ X292 )
              = ( X289 @ ( comp @ X290 @ X292 ) @ ( sub @ X291 @ X292 ) ) )
          & ( $true
           != ( X287 @ id @ ( lam @ ( X289 @ sh @ one ) ) @ id ) )
          & ! [X293: term] :
              ( ( ( X287 @ id @ ( X289 @ id @ X293 ) @ id )
                = $true )
              | ( $true
               != ( X287 @ id @ X293 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f105,plain,
    ! [X287: subst > term > subst > $o] :
      ( ( ( sP89 @ X287 )
        = $true )
    <=> ? [X299: term,X300: term] :
          ( ( $true
            = ( X287 @ id @ X300 @ id ) )
          & ( $true
           != ( X287 @ id @ ( ap @ ( sub @ X300 @ id ) @ X299 ) @ id ) )
          & ( $true
            = ( X287 @ id @ X299 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f106,plain,
    ! [X287: subst > term > subst > $o] :
      ( ( $true
        = ( sP90 @ X287 ) )
    <=> ? [X301: subst,X302: subst,X303: subst,X304: term] :
          ( ( ( X287 @ ( comp @ X301 @ X303 ) @ ( sub @ X304 @ X303 ) @ X302 )
            = $true )
          & ( $true
           != ( X287 @ X301 @ X304 @ ( comp @ X303 @ X302 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f107,plain,
    ! [X287: subst > term > subst > $o] :
      ( ( $true
        = ( sP91 @ X287 ) )
    <=> ? [X295: subst,X296: term,X297: subst,X298: subst] :
          ( ( $true
           != ( X287 @ ( comp @ X298 @ X295 ) @ ( sub @ X296 @ X295 ) @ X297 ) )
          & ( $true
            = ( X287 @ X298 @ X296 @ ( comp @ X295 @ X297 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f108,plain,
    ( ( $true = sP92 )
  <=> ! [X287: subst > term > subst > $o,X288: term] :
        ( ( $true
          = ( X287 @ id @ X288 @ id ) )
        | ? [X294: term] :
            ( ( $true
              = ( var @ ( sub @ X294 @ id ) ) )
            & ( $true
             != ( X287 @ id @ X294 @ id ) ) )
        | ( $true
          = ( sP91 @ X287 ) )
        | ( ( sP89 @ X287 )
          = $true )
        | ( $true
          = ( sP90 @ X287 ) )
        | ( $true
          = ( sP88 @ X287 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f109,plain,
    ! [X242: term > $o] :
      ( ( ( sP93 @ X242 )
        = $true )
    <=> ! [X244: term,X245: term] :
          ( ( $true
           != ( X242 @ X244 ) )
          | ( $true
           != ( X242 @ X245 ) )
          | ( ( X242 @ ( ap @ X244 @ X245 ) )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f110,plain,
    ! [X242: term > $o] :
      ( ( $true
        = ( sP94 @ X242 ) )
    <=> ! [X243: term] :
          ( ( ( X242 @ X243 )
            = $true )
          | ( $true
           != ( var @ X243 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f111,plain,
    ! [X248: term > $o] :
      ( ( ( sP95 @ X248 )
        = $true )
    <=> ? [X250: term] :
          ( ( $true
           != ( X248 @ ( lam @ X250 ) ) )
          & ! [X251: term] :
              ( ( $true
                = ( X248 @ ( sub @ X250 @ ( push @ X251 @ id ) ) ) )
              | ( $true
               != ( X248 @ X251 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f112,plain,
    ! [X248: term > $o] :
      ( ( ( sP96 @ X248 )
        = $true )
    <=> ? [X252: term,X253: term] :
          ( ( $true
            = ( X248 @ X252 ) )
          & ( $true
            = ( X248 @ X253 ) )
          & ( $true
           != ( X248 @ ( ap @ X253 @ X252 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f113,plain,
    ( ( $true = sP97 )
  <=> ! [X247: subst,X248: term > $o,X249: term] :
        ( ( ( sP95 @ X248 )
          = $true )
        | ? [X254: term] :
            ( ( $true
             != ( X248 @ ( sub @ X254 @ X247 ) ) )
            & ( $true
              = ( var @ X254 ) ) )
        | ( ( sP96 @ X248 )
          = $true )
        | ( $true
          = ( X248 @ ( sub @ X249 @ X247 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f114,plain,
    ( ( $true = sP98 )
  <=> ? [X241: term,X242: term > $o] :
        ( ( $true
         != ( X242 @ X241 ) )
        & ! [X246: term] :
            ( ( $true
              = ( X242 @ ( lam @ X246 ) ) )
            | ( $true
             != ( X242 @ X246 ) ) )
        & ( ( sP93 @ X242 )
          = $true )
        & ( $true
          = ( sP94 @ X242 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f115,plain,
    ! [X22: subst > term > subst > $o] :
      ( ( $true
        = ( sP99 @ X22 ) )
    <=> ? [X25: subst > term > term] :
          ( ! [X26: subst,X27: term,X28: subst] :
              ( ( X25 @ ( comp @ X28 @ X26 ) @ ( sub @ X27 @ X26 ) )
              = ( sub @ ( X25 @ X28 @ X27 ) @ X26 ) )
          & ! [X29: term] :
              ( ( $true
                = ( X22 @ id @ ( X25 @ id @ X29 ) @ id ) )
              | ( $true
               != ( X22 @ id @ X29 @ id ) ) )
          & ( $true
           != ( X22 @ id @ ( lam @ ( X25 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f116,plain,
    ( ( $true = sP100 )
  <=> ! [X22: subst > term > subst > $o,X23: term] :
        ( ( $true
          = ( sP99 @ X22 ) )
        | ( $true
          = ( X22 @ id @ ( lam @ X23 ) @ id ) )
        | ? [X24: term] :
            ( ( ( X22 @ id @ X24 @ id )
              = $true )
            & ( $true
             != ( X22 @ id @ ( sub @ X23 @ ( push @ X24 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f117,plain,
    ! [X108: subst > term > subst > $o] :
      ( ( ( sP101 @ X108 )
        = $true )
    <=> ? [X114: term,X115: term] :
          ( ( $true
           != ( X108 @ id @ ( ap @ ( sub @ X114 @ id ) @ X115 ) @ id ) )
          & ( ( X108 @ id @ X115 @ id )
            = $true )
          & ( $true
            = ( X108 @ id @ X114 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f118,plain,
    ! [X108: subst > term > subst > $o] :
      ( ( $true
        = ( sP102 @ X108 ) )
    <=> ? [X116: subst,X117: subst,X118: subst,X119: term] :
          ( ( ( X108 @ X117 @ X119 @ ( comp @ X116 @ X118 ) )
           != $true )
          & ( $true
            = ( X108 @ ( comp @ X117 @ X116 ) @ ( sub @ X119 @ X116 ) @ X118 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f119,plain,
    ( ( $true = sP103 )
  <=> ! [X107: term,X108: subst > term > subst > $o,X109: term] :
        ( ? [X110: subst,X111: subst,X112: subst,X113: term] :
            ( ( ( X108 @ X112 @ X113 @ ( comp @ X111 @ X110 ) )
              = $true )
            & ( $true
             != ( X108 @ ( comp @ X112 @ X111 ) @ ( sub @ X113 @ X111 ) @ X110 ) ) )
        | ( $true
         != ( X108 @ id @ X107 @ id ) )
        | ( $true
          = ( X108 @ id @ ( ap @ X109 @ X107 ) @ id ) )
        | ( $true
          = ( sP102 @ X108 ) )
        | ( ( sP101 @ X108 )
          = $true )
        | ( ( X108 @ id @ X109 @ id )
         != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f120,plain,
    ! [X186: subst > term > subst > $o] :
      ( ( $true
        = ( sP104 @ X186 ) )
    <=> ! [X189: subst > term > term] :
          ( ? [X190: term,X191: subst,X192: subst] :
              ( ( sub @ ( X189 @ X192 @ X190 ) @ X191 )
             != ( X189 @ ( comp @ X192 @ X191 ) @ ( sub @ X190 @ X191 ) ) )
          | ( $true
            = ( X186 @ id @ ( lam @ ( X189 @ sh @ one ) ) @ id ) )
          | ? [X193: term] :
              ( ( ( X186 @ id @ ( X189 @ id @ X193 ) @ id )
               != $true )
              & ( ( X186 @ id @ X193 @ id )
                = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f121,plain,
    ! [X178: term > $o] :
      ( ( $true
        = ( sP105 @ X178 ) )
    <=> ! [X182: term,X183: term] :
          ( ( $true
           != ( X178 @ X183 ) )
          | ( $true
           != ( X178 @ X182 ) )
          | ( $true
            = ( X178 @ ( ap @ X182 @ X183 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f122,plain,
    ! [X178: term > $o] :
      ( ( $true
        = ( sP106 @ X178 ) )
    <=> ! [X179: term] :
          ( ( ( X178 @ ( lam @ X179 ) )
            = $true )
          | ? [X180: term] :
              ( ( $true
               != ( X178 @ ( sub @ X179 @ ( push @ X180 @ id ) ) ) )
              & ( ( X178 @ X180 )
                = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f123,plain,
    ! [X196: subst > term > subst > $o] :
      ( ( ( sP107 @ X196 )
        = $true )
    <=> ? [X199: subst > term > term] :
          ( ! [X200: subst,X201: subst,X202: term] :
              ( ( sub @ ( X199 @ X201 @ X202 ) @ X200 )
              = ( X199 @ ( comp @ X201 @ X200 ) @ ( sub @ X202 @ X200 ) ) )
          & ( $true
           != ( X196 @ id @ ( lam @ ( X199 @ sh @ one ) ) @ id ) )
          & ! [X203: term] :
              ( ( ( X196 @ id @ ( X199 @ id @ X203 ) @ id )
                = $true )
              | ( $true
               != ( X196 @ id @ X203 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f124,plain,
    ! [X196: subst > term > subst > $o] :
      ( ( $true
        = ( sP108 @ X196 ) )
    <=> ? [X197: term,X198: term] :
          ( ( ( X196 @ id @ X198 @ id )
            = $true )
          & ( $true
           != ( X196 @ id @ ( ap @ ( sub @ X197 @ id ) @ X198 ) @ id ) )
          & ( ( X196 @ id @ X197 @ id )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f125,plain,
    ( ( $true = sP109 )
  <=> ! [X195: term,X196: subst > term > subst > $o] :
        ( ( ( sP107 @ X196 )
          = $true )
        | ( $true
          = ( sP108 @ X196 ) )
        | ( ( X196 @ id @ X195 @ id )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f126,plain,
    ( ( $true = sP110 )
  <=> ? [X185: term > $o,X186: subst > term > subst > $o,X187: term] :
        ( ! [X194: term] :
            ( ( X186 @ id @ X194 @ id )
            = ( X185 @ X194 ) )
        & ( $true
         != ( X185 @ ( lam @ X187 ) ) )
        & ! [X188: term] :
            ( ( $true
              = ( X185 @ ( sub @ X187 @ ( push @ X188 @ id ) ) ) )
            | ( $true
             != ( X185 @ X188 ) ) )
        & ( $true
          = ( sP104 @ X186 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f127,plain,
    ( ( $true = sP111 )
  <=> ? [X177: term,X178: term > $o] :
        ( ( $true
         != ( X178 @ X177 ) )
        & ( $true
          = ( sP105 @ X178 ) )
        & ! [X181: term] :
            ( ( $true
              = ( X178 @ X181 ) )
            | ( ( var @ X181 )
             != $true ) )
        & ( $true
          = ( sP106 @ X178 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

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

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

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

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

thf(f1420,plain,
    ! [X87: term] :
      ( ( d2term @ ( sK563 @ X87 ) )
      = X87 ),
    inference(cnf_transformation,[status(thm)],[f757]) ).

thf(f1286,plain,
    ( ( var @ ( d2term @ d_one ) )
   != $true ),
    inference(cnf_transformation,[status(thm)],[f757]) ).

thf(f764,plain,
    ! [X0: term > $o] :
      ( ( ( sP0 @ X0 )
        = $true )
      | ( $true
        = ( var @ ( sK117 @ X0 ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f137]) ).

thf(f137,plain,
    ! [X0: term > $o] :
      ( ( ( ( sP0 @ X0 )
          = $true )
        | ( ( $true
           != ( X0 @ ( sub @ ( sK117 @ X0 ) @ sh ) ) )
          & ( $true
            = ( X0 @ ( sK117 @ X0 ) ) )
          & ( $true
            = ( var @ ( sK117 @ X0 ) ) ) ) )
      & ( ! [X2: term] :
            ( ( ( X0 @ ( sub @ X2 @ sh ) )
              = $true )
            | ( $true
             != ( X0 @ X2 ) )
            | ( ( var @ X2 )
             != $true ) )
        | ( ( sP0 @ X0 )
         != $true ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK117])],[f135,f136]) ).

thf(f136,plain,
    ! [X0: term > $o] :
      ( ? [X1: term] :
          ( ( $true
           != ( X0 @ ( sub @ X1 @ sh ) ) )
          & ( $true
            = ( X0 @ X1 ) )
          & ( $true
            = ( var @ X1 ) ) )
     => ( ( $true
         != ( X0 @ ( sub @ ( sK117 @ X0 ) @ sh ) ) )
        & ( $true
          = ( X0 @ ( sK117 @ X0 ) ) )
        & ( $true
          = ( var @ ( sK117 @ X0 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f135,plain,
    ! [X0: term > $o] :
      ( ( ( ( sP0 @ X0 )
          = $true )
        | ? [X1: term] :
            ( ( $true
             != ( X0 @ ( sub @ X1 @ sh ) ) )
            & ( $true
              = ( X0 @ X1 ) )
            & ( $true
              = ( var @ X1 ) ) ) )
      & ( ! [X2: term] :
            ( ( ( X0 @ ( sub @ X2 @ sh ) )
              = $true )
            | ( $true
             != ( X0 @ X2 ) )
            | ( ( var @ X2 )
             != $true ) )
        | ( ( sP0 @ X0 )
         != $true ) ) ),
    inference(rectify,[status(thm)],[f134]) ).

thf(f134,plain,
    ! [X1: term > $o] :
      ( ( ( $true
          = ( sP0 @ X1 ) )
        | ? [X5: term] :
            ( ( $true
             != ( X1 @ ( sub @ X5 @ sh ) ) )
            & ( $true
              = ( X1 @ X5 ) )
            & ( ( var @ X5 )
              = $true ) ) )
      & ( ! [X5: term] :
            ( ( $true
              = ( X1 @ ( sub @ X5 @ sh ) ) )
            | ( $true
             != ( X1 @ X5 ) )
            | ( ( var @ X5 )
             != $true ) )
        | ( $true
         != ( sP0 @ X1 ) ) ) ),
    inference(nnf_transformation,[status(thm)],[f15]) ).

thf(f15,plain,
    ! [X1: term > $o] :
      ( ( $true
        = ( sP0 @ X1 ) )
    <=> ! [X5: term] :
          ( ( $true
            = ( X1 @ ( sub @ X5 @ sh ) ) )
          | ( $true
           != ( X1 @ X5 ) )
          | ( ( var @ X5 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f3811,plain,
    ( ( ( sP0 @ sK113 )
     != $true )
    | spl650_452 ),
    inference(avatar_component_clause,[status(thm)],[f3810]) ).

thf(f3810,definition,
    ( spl650_452
  <=> ( ( sP0 @ sK113 )
      = $true ) ),
    introduced(definition,[new_symbols(naming,[spl650_452])],[avatar_definition]) ).

thf(f3876,plain,
    ~ spl650_249,
    inference(avatar_split_clause,[status(thm)],[f1930,f2927]) ).

thf(f2927,definition,
    ( spl650_249
  <=> ( sP1 = $true ) ),
    introduced(definition,[new_symbols(naming,[spl650_249])],[avatar_definition]) ).

thf(f1930,plain,
    sP1 != $true,
    inference(trivial_inequality_removal,[status(thm)],[f1523]) ).

thf(f1523,plain,
    ( ( sP1 != $true )
    | ( $true != $true ) ),
    inference(definition_unfolding,[status(thm)],[f768,f1391]) ).

thf(f1391,plain,
    pushprop_lem2v2 = $true,
    inference(cnf_transformation,[status(thm)],[f757]) ).

thf(f768,plain,
    ( ( pushprop_lem2v2 != $true )
    | ( sP1 != $true ) ),
    inference(cnf_transformation,[status(thm)],[f138]) ).

thf(f138,plain,
    ( ( ( pushprop_lem2v2 != $true )
      | ( sP1 != $true ) )
    & ( ( pushprop_lem2v2 = $true )
      | ( sP1 = $true ) ) ),
    inference(nnf_transformation,[status(thm)],[f17]) ).

thf(f17,plain,
    ( ( sP1 = $true )
  <~> ( pushprop_lem2v2 = $true ) ),
    inference(definition_folding,[status(thm)],[f12,f16,f15]) ).

thf(f16,plain,
    ( ( sP1 = $true )
  <=> ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
        ( ( $true
          = ( sP0 @ X1 ) )
        | ? [X4: term] :
            ( ( $true
             != ( X0 @ ( sub @ X4 @ X3 ) ) )
            & ( ( var @ X4 )
              = $true ) )
        | ( $true
         != ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f12,plain,
    ( ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
        ( ! [X5: term] :
            ( ( $true
              = ( X1 @ ( sub @ X5 @ sh ) ) )
            | ( $true
             != ( X1 @ X5 ) )
            | ( ( var @ X5 )
             != $true ) )
        | ? [X4: term] :
            ( ( $true
             != ( X0 @ ( sub @ X4 @ X3 ) ) )
            & ( ( var @ X4 )
              = $true ) )
        | ( $true
         != ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) )
  <~> ( pushprop_lem2v2 = $true ) ),
    inference(flattening,[status(thm)],[f11]) ).

thf(f11,plain,
    ( ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
        ( ! [X5: term] :
            ( ( $true
              = ( X1 @ ( sub @ X5 @ sh ) ) )
            | ( $true
             != ( X1 @ X5 ) )
            | ( ( var @ X5 )
             != $true ) )
        | ? [X4: term] :
            ( ( $true
             != ( X0 @ ( sub @ X4 @ X3 ) ) )
            & ( ( var @ X4 )
              = $true ) )
        | ( $true
         != ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) )
  <~> ( pushprop_lem2v2 = $true ) ),
    inference(ennf_transformation,[status(thm)],[f6]) ).

thf(f6,plain,
    ~ ( ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
          ( ( $true
            = ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) )
         => ( ! [X4: term] :
                ( ( ( var @ X4 )
                  = $true )
               => ( $true
                  = ( X0 @ ( sub @ X4 @ X3 ) ) ) )
           => ! [X5: term] :
                ( ( ( var @ X5 )
                  = $true )
               => ( ( $true
                    = ( X1 @ X5 ) )
                 => ( $true
                    = ( X1 @ ( sub @ X5 @ sh ) ) ) ) ) ) )
    <=> ( pushprop_lem2v2 = $true ) ),
    inference(fool_elimination,[status(thm)],[f5]) ).

thf(f5,plain,
    ~ ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
        ( ( ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 )
         => ( ! [X4: term] :
                ( ( var @ X4 )
               => ( X0 @ ( sub @ X4 @ X3 ) ) )
           => ! [X5: term] :
                ( ( var @ X5 )
               => ( ( X1 @ X5 )
                 => ( X1 @ ( sub @ X5 @ sh ) ) ) ) ) )
        = pushprop_lem2v2 ),
    inference(rectify,[status(thm)],[f3]) ).

thf(f3,negated_conjecture,
    ~ ! [X10: term > $o,X11: term > $o,X13: term,X14: subst] :
        ( ( ( pushprop_p_and_p_prime @ X13 @ X14 @ X10 @ X11 )
         => ( ! [X15: term] :
                ( ( var @ X15 )
               => ( X10 @ ( sub @ X15 @ X14 ) ) )
           => ! [X19: term] :
                ( ( var @ X19 )
               => ( ( X11 @ X19 )
                 => ( X11 @ ( sub @ X19 @ sh ) ) ) ) ) )
        = pushprop_lem2v2 ),
    inference(negated_conjecture,[status(cth)],[f2]) ).

thf(f2,conjecture,
    ! [X10: term > $o,X11: term > $o,X13: term,X14: subst] :
      ( ( ( pushprop_p_and_p_prime @ X13 @ X14 @ X10 @ X11 )
       => ( ! [X15: term] :
              ( ( var @ X15 )
             => ( X10 @ ( sub @ X15 @ X14 ) ) )
         => ! [X19: term] :
              ( ( var @ X19 )
             => ( ( X11 @ X19 )
               => ( X11 @ ( sub @ X19 @ sh ) ) ) ) ) )
      = pushprop_lem2v2 ),
    file('/export/starexec/sandbox/tmp/tmp.3qoP4JCMwi/DTF2THF_20450.p',pushprop_lem2v2) ).

thf(f3812,plain,
    ( ~ spl650_452
    | spl650_249 ),
    inference(avatar_split_clause,[status(thm)],[f762,f2927,f3810]) ).

thf(f762,plain,
    ( ( ( sP0 @ sK113 )
     != $true )
    | ( sP1 = $true ) ),
    inference(cnf_transformation,[status(thm)],[f133]) ).

thf(f133,plain,
    ( ( ( sP1 = $true )
      | ( ( ( sP0 @ sK113 )
         != $true )
        & ! [X4: term] :
            ( ( $true
              = ( sK112 @ ( sub @ X4 @ sK115 ) ) )
            | ( ( var @ X4 )
             != $true ) )
        & ( ( pushprop_p_and_p_prime @ sK114 @ sK115 @ sK112 @ sK113 )
          = $true ) ) )
    & ( ! [X5: term > $o,X6: term > $o,X7: term,X8: subst] :
          ( ( ( sP0 @ X6 )
            = $true )
          | ( ( $true
             != ( X5 @ ( sub @ ( sK116 @ X8 @ X5 ) @ X8 ) ) )
            & ( ( var @ ( sK116 @ X8 @ X5 ) )
              = $true ) )
          | ( $true
           != ( pushprop_p_and_p_prime @ X7 @ X8 @ X5 @ X6 ) ) )
      | ( sP1 != $true ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK112,sK113,sK114,sK115,sK116])],[f130,f132,f131]) ).

thf(f131,plain,
    ( ? [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
        ( ( $true
         != ( sP0 @ X1 ) )
        & ! [X4: term] :
            ( ( $true
              = ( X0 @ ( sub @ X4 @ X3 ) ) )
            | ( ( var @ X4 )
             != $true ) )
        & ( $true
          = ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) )
   => ( ( ( sP0 @ sK113 )
       != $true )
      & ! [X4: term] :
          ( ( $true
            = ( sK112 @ ( sub @ X4 @ sK115 ) ) )
          | ( ( var @ X4 )
           != $true ) )
      & ( ( pushprop_p_and_p_prime @ sK114 @ sK115 @ sK112 @ sK113 )
        = $true ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f132,plain,
    ! [X5: term > $o,X8: subst] :
      ( ? [X9: term] :
          ( ( ( X5 @ ( sub @ X9 @ X8 ) )
           != $true )
          & ( $true
            = ( var @ X9 ) ) )
     => ( ( $true
         != ( X5 @ ( sub @ ( sK116 @ X8 @ X5 ) @ X8 ) ) )
        & ( ( var @ ( sK116 @ X8 @ X5 ) )
          = $true ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f130,plain,
    ( ( ( sP1 = $true )
      | ? [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
          ( ( $true
           != ( sP0 @ X1 ) )
          & ! [X4: term] :
              ( ( $true
                = ( X0 @ ( sub @ X4 @ X3 ) ) )
              | ( ( var @ X4 )
               != $true ) )
          & ( $true
            = ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) ) )
    & ( ! [X5: term > $o,X6: term > $o,X7: term,X8: subst] :
          ( ( ( sP0 @ X6 )
            = $true )
          | ? [X9: term] :
              ( ( ( X5 @ ( sub @ X9 @ X8 ) )
               != $true )
              & ( $true
                = ( var @ X9 ) ) )
          | ( $true
           != ( pushprop_p_and_p_prime @ X7 @ X8 @ X5 @ X6 ) ) )
      | ( sP1 != $true ) ) ),
    inference(rectify,[status(thm)],[f129]) ).

thf(f129,plain,
    ( ( ( sP1 = $true )
      | ? [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
          ( ( $true
           != ( sP0 @ X1 ) )
          & ! [X4: term] :
              ( ( $true
                = ( X0 @ ( sub @ X4 @ X3 ) ) )
              | ( ( var @ X4 )
               != $true ) )
          & ( $true
            = ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) ) )
    & ( ! [X0: term > $o,X1: term > $o,X2: term,X3: subst] :
          ( ( $true
            = ( sP0 @ X1 ) )
          | ? [X4: term] :
              ( ( $true
               != ( X0 @ ( sub @ X4 @ X3 ) ) )
              & ( ( var @ X4 )
                = $true ) )
          | ( $true
           != ( pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1 ) ) )
      | ( sP1 != $true ) ) ),
    inference(nnf_transformation,[status(thm)],[f16]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.12/0.13  % Command  : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.17/0.34  % Computer : n009.cluster.edu
% 0.17/0.34  % Model    : x86_64 x86_64
% 0.17/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.34  % Memory   : 8042.1875MB
% 0.17/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.17/0.34  % CPULimit : 300
% 0.17/0.34  % WCLimit  : 300
% 0.17/0.34  % DateTime : Tue May  5 08:59:25 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.17/0.34  Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.31/0.46  ---- Original DTF file ---
% 0.31/0.46  thf(spec,logic,$$dhol).
% 0.31/0.46  %------------------------------------------------------------------------------
% 0.31/0.46  % File     : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.31/0.46  % Domain   : Software Verification
% 0.31/0.46  % Problem  : Benchmark: ALG444^1, Active target: pushprop_lem2v2
% 0.31/0.46  % Version  : Especial.
% 0.31/0.46  % English  :
% 0.31/0.46  
% 0.31/0.46  % Refs     : [Kon26] Kondylidou (2026), Email to Geoff Sutcliffe
% 0.31/0.46  % Source   : [Kon26]
% 0.31/0.46  % Names    : ALG444^1__005__axclos.verify [Kon26]
% 0.31/0.46  
% 0.31/0.46  % Status   : Theorem
% 0.31/0.46  % Rating   : ? v9.3.0
% 0.31/0.46  % Syntax   : Number of formulae    :  132 (   1 unt; 130 typ;   0 def)
% 0.31/0.46  %            Number of atoms       :  257 ( 128 equ;   0 cnn)
% 0.31/0.46  %            Maximal formula atoms :  248 ( 128 avg)
% 0.31/0.46  %            Number of connectives : 2587 ( 333   ~; 306   |; 129   &;1720   @)
% 0.31/0.46  %                                         (  56 <=>;  43  =>;   0  <=;   0 <~>)
% 0.31/0.46  %            Maximal formula depth :  151 (  76 avg)
% 0.31/0.46  %            Number of types       :    5 (   4 usr)
% 0.31/0.46  %            Number of type conns  :  224 ( 224   >;   0   *;   0   +;   0  <<)
% 0.31/0.46  %            Number of symbols     :  127 ( 126 usr; 113 con; 0-4 aty)
% 0.31/0.46  %            Number of variables   :  556 (   8   ^; 546   !;   2   ?; 556   :)
% 0.31/0.46  % SPC      : TH0_THM_EQU_NAR
% 0.31/0.46  
% 0.31/0.46  % Comments :
% 0.31/0.46  %------------------------------------------------------------------------------
% 0.31/0.46  thf(term_type,type,
% 0.31/0.46      term: $tType ).
% 0.31/0.46  
% 0.31/0.46  thf(subst_type,type,
% 0.31/0.46      subst: $tType ).
% 0.31/0.46  
% 0.31/0.46  thf(one_decl,type,
% 0.31/0.46      one: term ).
% 0.31/0.46  
% 0.31/0.46  thf(ap_decl,type,
% 0.31/0.46      ap: term > term > term ).
% 0.31/0.46  
% 0.31/0.46  thf(lam_decl,type,
% 0.31/0.46      lam: term > term ).
% 0.31/0.46  
% 0.31/0.46  thf(sub_decl,type,
% 0.31/0.46      sub: term > subst > term ).
% 0.31/0.46  
% 0.31/0.46  thf(id_decl,type,
% 0.31/0.46      id: subst ).
% 0.31/0.46  
% 0.31/0.46  thf(sh_decl,type,
% 0.31/0.46      sh: subst ).
% 0.31/0.46  
% 0.31/0.46  thf(push_decl,type,
% 0.31/0.46      push: term > subst > subst ).
% 0.31/0.46  
% 0.31/0.46  thf(comp_decl,type,
% 0.31/0.46      comp: subst > subst > subst ).
% 0.31/0.46  
% 0.31/0.46  thf(var_decl,type,
% 0.31/0.46      var: term > $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1v2_decl,type,
% 0.31/0.46      pushprop_lem1v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1_gthm_decl,type,
% 0.31/0.46      pushprop_lem1_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axmap_decl,type,
% 0.31/0.46      axmap: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem0_gthm_decl,type,
% 0.31/0.46      pushprop_lem0_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(shinj_decl,type,
% 0.31/0.46      shinj: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem1v2_decl,type,
% 0.31/0.46      hoasinduction_lem1v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem1v2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasap_decl,type,
% 0.31/0.46      hoasap: subst > term > subst > term > term ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2lem_decl,type,
% 0.31/0.46      induction2lem: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2_f_decl,type,
% 0.31/0.46      hoasinduction_lem3v2_f: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axvarshift_decl,type,
% 0.31/0.46      axvarshift: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj2_decl,type,
% 0.31/0.46      hoasapinj2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapnotvar_gthm_decl,type,
% 0.31/0.46      hoasapnotvar_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj1_decl,type,
% 0.31/0.46      hoasapinj1: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(ulamvar1_decl,type,
% 0.31/0.46      ulamvar1: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2lem_lthm_decl,type,
% 0.31/0.46      induction2lem_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem3v2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(apnotvar_decl,type,
% 0.31/0.46      apnotvar: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lthm_orig_decl,type,
% 0.31/0.46      pushprop_lthm_orig: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3v2_f_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lthm_decl,type,
% 0.31/0.46      hoasinduction_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.31/0.46      hoasinduction_no_psi_cond_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslaminj_decl,type,
% 0.31/0.46      hoaslaminj: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3aaa_decl,type,
% 0.31/0.46      hoasinduction_lem3aaa: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2lem_gthm_decl,type,
% 0.31/0.46      induction2lem_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3aa_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3_decl,type,
% 0.31/0.46      hoasinduction_lem3: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem2_decl,type,
% 0.31/0.46      hoasinduction_lem2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(termmset_lthm_decl,type,
% 0.31/0.46      termmset_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem1_decl,type,
% 0.31/0.46      hoasinduction_lem1: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotap_lthm_decl,type,
% 0.31/0.46      hoaslamnotap_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1v2_lthm_decl,type,
% 0.31/0.46      pushprop_lem1v2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapnotvar_decl,type,
% 0.31/0.46      hoasapnotvar: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem0_decl,type,
% 0.31/0.46      hoasinduction_lem0: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_decl,type,
% 0.31/0.46      hoasinduction: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_gthm_decl,type,
% 0.31/0.46      hoasinduction_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axapp_decl,type,
% 0.31/0.46      axapp: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotvar_lthm_decl,type,
% 0.31/0.46      hoaslamnotvar_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem3v2_lthm_decl,type,
% 0.31/0.46      pushprop_lem3v2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3b_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(ulamvarind_decl,type,
% 0.31/0.46      ulamvarind: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction_decl,type,
% 0.31/0.46      induction: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3a_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(termmset_gthm_decl,type,
% 0.31/0.46      termmset_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3aa_decl,type,
% 0.31/0.46      hoasinduction_lem3aa: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1v2_gthm_decl,type,
% 0.31/0.46      pushprop_lem1v2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotap_gthm_decl,type,
% 0.31/0.46      hoaslamnotap_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotvar_gthm_decl,type,
% 0.31/0.46      hoaslamnotvar_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem3b_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem2v2_decl,type,
% 0.31/0.46      pushprop_lem2v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem3a_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axclos_decl,type,
% 0.31/0.46      axclos: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axassoc_decl,type,
% 0.31/0.46      axassoc: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem2v2_decl,type,
% 0.31/0.46      hoasinduction_lem2v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lthm_decl,type,
% 0.31/0.46      pushprop_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(apinj2_decl,type,
% 0.31/0.46      apinj2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(apinj1_decl,type,
% 0.31/0.46      apinj1: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj2_lthm_decl,type,
% 0.31/0.46      hoasapinj2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2a_decl,type,
% 0.31/0.46      hoasinduction_lem3v2a: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj1_lthm_decl,type,
% 0.31/0.46      hoasapinj1_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslaminj_lthm_decl,type,
% 0.31/0.46      hoaslaminj_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axvarcons_decl,type,
% 0.31/0.46      axvarcons: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslam_decl,type,
% 0.31/0.46      hoaslam: subst > ( subst > term > term ) > term ).
% 0.31/0.46  
% 0.31/0.46  thf(axscons_decl,type,
% 0.31/0.46      axscons: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem2v2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axidr_decl,type,
% 0.31/0.46      axidr: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1_decl,type,
% 0.31/0.46      pushprop_lem1: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(laminj_decl,type,
% 0.31/0.46      laminj: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem0_decl,type,
% 0.31/0.46      pushprop_lem0: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_gthm_decl,type,
% 0.31/0.46      pushprop_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axabs_decl,type,
% 0.31/0.46      axabs: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3v2a_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem2_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj2_gthm_decl,type,
% 0.31/0.46      hoasapinj2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.31/0.46      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem1_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem1_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(lamnotap_decl,type,
% 0.31/0.46      lamnotap: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapinj1_gthm_decl,type,
% 0.31/0.46      hoasapinj1_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotvar_decl,type,
% 0.31/0.46      hoaslamnotvar: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axidl_decl,type,
% 0.31/0.46      axidl: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslaminj_gthm_decl,type,
% 0.31/0.46      hoaslaminj_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2_lthm_decl,type,
% 0.31/0.46      induction2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem0_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem0_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(substmonoid_lthm_decl,type,
% 0.31/0.46      substmonoid_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_decl,type,
% 0.31/0.46      pushprop: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem3_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem2_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3b_decl,type,
% 0.31/0.46      hoasinduction_lem3b: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(substmonoid_decl,type,
% 0.31/0.46      substmonoid: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(lamnotvar_decl,type,
% 0.31/0.46      lamnotvar: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3a_decl,type,
% 0.31/0.46      hoasinduction_lem3a: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem1_gthm_decl,type,
% 0.31/0.46      hoasinduction_lem1_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_no_psi_cond_decl,type,
% 0.31/0.46      hoasinduction_no_psi_cond: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2_gthm_decl,type,
% 0.31/0.46      induction2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem2v2_lthm_decl,type,
% 0.31/0.46      pushprop_lem2v2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasvar_decl,type,
% 0.31/0.46      hoasvar: subst > term > subst > $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoaslamnotap_decl,type,
% 0.31/0.46      hoaslamnotap: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(substmonoid_gthm_decl,type,
% 0.31/0.46      substmonoid_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(ulamvarsh_decl,type,
% 0.31/0.46      ulamvarsh: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(induction2_decl,type,
% 0.31/0.46      induction2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem3v2_decl,type,
% 0.31/0.46      pushprop_lem3v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem2v2_gthm_decl,type,
% 0.31/0.46      pushprop_lem2v2_gthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem1_lthm_decl,type,
% 0.31/0.46      pushprop_lem1_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2_decl,type,
% 0.31/0.46      hoasinduction_lem3v2: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axshiftcons_decl,type,
% 0.31/0.46      axshiftcons: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(termmset_decl,type,
% 0.31/0.46      termmset: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem0_lthm_decl,type,
% 0.31/0.46      pushprop_lem0_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasapnotvar_lthm_decl,type,
% 0.31/0.46      hoasapnotvar_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.31/0.46      hoasinduction_lem3v2_lthm: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_p_and_p_prime_decl,type,
% 0.31/0.46      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.31/0.46  
% 0.31/0.46  thf(axvarid_decl,type,
% 0.31/0.46      axvarid: $o ).
% 0.31/0.46  
% 0.31/0.46  thf(hoasinduction_lthm_3_decl,type,
% 0.31/0.46      hoasinduction_lthm_3: $o ).
% 0.31/0.46  
% 0.31/0.46  %----Types of the domains
% 0.31/0.46  thf(d_term_type,type,
% 0.31/0.46      d_term: $tType ).
% 0.31/0.46  
% 0.31/0.46  thf(d_subst_type,type,
% 0.31/0.46      d_subst: $tType ).
% 0.31/0.46  
% 0.31/0.46  %----Types of the promotion functions
% 0.31/0.46  thf(d2term_decl,type,
% 0.31/0.46      d2term: d_term > term ).
% 0.31/0.46  
% 0.31/0.46  thf(d2subst_decl,type,
% 0.31/0.46      d2subst: d_subst > subst ).
% 0.31/0.46  
% 0.31/0.46  %----Types of the domain elements
% 0.31/0.46  thf(d_one_decl,type,
% 0.31/0.46      d_one: d_term ).
% 0.31/0.46  
% 0.31/0.46  thf(d_id_decl,type,
% 0.31/0.46      d_id: d_subst ).
% 0.31/0.46  
% 0.31/0.46  thf(alg444_1,axiom,
% 0.31/0.46      ( ! [T: term] :
% 0.31/0.46        ? [DT: d_term] :
% 0.31/0.46          ( T
% 0.31/0.46          = ( d2term @ DT ) )
% 0.31/0.46      & ! [DT: d_term] : ( DT = d_one )
% 0.31/0.46      & ! [DT1: d_term,DT2: d_term] :
% 0.31/0.46          ( ( ( d2term @ DT1 )
% 0.31/0.46            = ( d2term @ DT2 ) )
% 0.31/0.46         => ( DT1 = DT2 ) )
% 0.31/0.46      & ! [S: subst] :
% 0.31/0.46        ? [DS: d_subst] :
% 0.31/0.46          ( S
% 0.31/0.46          = ( d2subst @ DS ) )
% 0.31/0.46      & ! [DS: d_subst] : ( DS = d_id )
% 0.31/0.46      & ! [DS1: d_subst,DS2: d_subst] :
% 0.31/0.46          ( ( ( d2subst @ DS1 )
% 0.31/0.46            = ( d2subst @ DS2 ) )
% 0.31/0.46         => ( DS1 = DS2 ) )
% 0.31/0.46      & ( one
% 0.31/0.46        = ( d2term @ d_one ) )
% 0.31/0.46      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.31/0.46        = ( d2term @ d_one ) )
% 0.31/0.46      & ( ( lam @ ( d2term @ d_one ) )
% 0.31/0.46        = ( d2term @ d_one ) )
% 0.31/0.46      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.31/0.46        = ( d2term @ d_one ) )
% 0.31/0.46      & ( id
% 0.31/0.46        = ( d2subst @ d_id ) )
% 0.31/0.46      & ( sh
% 0.31/0.46        = ( d2subst @ d_id ) )
% 0.31/0.46      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.31/0.46        = ( d2subst @ d_id ) )
% 0.31/0.46      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.31/0.46        = ( d2subst @ d_id ) )
% 0.31/0.46      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.31/0.46        = ( d2term @ d_one ) )
% 0.31/0.46      & ( hoaslam
% 0.31/0.46        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.31/0.46      & ( hoasinduction_p_and_p_prime
% 0.31/0.46        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.31/0.46            ! [X: term] :
% 0.31/0.46              ( ( Q @ X )
% 0.31/0.46              = ( P @ id @ X @ id ) ) ) )
% 0.31/0.46      & ( pushprop_p_and_p_prime
% 0.31/0.46        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.31/0.46            ! [X: term] :
% 0.31/0.46              ( ( Q @ X )
% 0.31/0.46              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.31/0.46      & ~ ( var @ ( d2term @ d_one ) )
% 0.31/0.46      & ( pushprop_lem1v2
% 0.31/0.46      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.31/0.46            ( ~ ( P @ A )
% 0.31/0.46            | ~ ! [X: term] :
% 0.31/0.46                  ( ( Q @ X )
% 0.31/0.46                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.31/0.46            | ( Q @ one ) ) )
% 0.31/0.46      & pushprop_lem1_gthm
% 0.31/0.46      & axmap
% 0.31/0.46      & pushprop_lem0_gthm
% 0.31/0.46      & ( shinj
% 0.31/0.46      <=> ! [A: term,B: term] :
% 0.31/0.46            ( ( ( sub @ A @ sh )
% 0.31/0.46             != ( sub @ B @ sh ) )
% 0.31/0.46            | ( A = B ) ) )
% 0.31/0.46      & hoasinduction_lem1v2
% 0.31/0.46      & hoasinduction_lem1v2_gthm
% 0.31/0.46      & ( induction2lem
% 0.31/0.46      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.31/0.46            ( ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ A )
% 0.31/0.46                  | ~ ( P @ B )
% 0.31/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46            | ~ ! [A: term] :
% 0.31/0.46                  ( ~ ! [B: term] :
% 0.31/0.46                        ( ~ ( P @ B )
% 0.31/0.46                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                  | ( P @ ( lam @ A ) ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( var @ B )
% 0.31/0.46                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.31/0.46            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.31/0.46      & ( hoasinduction_lem3v2_f
% 0.31/0.46      <=> ! [B: term] :
% 0.31/0.46            ~ ! [F: subst > term > term] :
% 0.31/0.46                ~ ! [A: term,M: subst] :
% 0.31/0.46                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.31/0.46                    = ( F @ M @ A ) ) )
% 0.31/0.46      & axvarshift
% 0.31/0.46      & ( hoasapinj2
% 0.31/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.31/0.46             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.31/0.46            | ( C = D ) ) )
% 0.31/0.46      & hoasapnotvar_gthm
% 0.31/0.46      & ( hoasapinj1
% 0.31/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.31/0.46             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.31/0.46            | ( A = B ) ) )
% 0.31/0.46      & ~ ulamvar1
% 0.31/0.46      & ( induction2lem_lthm
% 0.31/0.46      <=> ( ! [A: term,M: subst] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.31/0.46         => ( ! [A: term,M: subst] :
% 0.31/0.46                ( M
% 0.31/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.31/0.46           => ( ! [M: subst] :
% 0.31/0.46                  ( M
% 0.31/0.46                  = ( comp @ M @ id ) )
% 0.31/0.46             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.31/0.46                    ( ~ ! [A: term] :
% 0.31/0.46                          ( ~ ( var @ A )
% 0.31/0.46                          | ( P @ A ) )
% 0.31/0.46                    | ~ ! [A: term,B: term] :
% 0.31/0.46                          ( ~ ( P @ A )
% 0.31/0.46                          | ~ ( P @ B )
% 0.31/0.46                          | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                    | ~ ! [A: term] :
% 0.31/0.46                          ( ~ ( P @ A )
% 0.31/0.46                          | ( P @ ( lam @ A ) ) )
% 0.31/0.46                    | ( P @ Bound_variable_2140 ) )
% 0.31/0.46               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.31/0.46                    ( ~ ! [A: term,B: term] :
% 0.31/0.46                          ( ~ ( P @ A )
% 0.31/0.46                          | ~ ( P @ B )
% 0.31/0.46                          | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                    | ~ ! [A: term] :
% 0.31/0.46                          ( ~ ! [B: term] :
% 0.31/0.46                                ( ~ ( P @ B )
% 0.31/0.46                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                          | ( P @ ( lam @ A ) ) )
% 0.31/0.46                    | ~ ! [B: term] :
% 0.31/0.46                          ( ~ ( var @ B )
% 0.31/0.46                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.31/0.46                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.31/0.46      & hoasinduction_lem3v2_gthm
% 0.31/0.46      & apnotvar
% 0.31/0.46      & pushprop_lthm_orig
% 0.31/0.46      & ( hoasinduction_lem3v2_f_lthm
% 0.31/0.46      <=> ! [B: term] :
% 0.31/0.46            ~ ! [F: subst > term > term] :
% 0.31/0.46                ~ ! [A: term,M: subst] :
% 0.31/0.46                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.31/0.46                    = ( F @ M @ A ) ) )
% 0.31/0.46      & ( hoasinduction_lthm
% 0.31/0.46      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.31/0.46              ( ~ ! [A: term] :
% 0.31/0.46                    ( ~ ( var @ A )
% 0.31/0.46                    | ( P @ A ) )
% 0.31/0.46              | ~ ! [A: term,B: term] :
% 0.31/0.46                    ( ~ ( P @ A )
% 0.31/0.46                    | ~ ( P @ B )
% 0.31/0.46                    | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46              | ~ ! [A: term] :
% 0.31/0.46                    ( ~ ! [B: term] :
% 0.31/0.46                          ( ~ ( P @ B )
% 0.31/0.46                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                    | ( P @ ( lam @ A ) ) )
% 0.31/0.46              | ( P @ Bound_variable_2367 ) )
% 0.31/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.31/0.46                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46                | ~ ! [A: term,B: term] :
% 0.31/0.46                      ( ~ ( P @ id @ A @ id )
% 0.31/0.46                      | ~ ( P @ id @ B @ id )
% 0.31/0.46                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.31/0.46                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.31/0.46                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.31/0.46           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46                  | ~ ! [F: subst > term > term] :
% 0.31/0.46                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                        | ~ ! [A: term] :
% 0.31/0.46                              ( ~ ( P @ id @ A @ id )
% 0.31/0.46                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                  | ~ ! [B: term] :
% 0.31/0.46                        ( ~ ( P @ id @ B @ id )
% 0.31/0.46                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.31/0.46             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.31/0.46                        | ( P @ id @ A @ id ) )
% 0.31/0.46                  | ~ ! [A: term,B: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ~ ( P @ id @ B @ id )
% 0.31/0.46                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46                  | ~ ! [F: subst > term > term] :
% 0.31/0.46                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                        | ~ ! [A: term] :
% 0.31/0.46                              ( ~ ( P @ id @ A @ id )
% 0.31/0.46                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.31/0.46      & ( hoasinduction_no_psi_cond_lthm
% 0.31/0.46      <=> ( ! [P: subst > term > subst > $o] :
% 0.31/0.46              ~ ! [Q: term > $o] :
% 0.31/0.46                  ~ ! [X: term] :
% 0.31/0.46                      ( ( Q @ X )
% 0.31/0.46                      = ( P @ id @ X @ id ) )
% 0.31/0.46         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.31/0.46                ( ~ ! [A: term] :
% 0.31/0.46                      ( ~ ( var @ A )
% 0.31/0.46                      | ( P @ A ) )
% 0.31/0.46                | ~ ! [A: term,B: term] :
% 0.31/0.46                      ( ~ ( P @ A )
% 0.31/0.46                      | ~ ( P @ B )
% 0.31/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                | ~ ! [A: term] :
% 0.31/0.46                      ( ~ ! [B: term] :
% 0.31/0.46                            ( ~ ( P @ B )
% 0.31/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                      | ( P @ ( lam @ A ) ) )
% 0.31/0.46                | ( P @ Bound_variable_2367 ) )
% 0.31/0.46           => ( ! [A: term] :
% 0.31/0.46                  ( A
% 0.31/0.46                  = ( sub @ A @ id ) )
% 0.31/0.46             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.31/0.46                    ( ~ ! [F: subst > term > term] :
% 0.31/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                          | ~ ! [A: term] :
% 0.31/0.46                                ( ~ ( P @ id @ A @ id )
% 0.31/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                    | ~ ! [X: term] :
% 0.31/0.46                          ( ( Q @ X )
% 0.31/0.46                          = ( P @ id @ X @ id ) )
% 0.31/0.46                    | ~ ! [B: term] :
% 0.31/0.46                          ( ~ ( Q @ B )
% 0.31/0.46                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.31/0.46                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.31/0.46               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.31/0.46                    ( ~ ! [A: term,B: term] :
% 0.31/0.46                          ( ~ ( P @ id @ A @ id )
% 0.31/0.46                          | ~ ( P @ id @ B @ id )
% 0.31/0.46                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46                    | ~ ! [F: subst > term > term] :
% 0.31/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                          | ~ ! [A: term] :
% 0.31/0.46                                ( ~ ( P @ id @ A @ id )
% 0.31/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.31/0.46      & ( hoaslaminj
% 0.31/0.46      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.31/0.46                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46            | ( ( lam @ ( F @ sh @ one ) )
% 0.31/0.46             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.31/0.46            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.31/0.46              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.31/0.46      & ( hoasinduction_lem3aaa
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.31/0.46            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.31/0.46                  ( ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.31/0.46                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.31/0.46                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.31/0.46                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.31/0.46                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.31/0.46                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.31/0.46      & induction2lem_gthm
% 0.31/0.46      & ( hoasinduction_lem3aa_lthm
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.31/0.46            ( ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.31/0.46      & ( hoasinduction_lem3
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46            | ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.31/0.46      & ( hoasinduction_lem2
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46            | ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ A @ id )
% 0.31/0.46                  | ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.31/0.46            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.31/0.46            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.31/0.46      & ( termmset_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) ) ) )
% 0.31/0.46      & hoasinduction_lem1
% 0.31/0.46      & hoaslamnotap_lthm
% 0.31/0.46      & ( pushprop_lem1v2_lthm
% 0.31/0.46      <=> ( ! [A: term,M: subst] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.31/0.46         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.31/0.46              ( ~ ( P @ A )
% 0.31/0.46              | ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.31/0.46              | ( Q @ one ) ) ) )
% 0.31/0.46      & hoasapnotvar
% 0.31/0.46      & ( hoasinduction_lem0
% 0.31/0.46      <=> ! [P: subst > term > subst > $o] :
% 0.31/0.46            ~ ! [Q: term > $o] :
% 0.31/0.46                ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ id @ X @ id ) ) )
% 0.31/0.46      & ( hoasinduction
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46            | ~ ! [A: term] :
% 0.31/0.46                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.31/0.46                  | ( P @ id @ A @ id ) )
% 0.31/0.46            | ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ A @ id )
% 0.31/0.46                  | ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46            | ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.31/0.46      & hoasinduction_gthm
% 0.31/0.46      & axapp
% 0.31/0.46      & hoaslamnotvar_lthm
% 0.31/0.46      & pushprop_lem3v2_lthm
% 0.31/0.46      & ( hoasinduction_lem3b_lthm
% 0.31/0.46      <=> ! [B: term] :
% 0.31/0.46            ~ ! [F: subst > term > term] :
% 0.31/0.46                ( ( F @ sh @ one )
% 0.31/0.46               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.31/0.46      & ulamvarind
% 0.31/0.46      & ( induction
% 0.31/0.46      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.31/0.46            ( ~ ! [A: term] :
% 0.31/0.46                  ( ~ ( var @ A )
% 0.31/0.46                  | ( P @ A ) )
% 0.31/0.46            | ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ A )
% 0.31/0.46                  | ~ ( P @ B )
% 0.31/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46            | ~ ! [A: term] :
% 0.31/0.46                  ( ~ ( P @ A )
% 0.31/0.46                  | ( P @ ( lam @ A ) ) )
% 0.31/0.46            | ( P @ Bound_variable_2140 ) ) )
% 0.31/0.46      & ( hoasinduction_lem3a_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.31/0.46                ( ~ ! [F: subst > term > term] :
% 0.31/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                      | ~ ! [A: term] :
% 0.31/0.46                            ( ~ ( P @ id @ A @ id )
% 0.31/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( P @ id @ B @ id )
% 0.31/0.46                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.31/0.46           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.31/0.46                ( ~ ! [F: subst > term > term] :
% 0.31/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                      | ~ ! [A: term] :
% 0.31/0.46                            ( ~ ( P @ id @ A @ id )
% 0.31/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( P @ id @ B @ id )
% 0.31/0.46                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.31/0.46      & termmset_gthm
% 0.31/0.46      & ( hoasinduction_lem3aa
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.31/0.46            ( ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.31/0.46      & pushprop_lem1v2_gthm
% 0.31/0.46      & hoaslamnotap_gthm
% 0.31/0.46      & hoaslamnotvar_gthm
% 0.31/0.46      & hoasinduction_lem3b_gthm
% 0.31/0.46      & pushprop_lem2v2
% 0.31/0.46      & hoasinduction_lem3a_gthm
% 0.31/0.46      & axclos
% 0.31/0.46      & axassoc
% 0.31/0.46      & ( hoasinduction_lem2v2
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46            | ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ A @ id )
% 0.31/0.46                  | ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46            | ~ ! [X: term] :
% 0.31/0.46                  ( ( Q @ X )
% 0.31/0.46                  = ( P @ id @ X @ id ) )
% 0.31/0.46            | ~ ( Q @ Bound_variable_2820 )
% 0.31/0.46            | ~ ( Q @ Bound_variable_2822 )
% 0.31/0.46            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.31/0.46      & pushprop_lthm
% 0.31/0.46      & ( apinj2
% 0.31/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46            ( ( ( ap @ A @ C )
% 0.31/0.46             != ( ap @ B @ D ) )
% 0.31/0.46            | ( C = D ) ) )
% 0.31/0.46      & ( apinj1
% 0.31/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46            ( ( ( ap @ A @ C )
% 0.31/0.46             != ( ap @ B @ D ) )
% 0.31/0.46            | ( A = B ) ) )
% 0.31/0.46      & ( hoasapinj2_lthm
% 0.31/0.46      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46              ( ( ( ap @ A @ C )
% 0.31/0.46               != ( ap @ B @ D ) )
% 0.31/0.46              | ( C = D ) )
% 0.31/0.46         => ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.31/0.46               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.31/0.46              | ( C = D ) ) ) )
% 0.31/0.46      & ( hoasinduction_lem3v2a
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.31/0.46            ( ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [X: term] :
% 0.31/0.46                  ( ( Q @ X )
% 0.31/0.46                  = ( P @ id @ X @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( Q @ B )
% 0.31/0.46                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.31/0.46            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.31/0.46      & ( hoasapinj1_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ( ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46                ( ( ( ap @ A @ C )
% 0.31/0.46                 != ( ap @ B @ D ) )
% 0.31/0.46                | ( A = B ) )
% 0.31/0.46           => ! [A: term,B: term,C: term,D: term] :
% 0.31/0.46                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.31/0.46                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.31/0.46                | ( A = B ) ) ) ) )
% 0.31/0.46      & ( hoaslaminj_lthm
% 0.31/0.46      <=> ( ! [A: term,M: subst] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.31/0.46         => ( ! [A: term,M: subst] :
% 0.31/0.46                ( M
% 0.31/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.31/0.46           => ( ! [A: term,B: term] :
% 0.31/0.46                  ( ( ( lam @ A )
% 0.31/0.46                   != ( lam @ B ) )
% 0.31/0.46                  | ( A = B ) )
% 0.31/0.46             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.31/0.46                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ( ( lam @ ( F @ sh @ one ) )
% 0.31/0.46                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.31/0.46                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.31/0.46                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.31/0.46      & ( axvarcons
% 0.31/0.46      <=> ! [A: term,M: subst] :
% 0.31/0.46            ( A
% 0.31/0.46            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.31/0.46      & ( axscons
% 0.31/0.46      <=> ! [M: subst] :
% 0.31/0.46            ( M
% 0.31/0.46            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.31/0.46      & hoasinduction_lem2v2_gthm
% 0.31/0.46      & ( axidr
% 0.31/0.46      <=> ! [M: subst] :
% 0.31/0.46            ( M
% 0.31/0.46            = ( comp @ M @ id ) ) )
% 0.31/0.46      & ( pushprop_lem1
% 0.31/0.46      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.31/0.46            ( ~ ( P @ A )
% 0.31/0.46            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.31/0.46      & ( laminj
% 0.31/0.46      <=> ! [A: term,B: term] :
% 0.31/0.46            ( ( ( lam @ A )
% 0.31/0.46             != ( lam @ B ) )
% 0.31/0.46            | ( A = B ) ) )
% 0.31/0.46      & ( hoasinduction_lem3_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.31/0.46                ( ~ ! [F: subst > term > term] :
% 0.31/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                      | ~ ! [A: term] :
% 0.31/0.46                            ( ~ ( P @ id @ A @ id )
% 0.31/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( P @ id @ B @ id )
% 0.31/0.46                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.31/0.46           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.31/0.46                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46                | ~ ! [F: subst > term > term] :
% 0.31/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                      | ~ ! [A: term] :
% 0.31/0.46                            ( ~ ( P @ id @ A @ id )
% 0.31/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( P @ id @ B @ id )
% 0.31/0.46                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.31/0.46      & ( pushprop_lem0
% 0.31/0.46      <=> ! [P: term > $o,A: term,M: subst] :
% 0.31/0.46            ~ ! [Q: term > $o] :
% 0.31/0.46                ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.31/0.46      & pushprop_gthm
% 0.31/0.46      & axabs
% 0.31/0.46      & ( hoasinduction_lem3v2a_lthm
% 0.31/0.46      <=> ( ! [B: term] :
% 0.31/0.46              ~ ! [F: subst > term > term] :
% 0.31/0.46                  ~ ! [A: term,M: subst] :
% 0.31/0.46                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.31/0.46                      = ( F @ M @ A ) )
% 0.31/0.46         => ( ! [A: term] :
% 0.31/0.46                ( A
% 0.31/0.46                = ( sub @ A @ id ) )
% 0.31/0.46           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.31/0.46                ( ~ ! [F: subst > term > term] :
% 0.31/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                      | ~ ! [A: term] :
% 0.31/0.46                            ( ~ ( P @ id @ A @ id )
% 0.31/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                | ~ ! [X: term] :
% 0.31/0.46                      ( ( Q @ X )
% 0.31/0.46                      = ( P @ id @ X @ id ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( Q @ B )
% 0.31/0.46                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.31/0.46                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.31/0.46      & hoasinduction_lem2_lthm
% 0.31/0.46      & hoasapinj2_gthm
% 0.31/0.46      & hoasinduction_lem1_lthm
% 0.31/0.46      & ~ lamnotap
% 0.31/0.46      & hoasapinj1_gthm
% 0.31/0.46      & hoaslamnotvar
% 0.31/0.46      & ( axidl
% 0.31/0.46      <=> ! [M: subst] :
% 0.31/0.46            ( M
% 0.31/0.46            = ( comp @ id @ M ) ) )
% 0.31/0.46      & hoaslaminj_gthm
% 0.31/0.46      & ( induction2_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.31/0.46                ( ~ ! [A: term,B: term] :
% 0.31/0.46                      ( ~ ( P @ A )
% 0.31/0.46                      | ~ ( P @ B )
% 0.31/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                | ~ ! [A: term] :
% 0.31/0.46                      ( ~ ! [B: term] :
% 0.31/0.46                            ( ~ ( P @ B )
% 0.31/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                      | ( P @ ( lam @ A ) ) )
% 0.31/0.46                | ~ ! [B: term] :
% 0.31/0.46                      ( ~ ( var @ B )
% 0.31/0.46                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.31/0.46                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.31/0.46           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.31/0.46                ( ~ ! [A: term] :
% 0.31/0.46                      ( ~ ( var @ A )
% 0.31/0.46                      | ( P @ A ) )
% 0.31/0.46                | ~ ! [A: term,B: term] :
% 0.31/0.46                      ( ~ ( P @ A )
% 0.31/0.46                      | ~ ( P @ B )
% 0.31/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                | ~ ! [A: term] :
% 0.31/0.46                      ( ~ ! [B: term] :
% 0.31/0.46                            ( ~ ( P @ B )
% 0.31/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                      | ( P @ ( lam @ A ) ) )
% 0.31/0.46                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.31/0.46      & ( hoasinduction_lem0_lthm
% 0.31/0.46      <=> ! [P: subst > term > subst > $o] :
% 0.31/0.46            ~ ! [Q: term > $o] :
% 0.31/0.46                ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ id @ X @ id ) ) )
% 0.31/0.46      & ( substmonoid_lthm
% 0.31/0.46      <=> ( ! [M: subst] :
% 0.31/0.46              ( M
% 0.31/0.46              = ( comp @ id @ M ) )
% 0.31/0.46         => ( ! [M: subst] :
% 0.31/0.46                ( M
% 0.31/0.46                = ( comp @ M @ id ) )
% 0.31/0.46           => ( ! [M: subst] :
% 0.31/0.46                  ( M
% 0.31/0.46                  = ( comp @ id @ M ) )
% 0.31/0.46              & ! [M: subst] :
% 0.31/0.46                  ( M
% 0.31/0.46                  = ( comp @ M @ id ) ) ) ) ) )
% 0.31/0.46      & pushprop
% 0.31/0.46      & hoasinduction_lem3_gthm
% 0.31/0.46      & hoasinduction_lem2_gthm
% 0.31/0.46      & ( hoasinduction_lem3b
% 0.31/0.46      <=> ! [B: term] :
% 0.31/0.46            ~ ! [F: subst > term > term] :
% 0.31/0.46                ( ( F @ sh @ one )
% 0.31/0.46               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.31/0.46      & ( substmonoid
% 0.31/0.46      <=> ( ! [M: subst] :
% 0.31/0.46              ( M
% 0.31/0.46              = ( comp @ id @ M ) )
% 0.31/0.46          & ! [M: subst] :
% 0.31/0.46              ( M
% 0.31/0.46              = ( comp @ M @ id ) ) ) )
% 0.31/0.46      & lamnotvar
% 0.31/0.46      & ( hoasinduction_lem3a
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.31/0.46            ( ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.31/0.46      & hoasinduction_lem1_gthm
% 0.31/0.46      & ( hoasinduction_no_psi_cond
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.31/0.46            ( ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ id @ A @ id )
% 0.31/0.46                  | ~ ( P @ id @ B @ id )
% 0.31/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46            | ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.31/0.46      & induction2_gthm
% 0.31/0.46      & pushprop_lem2v2_lthm
% 0.31/0.46      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.31/0.46      & ( hoaslamnotap
% 0.31/0.46      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46            | ( ( lam @ ( F @ sh @ one ) )
% 0.31/0.46             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.31/0.46      & substmonoid_gthm
% 0.31/0.46      & ulamvarsh
% 0.31/0.46      & ( induction2
% 0.31/0.46      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.31/0.46            ( ~ ! [A: term] :
% 0.31/0.46                  ( ~ ( var @ A )
% 0.31/0.46                  | ( P @ A ) )
% 0.31/0.46            | ~ ! [A: term,B: term] :
% 0.31/0.46                  ( ~ ( P @ A )
% 0.31/0.46                  | ~ ( P @ B )
% 0.31/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46            | ~ ! [A: term] :
% 0.31/0.46                  ( ~ ! [B: term] :
% 0.31/0.46                        ( ~ ( P @ B )
% 0.31/0.46                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                  | ( P @ ( lam @ A ) ) )
% 0.31/0.46            | ( P @ Bound_variable_2367 ) ) )
% 0.31/0.46      & pushprop_lem3v2
% 0.31/0.46      & pushprop_lem2v2_gthm
% 0.31/0.46      & ( pushprop_lem1_lthm
% 0.31/0.46      <=> ( ! [A: term,M: subst] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.31/0.46         => ( ! [A: term,M: subst] :
% 0.31/0.46                ( M
% 0.31/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.31/0.46           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.31/0.46                ( ~ ( P @ A )
% 0.31/0.46                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.31/0.46      & ( hoasinduction_lem3v2
% 0.31/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.31/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46            | ~ ! [F: subst > term > term] :
% 0.31/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                  | ~ ! [A: term] :
% 0.31/0.46                        ( ~ ( P @ id @ A @ id )
% 0.31/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46            | ~ ! [X: term] :
% 0.31/0.46                  ( ( Q @ X )
% 0.31/0.46                  = ( P @ id @ X @ id ) )
% 0.31/0.46            | ~ ! [B: term] :
% 0.31/0.46                  ( ~ ( Q @ B )
% 0.31/0.46                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.31/0.46            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.31/0.46      & ( axshiftcons
% 0.31/0.46      <=> ! [A: term,M: subst] :
% 0.31/0.46            ( M
% 0.31/0.46            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.31/0.46      & ( termmset
% 0.31/0.46      <=> ! [A: term] :
% 0.31/0.46            ( A
% 0.31/0.46            = ( sub @ A @ id ) ) )
% 0.31/0.46      & ( pushprop_lem0_lthm
% 0.31/0.46      <=> ! [P: term > $o,A: term,M: subst] :
% 0.31/0.46            ~ ! [Q: term > $o] :
% 0.31/0.46                ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.31/0.46      & hoasapnotvar_lthm
% 0.31/0.46      & ( hoasinduction_lem3v2_lthm
% 0.31/0.46      <=> ( ! [A: term] :
% 0.31/0.46              ( A
% 0.31/0.46              = ( sub @ A @ id ) )
% 0.31/0.46         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.31/0.46              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46              | ~ ! [F: subst > term > term] :
% 0.31/0.46                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                    | ~ ! [A: term] :
% 0.31/0.46                          ( ~ ( P @ id @ A @ id )
% 0.31/0.46                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46              | ~ ! [X: term] :
% 0.31/0.46                    ( ( Q @ X )
% 0.31/0.46                    = ( P @ id @ X @ id ) )
% 0.31/0.46              | ~ ! [B: term] :
% 0.31/0.46                    ( ~ ( Q @ B )
% 0.31/0.46                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.31/0.46              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.31/0.46      & ( axvarid
% 0.31/0.46      <=> ! [A: term] :
% 0.31/0.46            ( A
% 0.31/0.46            = ( sub @ A @ id ) ) )
% 0.31/0.46      & ( hoasinduction_lthm_3
% 0.31/0.46      <=> ( ! [P: subst > term > subst > $o] :
% 0.31/0.46              ~ ! [Q: term > $o] :
% 0.31/0.46                  ~ ! [X: term] :
% 0.31/0.46                      ( ( Q @ X )
% 0.31/0.46                      = ( P @ id @ X @ id ) )
% 0.31/0.46         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.31/0.46                ( ~ ! [A: term] :
% 0.31/0.46                      ( ~ ( var @ A )
% 0.31/0.46                      | ( P @ A ) )
% 0.31/0.46                | ~ ! [A: term,B: term] :
% 0.31/0.46                      ( ~ ( P @ A )
% 0.31/0.46                      | ~ ( P @ B )
% 0.31/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.31/0.46                | ~ ! [A: term] :
% 0.31/0.46                      ( ~ ! [B: term] :
% 0.31/0.46                            ( ~ ( P @ B )
% 0.31/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.31/0.46                      | ( P @ ( lam @ A ) ) )
% 0.31/0.46                | ( P @ Bound_variable_2367 ) )
% 0.31/0.46           => ( ! [A: term] :
% 0.31/0.46                  ( A
% 0.31/0.46                  = ( sub @ A @ id ) )
% 0.31/0.46             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.31/0.46                    ( ~ ! [F: subst > term > term] :
% 0.31/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                          | ~ ! [A: term] :
% 0.31/0.46                                ( ~ ( P @ id @ A @ id )
% 0.31/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                    | ~ ! [X: term] :
% 0.31/0.46                          ( ( Q @ X )
% 0.31/0.46                          = ( P @ id @ X @ id ) )
% 0.31/0.46                    | ~ ! [B: term] :
% 0.31/0.46                          ( ~ ( Q @ B )
% 0.31/0.46                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.31/0.46                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.31/0.46               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.31/0.46                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.31/0.46                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.31/0.46                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.31/0.46                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.31/0.46                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.31/0.46                    | ~ ! [A: term] :
% 0.31/0.46                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.31/0.46                          | ( P @ id @ A @ id ) )
% 0.31/0.46                    | ~ ! [A: term,B: term] :
% 0.31/0.46                          ( ~ ( P @ id @ A @ id )
% 0.31/0.46                          | ~ ( P @ id @ B @ id )
% 0.31/0.46                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.31/0.46                    | ~ ! [F: subst > term > term] :
% 0.31/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.31/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.31/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.31/0.46                          | ~ ! [A: term] :
% 0.31/0.46                                ( ~ ( P @ id @ A @ id )
% 0.31/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.31/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.31/0.46                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.31/0.46  
% 0.31/0.46  thf(pushprop_lem2v2,conjecture,
% 0.31/0.46      ( pushprop_lem2v2
% 0.31/0.46      = ( ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.31/0.46            ( ( pushprop_p_and_p_prime @ A @ M @ P @ Q )
% 0.31/0.46           => ( ! [B: term] :
% 0.31/0.46                  ( ( var @ B )
% 0.31/0.46                 => ( P @ ( sub @ B @ M ) ) )
% 0.31/0.46             => ! [C: term] :
% 0.31/0.46                  ( ( var @ C )
% 0.31/0.46                 => ( ( Q @ C )
% 0.31/0.46                   => ( Q @ ( sub @ C @ sh ) ) ) ) ) ) ) ) ).
% 0.31/0.46  
% 0.31/0.46  %------------------------------------------------------------------------------
% 0.31/0.46  ------------------------
% 2.44/1.47  ---- Embedded in THF ---
% 2.44/1.48  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.44/1.48  %%% Generated on Tue May 05 08:59:26 EDT 2026
% 2.44/1.48  %%% using '$$dhol' embedding, version 1.3.0.
% 2.44/1.48  %%% Logic specification used:
% 2.44/1.48  %%% thf(spec, logic, $$dhol).
% 2.44/1.48  
% 2.44/1.48  % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.3qoP4JCMwi/DTF2DTF20450.p
% See solution above
% 2.44/1.48  ------------------------
% 2.60/1.51  ---- Cleaned THF ---
% 2.60/1.51  thf(term_type,type,
% 2.60/1.51      term: $tType ).
% 2.60/1.51  
% 2.60/1.51  thf(subst_type,type,
% 2.60/1.51      subst: $tType ).
% 2.60/1.51  
% 2.60/1.51  thf(one_decl,type,
% 2.60/1.51      one: term ).
% 2.60/1.51  
% 2.60/1.51  thf(ap_decl,type,
% 2.60/1.51      ap: term > term > term ).
% 2.60/1.51  
% 2.60/1.51  thf(lam_decl,type,
% 2.60/1.51      lam: term > term ).
% 2.60/1.51  
% 2.60/1.51  thf(sub_decl,type,
% 2.60/1.51      sub: term > subst > term ).
% 2.60/1.51  
% 2.60/1.51  thf(id_decl,type,
% 2.60/1.51      id: subst ).
% 2.60/1.51  
% 2.60/1.51  thf(sh_decl,type,
% 2.60/1.51      sh: subst ).
% 2.60/1.51  
% 2.60/1.51  thf(push_decl,type,
% 2.60/1.51      push: term > subst > subst ).
% 2.60/1.51  
% 2.60/1.51  thf(comp_decl,type,
% 2.60/1.51      comp: subst > subst > subst ).
% 2.60/1.51  
% 2.60/1.51  thf(var_decl,type,
% 2.60/1.51      var: term > $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1v2_decl,type,
% 2.60/1.51      pushprop_lem1v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1_gthm_decl,type,
% 2.60/1.51      pushprop_lem1_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axmap_decl,type,
% 2.60/1.51      axmap: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem0_gthm_decl,type,
% 2.60/1.51      pushprop_lem0_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(shinj_decl,type,
% 2.60/1.51      shinj: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem1v2_decl,type,
% 2.60/1.51      hoasinduction_lem1v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem1v2_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem1v2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasap_decl,type,
% 2.60/1.51      hoasap: subst > term > subst > term > term ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2lem_decl,type,
% 2.60/1.51      induction2lem: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2_f_decl,type,
% 2.60/1.51      hoasinduction_lem3v2_f: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axvarshift_decl,type,
% 2.60/1.51      axvarshift: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj2_decl,type,
% 2.60/1.51      hoasapinj2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapnotvar_gthm_decl,type,
% 2.60/1.51      hoasapnotvar_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj1_decl,type,
% 2.60/1.51      hoasapinj1: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(ulamvar1_decl,type,
% 2.60/1.51      ulamvar1: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2lem_lthm_decl,type,
% 2.60/1.51      induction2lem_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem3v2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(apnotvar_decl,type,
% 2.60/1.51      apnotvar: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lthm_orig_decl,type,
% 2.60/1.51      pushprop_lthm_orig: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3v2_f_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lthm_decl,type,
% 2.60/1.51      hoasinduction_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 2.60/1.51      hoasinduction_no_psi_cond_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslaminj_decl,type,
% 2.60/1.51      hoaslaminj: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3aaa_decl,type,
% 2.60/1.51      hoasinduction_lem3aaa: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2lem_gthm_decl,type,
% 2.60/1.51      induction2lem_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3aa_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3aa_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3_decl,type,
% 2.60/1.51      hoasinduction_lem3: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem2_decl,type,
% 2.60/1.51      hoasinduction_lem2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(termmset_lthm_decl,type,
% 2.60/1.51      termmset_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem1_decl,type,
% 2.60/1.51      hoasinduction_lem1: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotap_lthm_decl,type,
% 2.60/1.51      hoaslamnotap_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1v2_lthm_decl,type,
% 2.60/1.51      pushprop_lem1v2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapnotvar_decl,type,
% 2.60/1.51      hoasapnotvar: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem0_decl,type,
% 2.60/1.51      hoasinduction_lem0: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_decl,type,
% 2.60/1.51      hoasinduction: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_gthm_decl,type,
% 2.60/1.51      hoasinduction_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axapp_decl,type,
% 2.60/1.51      axapp: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotvar_lthm_decl,type,
% 2.60/1.51      hoaslamnotvar_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem3v2_lthm_decl,type,
% 2.60/1.51      pushprop_lem3v2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3b_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3b_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(ulamvarind_decl,type,
% 2.60/1.51      ulamvarind: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction_decl,type,
% 2.60/1.51      induction: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3a_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3a_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(termmset_gthm_decl,type,
% 2.60/1.51      termmset_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3aa_decl,type,
% 2.60/1.51      hoasinduction_lem3aa: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1v2_gthm_decl,type,
% 2.60/1.51      pushprop_lem1v2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotap_gthm_decl,type,
% 2.60/1.51      hoaslamnotap_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotvar_gthm_decl,type,
% 2.60/1.51      hoaslamnotvar_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3b_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem3b_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem2v2_decl,type,
% 2.60/1.51      pushprop_lem2v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3a_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem3a_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axclos_decl,type,
% 2.60/1.51      axclos: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axassoc_decl,type,
% 2.60/1.51      axassoc: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem2v2_decl,type,
% 2.60/1.51      hoasinduction_lem2v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lthm_decl,type,
% 2.60/1.51      pushprop_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(apinj2_decl,type,
% 2.60/1.51      apinj2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(apinj1_decl,type,
% 2.60/1.51      apinj1: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj2_lthm_decl,type,
% 2.60/1.51      hoasapinj2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2a_decl,type,
% 2.60/1.51      hoasinduction_lem3v2a: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj1_lthm_decl,type,
% 2.60/1.51      hoasapinj1_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslaminj_lthm_decl,type,
% 2.60/1.51      hoaslaminj_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axvarcons_decl,type,
% 2.60/1.51      axvarcons: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslam_decl,type,
% 2.60/1.51      hoaslam: subst > ( subst > term > term ) > term ).
% 2.60/1.51  
% 2.60/1.51  thf(axscons_decl,type,
% 2.60/1.51      axscons: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem2v2_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem2v2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axidr_decl,type,
% 2.60/1.51      axidr: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1_decl,type,
% 2.60/1.51      pushprop_lem1: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(laminj_decl,type,
% 2.60/1.51      laminj: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem0_decl,type,
% 2.60/1.51      pushprop_lem0: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_gthm_decl,type,
% 2.60/1.51      pushprop_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axabs_decl,type,
% 2.60/1.51      axabs: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3v2a_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem2_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj2_gthm_decl,type,
% 2.60/1.51      hoasapinj2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_p_and_p_prime_decl,type,
% 2.60/1.51      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem1_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem1_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(lamnotap_decl,type,
% 2.60/1.51      lamnotap: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapinj1_gthm_decl,type,
% 2.60/1.51      hoasapinj1_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotvar_decl,type,
% 2.60/1.51      hoaslamnotvar: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axidl_decl,type,
% 2.60/1.51      axidl: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslaminj_gthm_decl,type,
% 2.60/1.51      hoaslaminj_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2_lthm_decl,type,
% 2.60/1.51      induction2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem0_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem0_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(substmonoid_lthm_decl,type,
% 2.60/1.51      substmonoid_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_decl,type,
% 2.60/1.51      pushprop: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem3_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem2_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3b_decl,type,
% 2.60/1.51      hoasinduction_lem3b: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(substmonoid_decl,type,
% 2.60/1.51      substmonoid: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(lamnotvar_decl,type,
% 2.60/1.51      lamnotvar: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3a_decl,type,
% 2.60/1.51      hoasinduction_lem3a: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem1_gthm_decl,type,
% 2.60/1.51      hoasinduction_lem1_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_no_psi_cond_decl,type,
% 2.60/1.51      hoasinduction_no_psi_cond: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2_gthm_decl,type,
% 2.60/1.51      induction2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem2v2_lthm_decl,type,
% 2.60/1.51      pushprop_lem2v2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasvar_decl,type,
% 2.60/1.51      hoasvar: subst > term > subst > $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoaslamnotap_decl,type,
% 2.60/1.51      hoaslamnotap: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(substmonoid_gthm_decl,type,
% 2.60/1.51      substmonoid_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(ulamvarsh_decl,type,
% 2.60/1.51      ulamvarsh: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(induction2_decl,type,
% 2.60/1.51      induction2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem3v2_decl,type,
% 2.60/1.51      pushprop_lem3v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem2v2_gthm_decl,type,
% 2.60/1.51      pushprop_lem2v2_gthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem1_lthm_decl,type,
% 2.60/1.51      pushprop_lem1_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2_decl,type,
% 2.60/1.51      hoasinduction_lem3v2: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axshiftcons_decl,type,
% 2.60/1.51      axshiftcons: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(termmset_decl,type,
% 2.60/1.51      termmset: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_lem0_lthm_decl,type,
% 2.60/1.51      pushprop_lem0_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasapnotvar_lthm_decl,type,
% 2.60/1.51      hoasapnotvar_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lem3v2_lthm_decl,type,
% 2.60/1.51      hoasinduction_lem3v2_lthm: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(pushprop_p_and_p_prime_decl,type,
% 2.60/1.51      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 2.60/1.51  
% 2.60/1.51  thf(axvarid_decl,type,
% 2.60/1.51      axvarid: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(hoasinduction_lthm_3_decl,type,
% 2.60/1.51      hoasinduction_lthm_3: $o ).
% 2.60/1.51  
% 2.60/1.51  thf(d_term_type,type,
% 2.60/1.51      d_term: $tType ).
% 2.60/1.51  
% 2.60/1.51  thf(d_subst_type,type,
% 2.60/1.51      d_subst: $tType ).
% 2.60/1.51  
% 2.60/1.51  thf(d2term_decl,type,
% 2.60/1.51      d2term: d_term > term ).
% 2.60/1.51  
% 2.60/1.51  thf(d2subst_decl,type,
% 2.60/1.51      d2subst: d_subst > subst ).
% 2.60/1.51  
% 2.60/1.51  thf(d_one_decl,type,
% 2.60/1.51      d_one: d_term ).
% 2.60/1.51  
% 2.60/1.51  thf(d_id_decl,type,
% 2.60/1.51      d_id: d_subst ).
% 2.60/1.51  
% 2.60/1.51  thf(alg444_1,axiom,
% 2.60/1.51      ( ! [T: term] :
% 2.60/1.51        ? [DT: d_term] :
% 2.60/1.51          ( T
% 2.60/1.51          = ( d2term @ DT ) )
% 2.60/1.51      & ! [DT: d_term] : ( DT = d_one )
% 2.60/1.51      & ! [DT1: d_term,DT2: d_term] :
% 2.60/1.51          ( ( ( d2term @ DT1 )
% 2.60/1.51            = ( d2term @ DT2 ) )
% 2.60/1.51         => ( DT1 = DT2 ) )
% 2.60/1.51      & ! [S: subst] :
% 2.60/1.51        ? [DS: d_subst] :
% 2.60/1.51          ( S
% 2.60/1.51          = ( d2subst @ DS ) )
% 2.60/1.51      & ! [DS: d_subst] : ( DS = d_id )
% 2.60/1.51      & ! [DS1: d_subst,DS2: d_subst] :
% 2.60/1.51          ( ( ( d2subst @ DS1 )
% 2.60/1.51            = ( d2subst @ DS2 ) )
% 2.60/1.51         => ( DS1 = DS2 ) )
% 2.60/1.51      & ( one
% 2.60/1.51        = ( d2term @ d_one ) )
% 2.60/1.51      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 2.60/1.51        = ( d2term @ d_one ) )
% 2.60/1.51      & ( ( lam @ ( d2term @ d_one ) )
% 2.60/1.51        = ( d2term @ d_one ) )
% 2.60/1.51      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.60/1.51        = ( d2term @ d_one ) )
% 2.60/1.51      & ( id
% 2.60/1.51        = ( d2subst @ d_id ) )
% 2.60/1.51      & ( sh
% 2.60/1.51        = ( d2subst @ d_id ) )
% 2.60/1.51      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.60/1.51        = ( d2subst @ d_id ) )
% 2.60/1.51      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 2.60/1.51        = ( d2subst @ d_id ) )
% 2.60/1.51      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 2.60/1.51        = ( d2term @ d_one ) )
% 2.60/1.51      & ( hoaslam
% 2.60/1.51        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 2.60/1.51      & ( hoasinduction_p_and_p_prime
% 2.60/1.51        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 2.60/1.51            ! [X: term] :
% 2.60/1.51              ( ( Q @ X )
% 2.60/1.51              = ( P @ id @ X @ id ) ) ) )
% 2.60/1.51      & ( pushprop_p_and_p_prime
% 2.60/1.51        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 2.60/1.51            ! [X: term] :
% 2.60/1.51              ( ( Q @ X )
% 2.60/1.51              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 2.60/1.51      & ~ ( var @ ( d2term @ d_one ) )
% 2.60/1.51      & ( pushprop_lem1v2
% 2.60/1.51      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.60/1.51            ( ~ ( P @ A )
% 2.60/1.51            | ~ ! [X: term] :
% 2.60/1.51                  ( ( Q @ X )
% 2.60/1.51                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.60/1.51            | ( Q @ one ) ) )
% 2.60/1.51      & pushprop_lem1_gthm
% 2.60/1.51      & axmap
% 2.60/1.51      & pushprop_lem0_gthm
% 2.60/1.51      & ( shinj
% 2.60/1.51      <=> ! [A: term,B: term] :
% 2.60/1.51            ( ( ( sub @ A @ sh )
% 2.60/1.51             != ( sub @ B @ sh ) )
% 2.60/1.51            | ( A = B ) ) )
% 2.60/1.51      & hoasinduction_lem1v2
% 2.60/1.51      & hoasinduction_lem1v2_gthm
% 2.60/1.51      & ( induction2lem
% 2.60/1.51      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.60/1.51            ( ~ ! [A: term,B: term] :
% 2.60/1.51                  ( ~ ( P @ A )
% 2.60/1.51                  | ~ ( P @ B )
% 2.60/1.51                  | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51            | ~ ! [A: term] :
% 2.60/1.51                  ( ~ ! [B: term] :
% 2.60/1.51                        ( ~ ( P @ B )
% 2.60/1.51                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.51                  | ( P @ ( lam @ A ) ) )
% 2.60/1.51            | ~ ! [B: term] :
% 2.60/1.51                  ( ~ ( var @ B )
% 2.60/1.51                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.60/1.51            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 2.60/1.51      & ( hoasinduction_lem3v2_f
% 2.60/1.51      <=> ! [B: term] :
% 2.60/1.51            ~ ! [F: subst > term > term] :
% 2.60/1.51                ~ ! [A: term,M: subst] :
% 2.60/1.51                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.60/1.51                    = ( F @ M @ A ) ) )
% 2.60/1.51      & axvarshift
% 2.60/1.51      & ( hoasapinj2
% 2.60/1.51      <=> ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.60/1.51             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.60/1.51            | ( C = D ) ) )
% 2.60/1.51      & hoasapnotvar_gthm
% 2.60/1.51      & ( hoasapinj1
% 2.60/1.51      <=> ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.60/1.51             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.60/1.51            | ( A = B ) ) )
% 2.60/1.51      & ~ ulamvar1
% 2.60/1.51      & ( induction2lem_lthm
% 2.60/1.51      <=> ( ! [A: term,M: subst] :
% 2.60/1.51              ( A
% 2.60/1.51              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.60/1.51         => ( ! [A: term,M: subst] :
% 2.60/1.51                ( M
% 2.60/1.51                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.60/1.51           => ( ! [M: subst] :
% 2.60/1.51                  ( M
% 2.60/1.51                  = ( comp @ M @ id ) )
% 2.60/1.51             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 2.60/1.51                    ( ~ ! [A: term] :
% 2.60/1.51                          ( ~ ( var @ A )
% 2.60/1.51                          | ( P @ A ) )
% 2.60/1.51                    | ~ ! [A: term,B: term] :
% 2.60/1.51                          ( ~ ( P @ A )
% 2.60/1.51                          | ~ ( P @ B )
% 2.60/1.51                          | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51                    | ~ ! [A: term] :
% 2.60/1.51                          ( ~ ( P @ A )
% 2.60/1.51                          | ( P @ ( lam @ A ) ) )
% 2.60/1.51                    | ( P @ Bound_variable_2140 ) )
% 2.60/1.51               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.60/1.51                    ( ~ ! [A: term,B: term] :
% 2.60/1.51                          ( ~ ( P @ A )
% 2.60/1.51                          | ~ ( P @ B )
% 2.60/1.51                          | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51                    | ~ ! [A: term] :
% 2.60/1.51                          ( ~ ! [B: term] :
% 2.60/1.51                                ( ~ ( P @ B )
% 2.60/1.51                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.51                          | ( P @ ( lam @ A ) ) )
% 2.60/1.51                    | ~ ! [B: term] :
% 2.60/1.51                          ( ~ ( var @ B )
% 2.60/1.51                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.60/1.51                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 2.60/1.51      & hoasinduction_lem3v2_gthm
% 2.60/1.51      & apnotvar
% 2.60/1.51      & pushprop_lthm_orig
% 2.60/1.51      & ( hoasinduction_lem3v2_f_lthm
% 2.60/1.51      <=> ! [B: term] :
% 2.60/1.51            ~ ! [F: subst > term > term] :
% 2.60/1.51                ~ ! [A: term,M: subst] :
% 2.60/1.51                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.60/1.51                    = ( F @ M @ A ) ) )
% 2.60/1.51      & ( hoasinduction_lthm
% 2.60/1.51      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.60/1.51              ( ~ ! [A: term] :
% 2.60/1.51                    ( ~ ( var @ A )
% 2.60/1.51                    | ( P @ A ) )
% 2.60/1.51              | ~ ! [A: term,B: term] :
% 2.60/1.51                    ( ~ ( P @ A )
% 2.60/1.51                    | ~ ( P @ B )
% 2.60/1.51                    | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51              | ~ ! [A: term] :
% 2.60/1.51                    ( ~ ! [B: term] :
% 2.60/1.51                          ( ~ ( P @ B )
% 2.60/1.51                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.51                    | ( P @ ( lam @ A ) ) )
% 2.60/1.51              | ( P @ Bound_variable_2367 ) )
% 2.60/1.51         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.60/1.51                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51                | ~ ! [A: term,B: term] :
% 2.60/1.51                      ( ~ ( P @ id @ A @ id )
% 2.60/1.51                      | ~ ( P @ id @ B @ id )
% 2.60/1.51                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.60/1.51                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.60/1.51                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 2.60/1.51           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51                  | ~ ! [F: subst > term > term] :
% 2.60/1.51                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                        | ~ ! [A: term] :
% 2.60/1.51                              ( ~ ( P @ id @ A @ id )
% 2.60/1.51                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                  | ~ ! [B: term] :
% 2.60/1.51                        ( ~ ( P @ id @ B @ id )
% 2.60/1.51                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 2.60/1.51             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51                  | ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( var @ ( sub @ A @ id ) )
% 2.60/1.51                        | ( P @ id @ A @ id ) )
% 2.60/1.51                  | ~ ! [A: term,B: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ~ ( P @ id @ B @ id )
% 2.60/1.51                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51                  | ~ ! [F: subst > term > term] :
% 2.60/1.51                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                        | ~ ! [A: term] :
% 2.60/1.51                              ( ~ ( P @ id @ A @ id )
% 2.60/1.51                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 2.60/1.51      & ( hoasinduction_no_psi_cond_lthm
% 2.60/1.51      <=> ( ! [P: subst > term > subst > $o] :
% 2.60/1.51              ~ ! [Q: term > $o] :
% 2.60/1.51                  ~ ! [X: term] :
% 2.60/1.51                      ( ( Q @ X )
% 2.60/1.51                      = ( P @ id @ X @ id ) )
% 2.60/1.51         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.60/1.51                ( ~ ! [A: term] :
% 2.60/1.51                      ( ~ ( var @ A )
% 2.60/1.51                      | ( P @ A ) )
% 2.60/1.51                | ~ ! [A: term,B: term] :
% 2.60/1.51                      ( ~ ( P @ A )
% 2.60/1.51                      | ~ ( P @ B )
% 2.60/1.51                      | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51                | ~ ! [A: term] :
% 2.60/1.51                      ( ~ ! [B: term] :
% 2.60/1.51                            ( ~ ( P @ B )
% 2.60/1.51                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.51                      | ( P @ ( lam @ A ) ) )
% 2.60/1.51                | ( P @ Bound_variable_2367 ) )
% 2.60/1.51           => ( ! [A: term] :
% 2.60/1.51                  ( A
% 2.60/1.51                  = ( sub @ A @ id ) )
% 2.60/1.51             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.60/1.51                    ( ~ ! [F: subst > term > term] :
% 2.60/1.51                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                          | ~ ! [A: term] :
% 2.60/1.51                                ( ~ ( P @ id @ A @ id )
% 2.60/1.51                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                    | ~ ! [X: term] :
% 2.60/1.51                          ( ( Q @ X )
% 2.60/1.51                          = ( P @ id @ X @ id ) )
% 2.60/1.51                    | ~ ! [B: term] :
% 2.60/1.51                          ( ~ ( Q @ B )
% 2.60/1.51                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.60/1.51                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.60/1.51               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.60/1.51                    ( ~ ! [A: term,B: term] :
% 2.60/1.51                          ( ~ ( P @ id @ A @ id )
% 2.60/1.51                          | ~ ( P @ id @ B @ id )
% 2.60/1.51                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51                    | ~ ! [F: subst > term > term] :
% 2.60/1.51                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                          | ~ ! [A: term] :
% 2.60/1.51                                ( ~ ( P @ id @ A @ id )
% 2.60/1.51                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 2.60/1.51      & ( hoaslaminj
% 2.60/1.51      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.60/1.51            ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51            | ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.60/1.51                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51            | ( ( lam @ ( F @ sh @ one ) )
% 2.60/1.51             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.60/1.51            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.60/1.51              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 2.60/1.51      & ( hoasinduction_lem3aaa
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 2.60/1.51            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 2.60/1.51                  ( ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 2.60/1.51                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 2.60/1.51                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 2.60/1.51                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 2.60/1.51                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 2.60/1.51                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 2.60/1.51                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 2.60/1.51            | ~ ! [B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.60/1.51      & induction2lem_gthm
% 2.60/1.51      & ( hoasinduction_lem3aa_lthm
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.60/1.51            ( ~ ! [F: subst > term > term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                  | ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51            | ~ ! [B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.60/1.51      & ( hoasinduction_lem3
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.60/1.51            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51            | ~ ! [F: subst > term > term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                  | ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51            | ~ ! [B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 2.60/1.51      & ( hoasinduction_lem2
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.60/1.51            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51            | ~ ! [A: term,B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ A @ id )
% 2.60/1.51                  | ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.60/1.51            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.60/1.51            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 2.60/1.51      & ( termmset_lthm
% 2.60/1.51      <=> ( ! [A: term] :
% 2.60/1.51              ( A
% 2.60/1.51              = ( sub @ A @ id ) )
% 2.60/1.51         => ! [A: term] :
% 2.60/1.51              ( A
% 2.60/1.51              = ( sub @ A @ id ) ) ) )
% 2.60/1.51      & hoasinduction_lem1
% 2.60/1.51      & hoaslamnotap_lthm
% 2.60/1.51      & ( pushprop_lem1v2_lthm
% 2.60/1.51      <=> ( ! [A: term,M: subst] :
% 2.60/1.51              ( A
% 2.60/1.51              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.60/1.51         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.60/1.51              ( ~ ( P @ A )
% 2.60/1.51              | ~ ! [X: term] :
% 2.60/1.51                    ( ( Q @ X )
% 2.60/1.51                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.60/1.51              | ( Q @ one ) ) ) )
% 2.60/1.51      & hoasapnotvar
% 2.60/1.51      & ( hoasinduction_lem0
% 2.60/1.51      <=> ! [P: subst > term > subst > $o] :
% 2.60/1.51            ~ ! [Q: term > $o] :
% 2.60/1.51                ~ ! [X: term] :
% 2.60/1.51                    ( ( Q @ X )
% 2.60/1.51                    = ( P @ id @ X @ id ) ) )
% 2.60/1.51      & ( hoasinduction
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.60/1.51            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51            | ~ ! [A: term] :
% 2.60/1.51                  ( ~ ( var @ ( sub @ A @ id ) )
% 2.60/1.51                  | ( P @ id @ A @ id ) )
% 2.60/1.51            | ~ ! [A: term,B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ A @ id )
% 2.60/1.51                  | ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51            | ~ ! [F: subst > term > term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                  | ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 2.60/1.51      & hoasinduction_gthm
% 2.60/1.51      & axapp
% 2.60/1.51      & hoaslamnotvar_lthm
% 2.60/1.51      & pushprop_lem3v2_lthm
% 2.60/1.51      & ( hoasinduction_lem3b_lthm
% 2.60/1.51      <=> ! [B: term] :
% 2.60/1.51            ~ ! [F: subst > term > term] :
% 2.60/1.51                ( ( F @ sh @ one )
% 2.60/1.51               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.60/1.51      & ulamvarind
% 2.60/1.51      & ( induction
% 2.60/1.51      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 2.60/1.51            ( ~ ! [A: term] :
% 2.60/1.51                  ( ~ ( var @ A )
% 2.60/1.51                  | ( P @ A ) )
% 2.60/1.51            | ~ ! [A: term,B: term] :
% 2.60/1.51                  ( ~ ( P @ A )
% 2.60/1.51                  | ~ ( P @ B )
% 2.60/1.51                  | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.51            | ~ ! [A: term] :
% 2.60/1.51                  ( ~ ( P @ A )
% 2.60/1.51                  | ( P @ ( lam @ A ) ) )
% 2.60/1.51            | ( P @ Bound_variable_2140 ) ) )
% 2.60/1.51      & ( hoasinduction_lem3a_lthm
% 2.60/1.51      <=> ( ! [A: term] :
% 2.60/1.51              ( A
% 2.60/1.51              = ( sub @ A @ id ) )
% 2.60/1.51         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.60/1.51                ( ~ ! [F: subst > term > term] :
% 2.60/1.51                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                      | ~ ! [A: term] :
% 2.60/1.51                            ( ~ ( P @ id @ A @ id )
% 2.60/1.51                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                | ~ ! [B: term] :
% 2.60/1.51                      ( ~ ( P @ id @ B @ id )
% 2.60/1.51                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.60/1.51           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.60/1.51                ( ~ ! [F: subst > term > term] :
% 2.60/1.51                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                      | ~ ! [A: term] :
% 2.60/1.51                            ( ~ ( P @ id @ A @ id )
% 2.60/1.51                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51                | ~ ! [B: term] :
% 2.60/1.51                      ( ~ ( P @ id @ B @ id )
% 2.60/1.51                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 2.60/1.51      & termmset_gthm
% 2.60/1.51      & ( hoasinduction_lem3aa
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.60/1.51            ( ~ ! [F: subst > term > term] :
% 2.60/1.51                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.51                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.51                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.51                  | ~ ! [A: term] :
% 2.60/1.51                        ( ~ ( P @ id @ A @ id )
% 2.60/1.51                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.51                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.51            | ~ ! [B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.51            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.60/1.51      & pushprop_lem1v2_gthm
% 2.60/1.51      & hoaslamnotap_gthm
% 2.60/1.51      & hoaslamnotvar_gthm
% 2.60/1.51      & hoasinduction_lem3b_gthm
% 2.60/1.51      & pushprop_lem2v2
% 2.60/1.51      & hoasinduction_lem3a_gthm
% 2.60/1.51      & axclos
% 2.60/1.51      & axassoc
% 2.60/1.51      & ( hoasinduction_lem2v2
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 2.60/1.51            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.51                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.51            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.51                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.51                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.51            | ~ ! [A: term,B: term] :
% 2.60/1.51                  ( ~ ( P @ id @ A @ id )
% 2.60/1.51                  | ~ ( P @ id @ B @ id )
% 2.60/1.51                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.51            | ~ ! [X: term] :
% 2.60/1.51                  ( ( Q @ X )
% 2.60/1.51                  = ( P @ id @ X @ id ) )
% 2.60/1.51            | ~ ( Q @ Bound_variable_2820 )
% 2.60/1.51            | ~ ( Q @ Bound_variable_2822 )
% 2.60/1.51            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 2.60/1.51      & pushprop_lthm
% 2.60/1.51      & ( apinj2
% 2.60/1.51      <=> ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51            ( ( ( ap @ A @ C )
% 2.60/1.51             != ( ap @ B @ D ) )
% 2.60/1.51            | ( C = D ) ) )
% 2.60/1.51      & ( apinj1
% 2.60/1.51      <=> ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51            ( ( ( ap @ A @ C )
% 2.60/1.51             != ( ap @ B @ D ) )
% 2.60/1.51            | ( A = B ) ) )
% 2.60/1.51      & ( hoasapinj2_lthm
% 2.60/1.51      <=> ( ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51              ( ( ( ap @ A @ C )
% 2.60/1.51               != ( ap @ B @ D ) )
% 2.60/1.51              | ( C = D ) )
% 2.60/1.51         => ! [A: term,B: term,C: term,D: term] :
% 2.60/1.51              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.60/1.51               != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.60/1.51              | ( C = D ) ) ) )
% 2.60/1.51      & ( hoasinduction_lem3v2a
% 2.60/1.51      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.60/1.51            ( ~ ! [F: subst > term > term] :
% 2.60/1.52                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ~ ! [A: term] :
% 2.60/1.52                        ( ~ ( P @ id @ A @ id )
% 2.60/1.52                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52            | ~ ! [X: term] :
% 2.60/1.52                  ( ( Q @ X )
% 2.60/1.52                  = ( P @ id @ X @ id ) )
% 2.60/1.52            | ~ ! [B: term] :
% 2.60/1.52                  ( ~ ( Q @ B )
% 2.60/1.52                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.60/1.52            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 2.60/1.52      & ( hoasapinj1_lthm
% 2.60/1.52      <=> ( ! [A: term] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ A @ id ) )
% 2.60/1.52         => ( ! [A: term,B: term,C: term,D: term] :
% 2.60/1.52                ( ( ( ap @ A @ C )
% 2.60/1.52                 != ( ap @ B @ D ) )
% 2.60/1.52                | ( A = B ) )
% 2.60/1.52           => ! [A: term,B: term,C: term,D: term] :
% 2.60/1.52                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.60/1.52                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.60/1.52                | ( A = B ) ) ) ) )
% 2.60/1.52      & ( hoaslaminj_lthm
% 2.60/1.52      <=> ( ! [A: term,M: subst] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.60/1.52         => ( ! [A: term,M: subst] :
% 2.60/1.52                ( M
% 2.60/1.52                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.60/1.52           => ( ! [A: term,B: term] :
% 2.60/1.52                  ( ( ( lam @ A )
% 2.60/1.52                   != ( lam @ B ) )
% 2.60/1.52                  | ( A = B ) )
% 2.60/1.52             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.60/1.52                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.60/1.52                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ( ( lam @ ( F @ sh @ one ) )
% 2.60/1.52                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.60/1.52                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.60/1.52                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 2.60/1.52      & ( axvarcons
% 2.60/1.52      <=> ! [A: term,M: subst] :
% 2.60/1.52            ( A
% 2.60/1.52            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 2.60/1.52      & ( axscons
% 2.60/1.52      <=> ! [M: subst] :
% 2.60/1.52            ( M
% 2.60/1.52            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 2.60/1.52      & hoasinduction_lem2v2_gthm
% 2.60/1.52      & ( axidr
% 2.60/1.52      <=> ! [M: subst] :
% 2.60/1.52            ( M
% 2.60/1.52            = ( comp @ M @ id ) ) )
% 2.60/1.52      & ( pushprop_lem1
% 2.60/1.52      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.60/1.52            ( ~ ( P @ A )
% 2.60/1.52            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 2.60/1.52      & ( laminj
% 2.60/1.52      <=> ! [A: term,B: term] :
% 2.60/1.52            ( ( ( lam @ A )
% 2.60/1.52             != ( lam @ B ) )
% 2.60/1.52            | ( A = B ) ) )
% 2.60/1.52      & ( hoasinduction_lem3_lthm
% 2.60/1.52      <=> ( ! [A: term] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ A @ id ) )
% 2.60/1.52         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.60/1.52                ( ~ ! [F: subst > term > term] :
% 2.60/1.52                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                      | ~ ! [A: term] :
% 2.60/1.52                            ( ~ ( P @ id @ A @ id )
% 2.60/1.52                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52                | ~ ! [B: term] :
% 2.60/1.52                      ( ~ ( P @ id @ B @ id )
% 2.60/1.52                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.52                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.60/1.52           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.60/1.52                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.52                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.52                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.52                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.52                | ~ ! [F: subst > term > term] :
% 2.60/1.52                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                      | ~ ! [A: term] :
% 2.60/1.52                            ( ~ ( P @ id @ A @ id )
% 2.60/1.52                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52                | ~ ! [B: term] :
% 2.60/1.52                      ( ~ ( P @ id @ B @ id )
% 2.60/1.52                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.52                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 2.60/1.52      & ( pushprop_lem0
% 2.60/1.52      <=> ! [P: term > $o,A: term,M: subst] :
% 2.60/1.52            ~ ! [Q: term > $o] :
% 2.60/1.52                ~ ! [X: term] :
% 2.60/1.52                    ( ( Q @ X )
% 2.60/1.52                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.60/1.52      & pushprop_gthm
% 2.60/1.52      & axabs
% 2.60/1.52      & ( hoasinduction_lem3v2a_lthm
% 2.60/1.52      <=> ( ! [B: term] :
% 2.60/1.52              ~ ! [F: subst > term > term] :
% 2.60/1.52                  ~ ! [A: term,M: subst] :
% 2.60/1.52                      ( ( sub @ B @ ( push @ A @ M ) )
% 2.60/1.52                      = ( F @ M @ A ) )
% 2.60/1.52         => ( ! [A: term] :
% 2.60/1.52                ( A
% 2.60/1.52                = ( sub @ A @ id ) )
% 2.60/1.52           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.60/1.52                ( ~ ! [F: subst > term > term] :
% 2.60/1.52                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                      | ~ ! [A: term] :
% 2.60/1.52                            ( ~ ( P @ id @ A @ id )
% 2.60/1.52                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52                | ~ ! [X: term] :
% 2.60/1.52                      ( ( Q @ X )
% 2.60/1.52                      = ( P @ id @ X @ id ) )
% 2.60/1.52                | ~ ! [B: term] :
% 2.60/1.52                      ( ~ ( Q @ B )
% 2.60/1.52                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.60/1.52                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 2.60/1.52      & hoasinduction_lem2_lthm
% 2.60/1.52      & hoasapinj2_gthm
% 2.60/1.52      & hoasinduction_lem1_lthm
% 2.60/1.52      & ~ lamnotap
% 2.60/1.52      & hoasapinj1_gthm
% 2.60/1.52      & hoaslamnotvar
% 2.60/1.52      & ( axidl
% 2.60/1.52      <=> ! [M: subst] :
% 2.60/1.52            ( M
% 2.60/1.52            = ( comp @ id @ M ) ) )
% 2.60/1.52      & hoaslaminj_gthm
% 2.60/1.52      & ( induction2_lthm
% 2.60/1.52      <=> ( ! [A: term] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ A @ id ) )
% 2.60/1.52         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.60/1.52                ( ~ ! [A: term,B: term] :
% 2.60/1.52                      ( ~ ( P @ A )
% 2.60/1.52                      | ~ ( P @ B )
% 2.60/1.52                      | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.52                | ~ ! [A: term] :
% 2.60/1.52                      ( ~ ! [B: term] :
% 2.60/1.52                            ( ~ ( P @ B )
% 2.60/1.52                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.52                      | ( P @ ( lam @ A ) ) )
% 2.60/1.52                | ~ ! [B: term] :
% 2.60/1.52                      ( ~ ( var @ B )
% 2.60/1.52                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.60/1.52                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 2.60/1.52           => ! [P: term > $o,Bound_variable_2367: term] :
% 2.60/1.52                ( ~ ! [A: term] :
% 2.60/1.52                      ( ~ ( var @ A )
% 2.60/1.52                      | ( P @ A ) )
% 2.60/1.52                | ~ ! [A: term,B: term] :
% 2.60/1.52                      ( ~ ( P @ A )
% 2.60/1.52                      | ~ ( P @ B )
% 2.60/1.52                      | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.52                | ~ ! [A: term] :
% 2.60/1.52                      ( ~ ! [B: term] :
% 2.60/1.52                            ( ~ ( P @ B )
% 2.60/1.52                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.52                      | ( P @ ( lam @ A ) ) )
% 2.60/1.52                | ( P @ Bound_variable_2367 ) ) ) ) )
% 2.60/1.52      & ( hoasinduction_lem0_lthm
% 2.60/1.52      <=> ! [P: subst > term > subst > $o] :
% 2.60/1.52            ~ ! [Q: term > $o] :
% 2.60/1.52                ~ ! [X: term] :
% 2.60/1.52                    ( ( Q @ X )
% 2.60/1.52                    = ( P @ id @ X @ id ) ) )
% 2.60/1.52      & ( substmonoid_lthm
% 2.60/1.52      <=> ( ! [M: subst] :
% 2.60/1.52              ( M
% 2.60/1.52              = ( comp @ id @ M ) )
% 2.60/1.52         => ( ! [M: subst] :
% 2.60/1.52                ( M
% 2.60/1.52                = ( comp @ M @ id ) )
% 2.60/1.52           => ( ! [M: subst] :
% 2.60/1.52                  ( M
% 2.60/1.52                  = ( comp @ id @ M ) )
% 2.60/1.52              & ! [M: subst] :
% 2.60/1.52                  ( M
% 2.60/1.52                  = ( comp @ M @ id ) ) ) ) ) )
% 2.60/1.52      & pushprop
% 2.60/1.52      & hoasinduction_lem3_gthm
% 2.60/1.52      & hoasinduction_lem2_gthm
% 2.60/1.52      & ( hoasinduction_lem3b
% 2.60/1.52      <=> ! [B: term] :
% 2.60/1.52            ~ ! [F: subst > term > term] :
% 2.60/1.52                ( ( F @ sh @ one )
% 2.60/1.52               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.60/1.52      & ( substmonoid
% 2.60/1.52      <=> ( ! [M: subst] :
% 2.60/1.52              ( M
% 2.60/1.52              = ( comp @ id @ M ) )
% 2.60/1.52          & ! [M: subst] :
% 2.60/1.52              ( M
% 2.60/1.52              = ( comp @ M @ id ) ) ) )
% 2.60/1.52      & lamnotvar
% 2.60/1.52      & ( hoasinduction_lem3a
% 2.60/1.52      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.60/1.52            ( ~ ! [F: subst > term > term] :
% 2.60/1.52                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ~ ! [A: term] :
% 2.60/1.52                        ( ~ ( P @ id @ A @ id )
% 2.60/1.52                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52            | ~ ! [B: term] :
% 2.60/1.52                  ( ~ ( P @ id @ B @ id )
% 2.60/1.52                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.60/1.52            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 2.60/1.52      & hoasinduction_lem1_gthm
% 2.60/1.52      & ( hoasinduction_no_psi_cond
% 2.60/1.52      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.60/1.52            ( ~ ! [A: term,B: term] :
% 2.60/1.52                  ( ~ ( P @ id @ A @ id )
% 2.60/1.52                  | ~ ( P @ id @ B @ id )
% 2.60/1.52                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.52            | ~ ! [F: subst > term > term] :
% 2.60/1.52                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ~ ! [A: term] :
% 2.60/1.52                        ( ~ ( P @ id @ A @ id )
% 2.60/1.52                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 2.60/1.52      & induction2_gthm
% 2.60/1.52      & pushprop_lem2v2_lthm
% 2.60/1.52      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.60/1.52      & ( hoaslamnotap
% 2.60/1.52      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 2.60/1.52            ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52            | ( ( lam @ ( F @ sh @ one ) )
% 2.60/1.52             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 2.60/1.52      & substmonoid_gthm
% 2.60/1.52      & ulamvarsh
% 2.60/1.52      & ( induction2
% 2.60/1.52      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 2.60/1.52            ( ~ ! [A: term] :
% 2.60/1.52                  ( ~ ( var @ A )
% 2.60/1.52                  | ( P @ A ) )
% 2.60/1.52            | ~ ! [A: term,B: term] :
% 2.60/1.52                  ( ~ ( P @ A )
% 2.60/1.52                  | ~ ( P @ B )
% 2.60/1.52                  | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.52            | ~ ! [A: term] :
% 2.60/1.52                  ( ~ ! [B: term] :
% 2.60/1.52                        ( ~ ( P @ B )
% 2.60/1.52                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.52                  | ( P @ ( lam @ A ) ) )
% 2.60/1.52            | ( P @ Bound_variable_2367 ) ) )
% 2.60/1.52      & pushprop_lem3v2
% 2.60/1.52      & pushprop_lem2v2_gthm
% 2.60/1.52      & ( pushprop_lem1_lthm
% 2.60/1.52      <=> ( ! [A: term,M: subst] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.60/1.52         => ( ! [A: term,M: subst] :
% 2.60/1.52                ( M
% 2.60/1.52                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.60/1.52           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.60/1.52                ( ~ ( P @ A )
% 2.60/1.52                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 2.60/1.52      & ( hoasinduction_lem3v2
% 2.60/1.52      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.60/1.52            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.52                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.52            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.52                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.52            | ~ ! [F: subst > term > term] :
% 2.60/1.52                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                  | ~ ! [A: term] :
% 2.60/1.52                        ( ~ ( P @ id @ A @ id )
% 2.60/1.52                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52            | ~ ! [X: term] :
% 2.60/1.52                  ( ( Q @ X )
% 2.60/1.52                  = ( P @ id @ X @ id ) )
% 2.60/1.52            | ~ ! [B: term] :
% 2.60/1.52                  ( ~ ( Q @ B )
% 2.60/1.52                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.60/1.52            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 2.60/1.52      & ( axshiftcons
% 2.60/1.52      <=> ! [A: term,M: subst] :
% 2.60/1.52            ( M
% 2.60/1.52            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 2.60/1.52      & ( termmset
% 2.60/1.52      <=> ! [A: term] :
% 2.60/1.52            ( A
% 2.60/1.52            = ( sub @ A @ id ) ) )
% 2.60/1.52      & ( pushprop_lem0_lthm
% 2.60/1.52      <=> ! [P: term > $o,A: term,M: subst] :
% 2.60/1.52            ~ ! [Q: term > $o] :
% 2.60/1.52                ~ ! [X: term] :
% 2.60/1.52                    ( ( Q @ X )
% 2.60/1.52                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.60/1.52      & hoasapnotvar_lthm
% 2.60/1.52      & ( hoasinduction_lem3v2_lthm
% 2.60/1.52      <=> ( ! [A: term] :
% 2.60/1.52              ( A
% 2.60/1.52              = ( sub @ A @ id ) )
% 2.60/1.52         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.60/1.52              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.52                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.52              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.52                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.52              | ~ ! [F: subst > term > term] :
% 2.60/1.52                    ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                          ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                    | ~ ! [A: term] :
% 2.60/1.52                          ( ~ ( P @ id @ A @ id )
% 2.60/1.52                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52              | ~ ! [X: term] :
% 2.60/1.52                    ( ( Q @ X )
% 2.60/1.52                    = ( P @ id @ X @ id ) )
% 2.60/1.52              | ~ ! [B: term] :
% 2.60/1.52                    ( ~ ( Q @ B )
% 2.60/1.52                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.60/1.52              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 2.60/1.52      & ( axvarid
% 2.60/1.52      <=> ! [A: term] :
% 2.60/1.52            ( A
% 2.60/1.52            = ( sub @ A @ id ) ) )
% 2.60/1.52      & ( hoasinduction_lthm_3
% 2.60/1.52      <=> ( ! [P: subst > term > subst > $o] :
% 2.60/1.52              ~ ! [Q: term > $o] :
% 2.60/1.52                  ~ ! [X: term] :
% 2.60/1.52                      ( ( Q @ X )
% 2.60/1.52                      = ( P @ id @ X @ id ) )
% 2.60/1.52         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.60/1.52                ( ~ ! [A: term] :
% 2.60/1.52                      ( ~ ( var @ A )
% 2.60/1.52                      | ( P @ A ) )
% 2.60/1.52                | ~ ! [A: term,B: term] :
% 2.60/1.52                      ( ~ ( P @ A )
% 2.60/1.52                      | ~ ( P @ B )
% 2.60/1.52                      | ( P @ ( ap @ A @ B ) ) )
% 2.60/1.52                | ~ ! [A: term] :
% 2.60/1.52                      ( ~ ! [B: term] :
% 2.60/1.52                            ( ~ ( P @ B )
% 2.60/1.52                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.60/1.52                      | ( P @ ( lam @ A ) ) )
% 2.60/1.52                | ( P @ Bound_variable_2367 ) )
% 2.60/1.52           => ( ! [A: term] :
% 2.60/1.52                  ( A
% 2.60/1.52                  = ( sub @ A @ id ) )
% 2.60/1.52             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.60/1.52                    ( ~ ! [F: subst > term > term] :
% 2.60/1.52                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                          | ~ ! [A: term] :
% 2.60/1.52                                ( ~ ( P @ id @ A @ id )
% 2.60/1.52                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52                    | ~ ! [X: term] :
% 2.60/1.52                          ( ( Q @ X )
% 2.60/1.52                          = ( P @ id @ X @ id ) )
% 2.60/1.52                    | ~ ! [B: term] :
% 2.60/1.52                          ( ~ ( Q @ B )
% 2.60/1.52                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.60/1.52                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.60/1.52               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.60/1.52                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.60/1.52                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.60/1.52                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.60/1.52                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.60/1.52                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.60/1.52                    | ~ ! [A: term] :
% 2.60/1.52                          ( ~ ( var @ ( sub @ A @ id ) )
% 2.60/1.52                          | ( P @ id @ A @ id ) )
% 2.60/1.52                    | ~ ! [A: term,B: term] :
% 2.60/1.52                          ( ~ ( P @ id @ A @ id )
% 2.60/1.52                          | ~ ( P @ id @ B @ id )
% 2.60/1.52                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.60/1.52                    | ~ ! [F: subst > term > term] :
% 2.60/1.52                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.60/1.52                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.60/1.52                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.60/1.52                          | ~ ! [A: term] :
% 2.60/1.52                                ( ~ ( P @ id @ A @ id )
% 2.60/1.52                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.60/1.52                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.60/1.52                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 2.60/1.52  
% 2.60/1.52  thf(pushprop_lem2v2,conjecture,
% 2.60/1.52      ( pushprop_lem2v2
% 2.60/1.52      = ( ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.60/1.52            ( ( pushprop_p_and_p_prime @ A @ M @ P @ Q )
% 2.60/1.52           => ( ! [B: term] :
% 2.60/1.52                  ( ( var @ B )
% 2.60/1.52                 => ( P @ ( sub @ B @ M ) ) )
% 2.60/1.52             => ! [C: term] :
% 2.60/1.52                  ( ( var @ C )
% 2.60/1.52                 => ( ( Q @ C )
% 2.60/1.52                   => ( Q @ ( sub @ C @ sh ) ) ) ) ) ) ) ) ).
% 2.60/1.52  ------------------------
% 2.60/1.54  % (20732)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/18Mi)
% 2.60/1.54  % (20728)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_20450 for (2999ds/27Mi)
% 2.60/1.54  % (20726)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/183Mi)
% 2.60/1.54  % (20732)Instruction limit reached!
% 2.60/1.54  % (20732)------------------------------
% 2.60/1.54  % (20732)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.54  % (20732)Termination reason: Unknown
% 2.60/1.54  % (20732)Termination phase: shuffling
% 2.60/1.54  
% 2.60/1.54  % (20732)Memory used [KB]: 2046
% 2.60/1.54  % (20732)Time elapsed: 0.008 s
% 2.60/1.54  % (20732)Instructions burned: 20 (million)
% 2.60/1.54  % (20732)------------------------------
% 2.60/1.54  % (20732)------------------------------
% 2.60/1.54  % (20727)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_20450 for (2999ds/4Mi)
% 2.60/1.54  % (20729)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/2Mi)
% 2.60/1.54  % (20730)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_20450 for (2999ds/2Mi)
% 2.60/1.54  % (20731)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_20450 for (2999ds/275Mi)
% 2.60/1.54  % (20729)Instruction limit reached!
% 2.60/1.54  % (20729)------------------------------
% 2.60/1.54  % (20729)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.54  % (20729)Termination reason: Unknown
% 2.60/1.54  % (20729)Termination phase: shuffling
% 2.60/1.54  
% 2.60/1.54  % (20729)Memory used [KB]: 1279
% 2.60/1.54  % (20729)Time elapsed: 0.004 s
% 2.60/1.54  % (20729)Instructions burned: 3 (million)
% 2.60/1.54  % (20729)------------------------------
% 2.60/1.54  % (20729)------------------------------
% 2.60/1.54  % (20730)Instruction limit reached!
% 2.60/1.54  % (20730)------------------------------
% 2.60/1.54  % (20730)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.54  % (20730)Termination reason: Unknown
% 2.60/1.54  % (20730)Termination phase: shuffling
% 2.60/1.54  
% 2.60/1.54  % (20730)Memory used [KB]: 1279
% 2.60/1.54  % (20730)Time elapsed: 0.004 s
% 2.60/1.54  % (20730)Instructions burned: 3 (million)
% 2.60/1.54  % (20730)------------------------------
% 2.60/1.54  % (20730)------------------------------
% 2.60/1.55  % (20727)Instruction limit reached!
% 2.60/1.55  % (20727)------------------------------
% 2.60/1.55  % (20727)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.55  % (20727)Termination reason: Unknown
% 2.60/1.55  % (20727)Termination phase: shuffling
% 2.60/1.55  
% 2.60/1.55  % (20727)Memory used [KB]: 1279
% 2.60/1.55  % (20727)Time elapsed: 0.005 s
% 2.60/1.55  % (20727)Instructions burned: 5 (million)
% 2.60/1.55  % (20727)------------------------------
% 2.60/1.55  % (20727)------------------------------
% 2.60/1.55  % (20733)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/3Mi)
% 2.60/1.55  % (20733)Instruction limit reached!
% 2.60/1.55  % (20733)------------------------------
% 2.60/1.55  % (20733)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.55  % (20733)Termination reason: Unknown
% 2.60/1.55  % (20733)Termination phase: shuffling
% 2.60/1.55  
% 2.60/1.55  % (20733)Memory used [KB]: 1279
% 2.60/1.55  % (20733)Time elapsed: 0.003 s
% 2.60/1.55  % (20733)Instructions burned: 4 (million)
% 2.60/1.55  % (20733)------------------------------
% 2.60/1.55  % (20733)------------------------------
% 2.60/1.55  % (20728)Instruction limit reached!
% 2.60/1.55  % (20728)------------------------------
% 2.60/1.55  % (20728)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.55  % (20728)Termination reason: Unknown
% 2.60/1.55  % (20728)Termination phase: Property scanning
% 2.60/1.55  
% 2.60/1.55  % (20728)Memory used [KB]: 2174
% 2.60/1.55  % (20728)Time elapsed: 0.016 s
% 2.60/1.55  % (20728)Instructions burned: 28 (million)
% 2.60/1.55  % (20728)------------------------------
% 2.60/1.55  % (20728)------------------------------
% 2.60/1.56  % (20734)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_20450 for (2999ds/37Mi)
% 2.60/1.56  % (20735)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_20450 for (2999ds/15Mi)
% 2.60/1.56  % (20736)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_20450 for (2999ds/3Mi)
% 2.60/1.56  % (20737)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_20450 for (2999ds/1041Mi)
% 2.60/1.56  % (20736)Instruction limit reached!
% 2.60/1.56  % (20736)------------------------------
% 2.60/1.56  % (20736)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.56  % (20736)Termination reason: Unknown
% 2.60/1.56  % (20736)Termination phase: shuffling
% 2.60/1.56  
% 2.60/1.56  % (20736)Memory used [KB]: 1279
% 2.60/1.56  % (20736)Time elapsed: 0.004 s
% 2.60/1.56  % (20736)Instructions burned: 4 (million)
% 2.60/1.56  % (20736)------------------------------
% 2.60/1.56  % (20736)------------------------------
% 2.60/1.57  % (20731)Refutation not found, incomplete strategy
% 2.60/1.57  % (20731)------------------------------
% 2.60/1.57  % (20731)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.57  % (20731)Termination reason: Refutation not found, incomplete strategy
% 2.60/1.57  
% 2.60/1.57  
% 2.60/1.57  % (20731)Memory used [KB]: 6780
% 2.60/1.57  % (20731)Time elapsed: 0.025 s
% 2.60/1.57  % (20731)Instructions burned: 39 (million)
% 2.60/1.57  % (20731)------------------------------
% 2.60/1.57  % (20731)------------------------------
% 2.60/1.57  % (20738)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/7Mi)
% 2.60/1.57  % (20738)Instruction limit reached!
% 2.60/1.57  % (20738)------------------------------
% 2.60/1.57  % (20738)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.57  % (20738)Termination reason: Unknown
% 2.60/1.57  % (20738)Termination phase: shuffling
% 2.60/1.57  
% 2.60/1.57  % (20738)Memory used [KB]: 1407
% 2.60/1.57  % (20738)Time elapsed: 0.003 s
% 2.60/1.57  % (20738)Instructions burned: 7 (million)
% 2.60/1.57  % (20738)------------------------------
% 2.60/1.57  % (20738)------------------------------
% 2.60/1.57  % (20735)Instruction limit reached!
% 2.60/1.57  % (20735)------------------------------
% 2.60/1.57  % (20735)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.57  % (20735)Termination reason: Unknown
% 2.60/1.57  % (20735)Termination phase: shuffling
% 2.60/1.57  
% 2.60/1.57  % (20735)Memory used [KB]: 1918
% 2.60/1.57  % (20735)Time elapsed: 0.011 s
% 2.60/1.57  % (20735)Instructions burned: 16 (million)
% 2.60/1.57  % (20735)------------------------------
% 2.60/1.57  % (20735)------------------------------
% 2.60/1.58  % (20741)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_20450 for (2999ds/3Mi)
% 2.60/1.58  % (20741)Instruction limit reached!
% 2.60/1.58  % (20741)------------------------------
% 2.60/1.58  % (20741)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.58  % (20741)Termination reason: Unknown
% 2.60/1.58  % (20741)Termination phase: shuffling
% 2.60/1.58  
% 2.60/1.58  % (20741)Memory used [KB]: 1279
% 2.60/1.58  % (20741)Time elapsed: 0.002 s
% 2.60/1.58  % (20741)Instructions burned: 4 (million)
% 2.60/1.58  % (20741)------------------------------
% 2.60/1.58  % (20741)------------------------------
% 2.60/1.58  % (20734)Instruction limit reached!
% 2.60/1.58  % (20734)------------------------------
% 2.60/1.58  % (20734)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.58  % (20734)Termination reason: Unknown
% 2.60/1.58  % (20734)Termination phase: Property scanning
% 2.60/1.58  
% 2.60/1.58  % (20734)Memory used [KB]: 1918
% 2.60/1.58  % (20734)Time elapsed: 0.021 s
% 2.60/1.58  % (20734)Instructions burned: 38 (million)
% 2.60/1.58  % (20734)------------------------------
% 2.60/1.58  % (20734)------------------------------
% 2.60/1.58  % (20739)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/16Mi)
% 2.60/1.58  % (20740)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_20450 for (2999ds/3Mi)
% 2.60/1.59  % (20740)Instruction limit reached!
% 2.60/1.59  % (20740)------------------------------
% 2.60/1.59  % (20740)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.59  % (20740)Termination reason: Unknown
% 2.60/1.59  % (20740)Termination phase: shuffling
% 2.60/1.59  
% 2.60/1.59  % (20740)Memory used [KB]: 1279
% 2.60/1.59  % (20740)Time elapsed: 0.004 s
% 2.60/1.59  % (20740)Instructions burned: 4 (million)
% 2.60/1.59  % (20740)------------------------------
% 2.60/1.59  % (20740)------------------------------
% 2.60/1.59  % (20742)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/7Mi)
% 2.60/1.59  % (20743)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/3Mi)
% 2.60/1.59  % (20739)Instruction limit reached!
% 2.60/1.59  % (20739)------------------------------
% 2.60/1.59  % (20739)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.59  % (20739)Termination reason: Unknown
% 2.60/1.59  % (20739)Termination phase: shuffling
% 2.60/1.59  
% 2.60/1.59  % (20739)Memory used [KB]: 1791
% 2.60/1.59  % (20739)Time elapsed: 0.011 s
% 2.60/1.59  % (20739)Instructions burned: 16 (million)
% 2.60/1.59  % (20739)------------------------------
% 2.60/1.59  % (20739)------------------------------
% 2.60/1.59  % (20743)Instruction limit reached!
% 2.60/1.59  % (20743)------------------------------
% 2.60/1.59  % (20743)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.59  % (20743)Termination reason: Unknown
% 2.60/1.59  % (20743)Termination phase: shuffling
% 2.60/1.59  
% 2.60/1.59  % (20743)Memory used [KB]: 1279
% 2.60/1.59  % (20743)Time elapsed: 0.003 s
% 2.60/1.59  % (20743)Instructions burned: 4 (million)
% 2.60/1.59  % (20743)------------------------------
% 2.60/1.59  % (20743)------------------------------
% 2.60/1.59  % (20742)Instruction limit reached!
% 2.60/1.59  % (20742)------------------------------
% 2.60/1.59  % (20742)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.60/1.59  % (20742)Termination reason: Unknown
% 2.60/1.59  % (20742)Termination phase: shuffling
% 2.60/1.59  
% 2.60/1.59  % (20742)Memory used [KB]: 1407
% 2.60/1.59  % (20742)Time elapsed: 0.006 s
% 2.60/1.59  % (20742)Instructions burned: 8 (million)
% 2.60/1.59  % (20742)------------------------------
% 2.60/1.59  % (20742)------------------------------
% 2.63/1.60  % (20744)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/4Mi)
% 2.63/1.60  % (20726)Instruction limit reached!
% 2.63/1.60  % (20726)------------------------------
% 2.63/1.60  % (20726)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.60  % (20726)Termination reason: Unknown
% 2.63/1.60  % (20726)Termination phase: Property scanning
% 2.63/1.60  
% 2.63/1.60  % (20726)Memory used [KB]: 4477
% 2.63/1.60  % (20726)Time elapsed: 0.060 s
% 2.63/1.60  % (20726)Instructions burned: 186 (million)
% 2.63/1.60  % (20726)------------------------------
% 2.63/1.60  % (20726)------------------------------
% 2.63/1.60  % (20744)Instruction limit reached!
% 2.63/1.60  % (20744)------------------------------
% 2.63/1.60  % (20744)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.60  % (20744)Termination reason: Unknown
% 2.63/1.60  % (20744)Termination phase: shuffling
% 2.63/1.60  
% 2.63/1.60  % (20744)Memory used [KB]: 1279
% 2.63/1.60  % (20744)Time elapsed: 0.004 s
% 2.63/1.60  % (20744)Instructions burned: 5 (million)
% 2.63/1.60  % (20744)------------------------------
% 2.63/1.60  % (20744)------------------------------
% 2.63/1.60  % (20747)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/6Mi)
% 2.63/1.60  % (20747)Instruction limit reached!
% 2.63/1.60  % (20747)------------------------------
% 2.63/1.60  % (20747)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.60  % (20747)Termination reason: Unknown
% 2.63/1.60  % (20747)Termination phase: shuffling
% 2.63/1.60  
% 2.63/1.60  % (20747)Memory used [KB]: 1407
% 2.63/1.60  % (20747)Time elapsed: 0.004 s
% 2.63/1.60  % (20747)Instructions burned: 7 (million)
% 2.63/1.60  % (20747)------------------------------
% 2.63/1.60  % (20747)------------------------------
% 2.63/1.60  % (20745)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/18Mi)
% 2.63/1.61  % (20746)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/710Mi)
% 2.63/1.61  % (20749)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_20450 for (2999ds/21Mi)
% 2.63/1.61  % (20748)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_20450 for (2999ds/902Mi)
% 2.63/1.61  % (20751)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_20450 for (2999ds/6Mi)
% 2.63/1.61  % (20745)Instruction limit reached!
% 2.63/1.61  % (20745)------------------------------
% 2.63/1.61  % (20745)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.61  % (20745)Termination reason: Unknown
% 2.63/1.61  % (20745)Termination phase: shuffling
% 2.63/1.61  
% 2.63/1.61  % (20745)Memory used [KB]: 1918
% 2.63/1.61  % (20745)Time elapsed: 0.012 s
% 2.63/1.61  % (20745)Instructions burned: 18 (million)
% 2.63/1.61  % (20745)------------------------------
% 2.63/1.61  % (20745)------------------------------
% 2.63/1.61  % (20750)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/5Mi)
% 2.63/1.62  % (20750)Instruction limit reached!
% 2.63/1.62  % (20750)------------------------------
% 2.63/1.62  % (20750)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.62  % (20750)Termination reason: Unknown
% 2.63/1.62  % (20750)Termination phase: shuffling
% 2.63/1.62  
% 2.63/1.62  % (20750)Memory used [KB]: 1407
% 2.63/1.62  % (20750)Time elapsed: 0.003 s
% 2.63/1.62  % (20750)Instructions burned: 6 (million)
% 2.63/1.62  % (20750)------------------------------
% 2.63/1.62  % (20750)------------------------------
% 2.63/1.62  % (20751)Instruction limit reached!
% 2.63/1.62  % (20751)------------------------------
% 2.63/1.62  % (20751)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.62  % (20751)Termination reason: Unknown
% 2.63/1.62  % (20751)Termination phase: shuffling
% 2.63/1.62  
% 2.63/1.62  % (20751)Memory used [KB]: 1407
% 2.63/1.62  % (20751)Time elapsed: 0.004 s
% 2.63/1.62  % (20751)Instructions burned: 7 (million)
% 2.63/1.62  % (20751)------------------------------
% 2.63/1.62  % (20751)------------------------------
% 2.63/1.62  % (20749)Instruction limit reached!
% 2.63/1.62  % (20749)------------------------------
% 2.63/1.62  % (20749)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.62  % (20749)Termination reason: Unknown
% 2.63/1.62  % (20749)Termination phase: shuffling
% 2.63/1.62  
% 2.63/1.62  % (20749)Memory used [KB]: 2046
% 2.63/1.62  % (20749)Time elapsed: 0.009 s
% 2.63/1.62  % (20749)Instructions burned: 21 (million)
% 2.63/1.62  % (20749)------------------------------
% 2.63/1.62  % (20749)------------------------------
% 2.63/1.63  % (20753)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_20450 for (2999ds/779Mi)
% 2.63/1.63  % (20754)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_20450 for (2999ds/19Mi)
% 2.63/1.63  % (20755)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/879Mi)
% 2.63/1.63  % (20752)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_20450 for (2999ds/377Mi)
% 2.63/1.63  % (20754)Instruction limit reached!
% 2.63/1.63  % (20754)------------------------------
% 2.63/1.63  % (20754)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.63  % (20754)Termination reason: Unknown
% 2.63/1.63  % (20754)Termination phase: shuffling
% 2.63/1.63  
% 2.63/1.63  % (20754)Memory used [KB]: 1663
% 2.63/1.63  % (20754)Time elapsed: 0.008 s
% 2.63/1.63  % (20754)Instructions burned: 22 (million)
% 2.63/1.63  % (20754)------------------------------
% 2.63/1.63  % (20754)------------------------------
% 2.63/1.64  % (20756)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_20450 for (2998ds/17Mi)
% 2.63/1.65  % (20756)Instruction limit reached!
% 2.63/1.65  % (20756)------------------------------
% 2.63/1.65  % (20756)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.65  % (20756)Termination reason: Unknown
% 2.63/1.65  % (20756)Termination phase: shuffling
% 2.63/1.65  
% 2.63/1.65  % (20756)Memory used [KB]: 2046
% 2.63/1.65  % (20756)Time elapsed: 0.008 s
% 2.63/1.65  % (20756)Instructions burned: 18 (million)
% 2.63/1.65  % (20756)------------------------------
% 2.63/1.65  % (20756)------------------------------
% 2.63/1.66  % (20757)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_20450 for (2998ds/3Mi)
% 2.63/1.66  % (20757)Instruction limit reached!
% 2.63/1.66  % (20757)------------------------------
% 2.63/1.66  % (20757)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.66  % (20757)Termination reason: Unknown
% 2.63/1.66  % (20757)Termination phase: shuffling
% 2.63/1.66  
% 2.63/1.66  % (20757)Memory used [KB]: 1407
% 2.63/1.66  % (20757)Time elapsed: 0.003 s
% 2.63/1.66  % (20757)Instructions burned: 6 (million)
% 2.63/1.66  % (20757)------------------------------
% 2.63/1.66  % (20757)------------------------------
% 2.63/1.67  % (20759)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_20450 for (2998ds/30Mi)
% 2.63/1.68  % (20759)Instruction limit reached!
% 2.63/1.68  % (20759)------------------------------
% 2.63/1.68  % (20759)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.68  % (20759)Termination reason: Unknown
% 2.63/1.68  % (20759)Termination phase: Property scanning
% 2.63/1.68  
% 2.63/1.68  % (20759)Memory used [KB]: 2174
% 2.63/1.68  % (20759)Time elapsed: 0.010 s
% 2.63/1.68  % (20759)Instructions burned: 30 (million)
% 2.63/1.68  % (20759)------------------------------
% 2.63/1.68  % (20759)------------------------------
% 2.63/1.69  % (20748)Refutation not found, incomplete strategy
% 2.63/1.69  % (20748)------------------------------
% 2.63/1.69  % (20748)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.69  % (20748)Termination reason: Refutation not found, incomplete strategy
% 2.63/1.69  
% 2.63/1.69  
% 2.63/1.69  % (20748)Memory used [KB]: 9594
% 2.63/1.69  % (20748)Time elapsed: 0.079 s
% 2.63/1.69  % (20748)Instructions burned: 240 (million)
% 2.63/1.69  % (20748)------------------------------
% 2.63/1.69  % (20748)------------------------------
% 2.63/1.69  % (20760)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_20450 for (2998ds/127Mi)
% 2.63/1.70  % (20761)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_20450 for (2998ds/100Mi)
% 2.63/1.72  % (20760)Instruction limit reached!
% 2.63/1.72  % (20760)------------------------------
% 2.63/1.72  % (20760)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.72  % (20760)Termination reason: Unknown
% 2.63/1.72  % (20760)Termination phase: Property scanning
% 2.63/1.72  
% 2.63/1.72  % (20760)Memory used [KB]: 4221
% 2.63/1.72  % (20760)Time elapsed: 0.037 s
% 2.63/1.72  % (20760)Instructions burned: 129 (million)
% 2.63/1.72  % (20760)------------------------------
% 2.63/1.72  % (20760)------------------------------
% 2.63/1.73  % (20761)Instruction limit reached!
% 2.63/1.73  % (20761)------------------------------
% 2.63/1.73  % (20761)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.73  % (20761)Termination reason: Unknown
% 2.63/1.73  % (20761)Termination phase: Saturation
% 2.63/1.73  
% 2.63/1.73  % (20761)Memory used [KB]: 6524
% 2.63/1.73  % (20761)Time elapsed: 0.030 s
% 2.63/1.73  % (20761)Instructions burned: 102 (million)
% 2.63/1.73  % (20761)------------------------------
% 2.63/1.73  % (20761)------------------------------
% 2.63/1.73  % (20762)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_20450 for (2998ds/3Mi)
% 2.63/1.73  % (20762)Instruction limit reached!
% 2.63/1.73  % (20762)------------------------------
% 2.63/1.73  % (20762)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.73  % (20762)Termination reason: Unknown
% 2.63/1.73  % (20762)Termination phase: shuffling
% 2.63/1.73  
% 2.63/1.73  % (20762)Memory used [KB]: 1279
% 2.63/1.73  % (20762)Time elapsed: 0.002 s
% 2.63/1.73  % (20762)Instructions burned: 3 (million)
% 2.63/1.73  % (20762)------------------------------
% 2.63/1.73  % (20762)------------------------------
% 2.63/1.74  % (20763)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_20450 for (2998ds/20Mi)
% 2.63/1.74  % (20763)Instruction limit reached!
% 2.63/1.74  % (20763)------------------------------
% 2.63/1.74  % (20763)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.74  % (20763)Termination reason: Unknown
% 2.63/1.74  % (20763)Termination phase: shuffling
% 2.63/1.74  
% 2.63/1.74  % (20763)Memory used [KB]: 2174
% 2.63/1.74  % (20763)Time elapsed: 0.009 s
% 2.63/1.74  % (20763)Instructions burned: 21 (million)
% 2.63/1.74  % (20763)------------------------------
% 2.63/1.74  % (20763)------------------------------
% 2.63/1.74  % (20764)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_20450 for (2997ds/86Mi)
% 2.63/1.75  % (20765)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_20450 for (2997ds/107Mi)
% 2.63/1.76  % (20752)Instruction limit reached!
% 2.63/1.76  % (20752)------------------------------
% 2.63/1.76  % (20752)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.76  % (20752)Termination reason: Unknown
% 2.63/1.76  % (20752)Termination phase: Saturation
% 2.63/1.76  
% 2.63/1.76  % (20752)Memory used [KB]: 9978
% 2.63/1.76  % (20752)Time elapsed: 0.126 s
% 2.63/1.76  % (20752)Instructions burned: 378 (million)
% 2.63/1.76  % (20752)------------------------------
% 2.63/1.76  % (20752)------------------------------
% 2.63/1.77  % (20766)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_20450 for (2997ds/39Mi)
% 2.63/1.77  % (20764)Instruction limit reached!
% 2.63/1.77  % (20764)------------------------------
% 2.63/1.77  % (20764)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.77  % (20764)Termination reason: Unknown
% 2.63/1.77  % (20764)Termination phase: Preprocessing 3
% 2.63/1.77  
% 2.63/1.77  % (20764)Memory used [KB]: 3965
% 2.63/1.77  % (20764)Time elapsed: 0.026 s
% 2.63/1.77  % (20764)Instructions burned: 86 (million)
% 2.63/1.77  % (20764)------------------------------
% 2.63/1.77  % (20764)------------------------------
% 2.63/1.78  % (20766)Instruction limit reached!
% 2.63/1.78  % (20766)------------------------------
% 2.63/1.78  % (20766)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.78  % (20766)Termination reason: Unknown
% 2.63/1.78  % (20766)Termination phase: Property scanning
% 2.63/1.78  
% 2.63/1.78  % (20766)Memory used [KB]: 1918
% 2.63/1.78  % (20766)Time elapsed: 0.013 s
% 2.63/1.78  % (20766)Instructions burned: 39 (million)
% 2.63/1.78  % (20766)------------------------------
% 2.63/1.78  % (20766)------------------------------
% 2.63/1.78  % (20767)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_20450 for (2997ds/448Mi)
% 2.63/1.79  % (20765)Instruction limit reached!
% 2.63/1.79  % (20765)------------------------------
% 2.63/1.79  % (20765)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.79  % (20765)Termination reason: Unknown
% 2.63/1.79  % (20765)Termination phase: Property scanning
% 2.63/1.79  
% 2.63/1.79  % (20765)Memory used [KB]: 4477
% 2.63/1.79  % (20765)Time elapsed: 0.035 s
% 2.63/1.79  % (20765)Instructions burned: 107 (million)
% 2.63/1.79  % (20765)------------------------------
% 2.63/1.79  % (20765)------------------------------
% 2.63/1.79  % (20768)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_20450 for (2997ds/46Mi)
% 2.63/1.80  % (20769)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_20450 for (2997ds/98Mi)
% 2.63/1.80  % (20768)Instruction limit reached!
% 2.63/1.80  % (20768)------------------------------
% 2.63/1.80  % (20768)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.80  % (20768)Termination reason: Unknown
% 2.63/1.80  % (20768)Termination phase: Preprocessing 1
% 2.63/1.80  
% 2.63/1.80  % (20768)Memory used [KB]: 2430
% 2.63/1.80  % (20768)Time elapsed: 0.016 s
% 2.63/1.80  % (20768)Instructions burned: 46 (million)
% 2.63/1.80  % (20768)------------------------------
% 2.63/1.80  % (20768)------------------------------
% 2.63/1.81  % (20770)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_20450 for (2997ds/507Mi)
% 2.63/1.82  % (20769)Instruction limit reached!
% 2.63/1.82  % (20769)------------------------------
% 2.63/1.82  % (20769)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.82  % (20769)Termination reason: Unknown
% 2.63/1.82  % (20769)Termination phase: Saturation
% 2.63/1.82  
% 2.63/1.82  % (20769)Memory used [KB]: 2046
% 2.63/1.82  % (20769)Time elapsed: 0.029 s
% 2.63/1.82  % (20769)Instructions burned: 100 (million)
% 2.63/1.82  % (20769)------------------------------
% 2.63/1.82  % (20769)------------------------------
% 2.63/1.83  % (20737)Instruction limit reached!
% 2.63/1.83  % (20737)------------------------------
% 2.63/1.83  % (20737)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.83  % (20737)Termination reason: Unknown
% 2.63/1.83  % (20737)Termination phase: Saturation
% 2.63/1.83  
% 2.63/1.83  % (20737)Memory used [KB]: 7547
% 2.63/1.83  % (20737)Time elapsed: 0.263 s
% 2.63/1.83  % (20737)Instructions burned: 1043 (million)
% 2.63/1.83  % (20737)------------------------------
% 2.63/1.83  % (20737)------------------------------
% 2.63/1.83  % (20753)Instruction limit reached!
% 2.63/1.83  % (20753)------------------------------
% 2.63/1.83  % (20753)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.83  % (20753)Termination reason: Unknown
% 2.63/1.83  % (20753)Termination phase: Saturation
% 2.63/1.83  
% 2.63/1.83  % (20753)Memory used [KB]: 7036
% 2.63/1.83  % (20753)Time elapsed: 0.210 s
% 2.63/1.83  % (20753)Instructions burned: 782 (million)
% 2.63/1.83  % (20753)------------------------------
% 2.63/1.83  % (20753)------------------------------
% 2.63/1.84  % (20772)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on DTF2THF_20450 for (2996ds/39Mi)
% 2.63/1.84  % (20771)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_20450 for (2996ds/149Mi)
% 2.63/1.84  % (20773)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_20450 for (2996ds/6Mi)
% 2.63/1.85  % (20773)Instruction limit reached!
% 2.63/1.85  % (20773)------------------------------
% 2.63/1.85  % (20773)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.85  % (20773)Termination reason: Unknown
% 2.63/1.85  % (20773)Termination phase: shuffling
% 2.63/1.85  
% 2.63/1.85  % (20773)Memory used [KB]: 1407
% 2.63/1.85  % (20773)Time elapsed: 0.003 s
% 2.63/1.85  % (20773)Instructions burned: 7 (million)
% 2.63/1.85  % (20773)------------------------------
% 2.63/1.85  % (20773)------------------------------
% 2.63/1.85  % (20772)Instruction limit reached!
% 2.63/1.85  % (20772)------------------------------
% 2.63/1.85  % (20772)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.85  % (20772)Termination reason: Unknown
% 2.63/1.85  % (20772)Termination phase: Preprocessing 1
% 2.63/1.85  
% 2.63/1.85  % (20772)Memory used [KB]: 2558
% 2.63/1.85  % (20772)Time elapsed: 0.014 s
% 2.63/1.85  % (20772)Instructions burned: 41 (million)
% 2.63/1.85  % (20772)------------------------------
% 2.63/1.85  % (20772)------------------------------
% 2.63/1.86  % (20774)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_20450 for (2996ds/1087Mi)
% 2.63/1.86  % (20775)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on DTF2THF_20450 for (2996ds/47Mi)
% 2.63/1.86  % (20746)Instruction limit reached!
% 2.63/1.86  % (20746)------------------------------
% 2.63/1.86  % (20746)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.86  % (20746)Termination reason: Unknown
% 2.63/1.86  % (20746)Termination phase: Saturation
% 2.63/1.86  
% 2.63/1.86  % (20746)Memory used [KB]: 11513
% 2.63/1.86  % (20746)Time elapsed: 0.252 s
% 2.63/1.86  % (20746)Instructions burned: 711 (million)
% 2.63/1.86  % (20746)------------------------------
% 2.63/1.86  % (20746)------------------------------
% 2.63/1.87  % (20776)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_20450 for (2996ds/44Mi)
% 2.63/1.87  % (20775)Instruction limit reached!
% 2.63/1.87  % (20775)------------------------------
% 2.63/1.87  % (20775)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.87  % (20775)Termination reason: Unknown
% 2.63/1.87  % (20775)Termination phase: Preprocessing 3
% 2.63/1.87  
% 2.63/1.87  % (20775)Memory used [KB]: 2686
% 2.63/1.87  % (20775)Time elapsed: 0.015 s
% 2.63/1.87  % (20775)Instructions burned: 48 (million)
% 2.63/1.87  % (20775)------------------------------
% 2.63/1.87  % (20775)------------------------------
% 2.63/1.88  % (20771)Instruction limit reached!
% 2.63/1.88  % (20771)------------------------------
% 2.63/1.88  % (20771)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.88  % (20771)Termination reason: Unknown
% 2.63/1.88  % (20771)Termination phase: Property scanning
% 2.63/1.88  
% 2.63/1.88  % (20771)Memory used [KB]: 7803
% 2.63/1.88  % (20771)Time elapsed: 0.046 s
% 2.63/1.88  % (20771)Instructions burned: 150 (million)
% 2.63/1.88  % (20771)------------------------------
% 2.63/1.88  % (20771)------------------------------
% 2.63/1.88  % (20777)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_20450 for (2996ds/432Mi)
% 2.63/1.88  % (20776)Instruction limit reached!
% 2.63/1.88  % (20776)------------------------------
% 2.63/1.88  % (20776)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.88  % (20776)Termination reason: Unknown
% 2.63/1.88  % (20776)Termination phase: Property scanning
% 2.63/1.88  
% 2.63/1.88  % (20776)Memory used [KB]: 1918
% 2.63/1.88  % (20776)Time elapsed: 0.014 s
% 2.63/1.88  % (20776)Instructions burned: 46 (million)
% 2.63/1.88  % (20776)------------------------------
% 2.63/1.88  % (20776)------------------------------
% 2.63/1.89  % (20779)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_20450 for (2996ds/31Mi)
% 2.63/1.90  % (20770)Refutation not found, incomplete strategy
% 2.63/1.90  % (20770)------------------------------
% 2.63/1.90  % (20770)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.90  % (20770)Termination reason: Refutation not found, incomplete strategy
% 2.63/1.90  
% 2.63/1.90  
% 2.63/1.90  % (20770)Memory used [KB]: 9978
% 2.63/1.90  % (20770)Time elapsed: 0.106 s
% 2.63/1.90  % (20770)Instructions burned: 276 (million)
% 2.63/1.90  % (20770)------------------------------
% 2.63/1.90  % (20770)------------------------------
% 2.63/1.90  % (20778)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on DTF2THF_20450 for (2996ds/62Mi)
% 2.63/1.90  % (20779)Instruction limit reached!
% 2.63/1.90  % (20779)------------------------------
% 2.63/1.90  % (20779)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.90  % (20779)Termination reason: Unknown
% 2.63/1.90  % (20779)Termination phase: Property scanning
% 2.63/1.90  
% 2.63/1.90  % (20779)Memory used [KB]: 2174
% 2.63/1.90  % (20779)Time elapsed: 0.011 s
% 2.63/1.90  % (20779)Instructions burned: 31 (million)
% 2.63/1.90  % (20779)------------------------------
% 2.63/1.90  % (20779)------------------------------
% 2.63/1.91  % (20780)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on DTF2THF_20450 for (2996ds/96Mi)
% 2.63/1.91  % (20767)Instruction limit reached!
% 2.63/1.91  % (20767)------------------------------
% 2.63/1.91  % (20767)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.91  % (20767)Termination reason: Unknown
% 2.63/1.91  % (20767)Termination phase: Saturation
% 2.63/1.91  
% 2.63/1.91  % (20767)Memory used [KB]: 7291
% 2.63/1.91  % (20767)Time elapsed: 0.154 s
% 2.63/1.91  % (20767)Instructions burned: 449 (million)
% 2.63/1.91  % (20767)------------------------------
% 2.63/1.91  % (20767)------------------------------
% 2.63/1.91  % (20781)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_20450 for (2996ds/453Mi)
% 2.63/1.91  % (20755)Instruction limit reached!
% 2.63/1.91  % (20755)------------------------------
% 2.63/1.91  % (20755)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.91  % (20755)Termination reason: Unknown
% 2.63/1.91  % (20755)Termination phase: Saturation
% 2.63/1.91  
% 2.63/1.91  % (20755)Memory used [KB]: 12153
% 2.63/1.91  % (20755)Time elapsed: 0.289 s
% 2.63/1.91  % (20755)Instructions burned: 880 (million)
% 2.63/1.91  % (20755)------------------------------
% 2.63/1.91  % (20755)------------------------------
% 2.63/1.92  % (20782)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_20450 for (2996ds/71Mi)
% 2.63/1.92  % (20783)dis+1002_1:1_bd=off:fsr=off:ntd=on:s2a=on:ss=axioms:i=83:si=on:rtra=on_0 on DTF2THF_20450 for (2996ds/83Mi)
% 2.63/1.93  % (20778)Instruction limit reached!
% 2.63/1.93  % (20778)------------------------------
% 2.63/1.93  % (20778)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.93  % (20778)Termination reason: Unknown
% 2.63/1.93  % (20778)Termination phase: Property scanning
% 2.63/1.93  
% 2.63/1.93  % (20778)Memory used [KB]: 1918
% 2.63/1.93  % (20778)Time elapsed: 0.033 s
% 2.63/1.93  % (20778)Instructions burned: 63 (million)
% 2.63/1.93  % (20778)------------------------------
% 2.63/1.93  % (20778)------------------------------
% 2.63/1.94  % (20780)Instruction limit reached!
% 2.63/1.94  % (20780)------------------------------
% 2.63/1.94  % (20780)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.94  % (20780)Termination reason: Unknown
% 2.63/1.94  % (20780)Termination phase: Property scanning
% 2.63/1.94  
% 2.63/1.94  % (20780)Memory used [KB]: 4221
% 2.63/1.94  % (20780)Time elapsed: 0.032 s
% 2.63/1.94  % (20780)Instructions burned: 99 (million)
% 2.63/1.94  % (20780)------------------------------
% 2.63/1.94  % (20780)------------------------------
% 2.63/1.94  % (20782)Instruction limit reached!
% 2.63/1.94  % (20782)------------------------------
% 2.63/1.94  % (20782)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.94  % (20782)Termination reason: Unknown
% 2.63/1.94  % (20782)Termination phase: Preprocessing 3
% 2.63/1.94  
% 2.63/1.94  % (20782)Memory used [KB]: 3326
% 2.63/1.94  % (20782)Time elapsed: 0.023 s
% 2.63/1.94  % (20782)Instructions burned: 72 (million)
% 2.63/1.94  % (20782)------------------------------
% 2.63/1.94  % (20782)------------------------------
% 2.63/1.95  % (20774)First to succeed.
% 2.63/1.95  % (20784)lrs+10_1:128_cnfonf=lazy_not_gen_be_off:hud=1:ins=1:i=11:si=on:rtra=on_0 on DTF2THF_20450 for (2995ds/11Mi)
% 2.63/1.95  % (20785)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_20450 for (2995ds/41Mi)
% 2.63/1.95  % (20783)Instruction limit reached!
% 2.63/1.95  % (20783)------------------------------
% 2.63/1.95  % (20783)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.95  % (20783)Termination reason: Unknown
% 2.63/1.95  % (20783)Termination phase: Saturation
% 2.63/1.95  
% 2.63/1.95  % (20783)Memory used [KB]: 6780
% 2.63/1.95  % (20783)Time elapsed: 0.027 s
% 2.63/1.95  % (20783)Instructions burned: 85 (million)
% 2.63/1.95  % (20783)------------------------------
% 2.63/1.95  % (20783)------------------------------
% 2.63/1.95  % (20786)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_20450 for (2995ds/6Mi)
% 2.63/1.95  % (20786)Instruction limit reached!
% 2.63/1.95  % (20786)------------------------------
% 2.63/1.95  % (20786)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.95  % (20786)Termination reason: Unknown
% 2.63/1.95  % (20786)Termination phase: shuffling
% 2.63/1.95  
% 2.63/1.95  % (20786)Memory used [KB]: 1407
% 2.63/1.95  % (20786)Time elapsed: 0.003 s
% 2.63/1.95  % (20786)Instructions burned: 7 (million)
% 2.63/1.95  % (20786)------------------------------
% 2.63/1.95  % (20786)------------------------------
% 2.63/1.95  % (20784)Instruction limit reached!
% 2.63/1.95  % (20784)------------------------------
% 2.63/1.95  % (20784)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.95  % (20784)Termination reason: Unknown
% 2.63/1.95  % (20784)Termination phase: shuffling
% 2.63/1.95  
% 2.63/1.95  % (20784)Memory used [KB]: 1535
% 2.63/1.95  % (20784)Time elapsed: 0.008 s
% 2.63/1.95  % (20784)Instructions burned: 11 (million)
% 2.63/1.95  % (20784)------------------------------
% 2.63/1.95  % (20784)------------------------------
% 2.63/1.96  % (20787)dis+10_1:1_avsq=on:cnfonf=off:e2e=on:nm=32:i=150:si=on:rtra=on_0 on DTF2THF_20450 for (2995ds/150Mi)
% 2.63/1.96  % (20785)Instruction limit reached!
% 2.63/1.96  % (20785)------------------------------
% 2.63/1.96  % (20785)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.96  % (20785)Termination reason: Unknown
% 2.63/1.96  % (20785)Termination phase: Property scanning
% 2.63/1.96  
% 2.63/1.96  % (20785)Memory used [KB]: 1918
% 2.63/1.96  % (20785)Time elapsed: 0.014 s
% 2.63/1.96  % (20785)Instructions burned: 43 (million)
% 2.63/1.96  % (20785)------------------------------
% 2.63/1.96  % (20785)------------------------------
% 2.63/1.96  % (20788)ott+1010_1:1_au=on:s2a=on:sd=7:ss=axioms:st=1.5:i=343:si=on:rtra=on_0 on DTF2THF_20450 for (2995ds/343Mi)
% 2.63/1.97  % (20789)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_20450 for (2995ds/109Mi)
% 2.63/1.97  % (20790)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_20450 for (2995ds/253Mi)
% 2.63/1.98  % (20788)Refutation not found, incomplete strategy
% 2.63/1.98  % (20788)------------------------------
% 2.63/1.98  % (20788)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.98  % (20788)Termination reason: Refutation not found, incomplete strategy
% 2.63/1.98  
% 2.63/1.98  
% 2.63/1.98  % (20788)Memory used [KB]: 6652
% 2.63/1.98  % (20788)Time elapsed: 0.016 s
% 2.63/1.98  % (20788)Instructions burned: 49 (million)
% 2.63/1.98  % (20788)------------------------------
% 2.63/1.98  % (20788)------------------------------
% 2.63/1.98  % (20774)Refutation found. Thanks to Tanya!
% 2.63/1.98  % SZS status Theorem for DTF2THF_20450
% 2.63/1.98  % SZS output start Proof for DTF2THF_20450
% 2.63/1.98  thf(type_def_5, type, term: $tType).
% 2.63/1.98  thf(type_def_7, type, subst: $tType).
% 2.63/1.98  thf(type_def_8, type, d_term: $tType).
% 2.63/1.98  thf(type_def_9, type, d_subst: $tType).
% 2.63/1.98  thf(func_def_0, type, term: $tType).
% 2.63/1.98  thf(func_def_1, type, subst: $tType).
% 2.63/1.98  thf(func_def_2, type, one: term).
% 2.63/1.98  thf(func_def_3, type, ap: term > term > term).
% 2.63/1.98  thf(func_def_4, type, lam: term > term).
% 2.63/1.98  thf(func_def_5, type, sub: term > subst > term).
% 2.63/1.98  thf(func_def_6, type, id: subst).
% 2.63/1.98  thf(func_def_7, type, sh: subst).
% 2.63/1.98  thf(func_def_8, type, push: term > subst > subst).
% 2.63/1.98  thf(func_def_9, type, comp: subst > subst > subst).
% 2.63/1.98  thf(func_def_10, type, var: term > $o).
% 2.63/1.98  thf(func_def_18, type, hoasap: subst > term > subst > term > term).
% 2.63/1.98  thf(func_def_73, type, hoaslam: subst > (subst > term > term) > term).
% 2.63/1.98  thf(func_def_86, type, hoasinduction_p_and_p_prime: (subst > term > subst > $o) > (term > $o) > $o).
% 2.63/1.98  thf(func_def_107, type, hoasvar: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_121, type, pushprop_p_and_p_prime: term > subst > (term > $o) > (term > $o) > $o).
% 2.63/1.98  thf(func_def_124, type, d_term: $tType).
% 2.63/1.98  thf(func_def_125, type, d_subst: $tType).
% 2.63/1.98  thf(func_def_126, type, d2term: d_term > term).
% 2.63/1.98  thf(func_def_127, type, d2subst: d_subst > subst).
% 2.63/1.98  thf(func_def_128, type, d_one: d_term).
% 2.63/1.98  thf(func_def_129, type, d_id: d_subst).
% 2.63/1.98  thf(func_def_141, type, sP0: (term > $o) > $o).
% 2.63/1.98  thf(func_def_143, type, sP2: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_144, type, sP3: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_145, type, sP4: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_146, type, sP5: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_147, type, sP6: (term > $o) > $o).
% 2.63/1.98  thf(func_def_148, type, sP7: (term > $o) > $o).
% 2.63/1.98  thf(func_def_149, type, sP8: (term > $o) > $o).
% 2.63/1.98  thf(func_def_150, type, sP9: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_154, type, sP13: (term > $o) > $o).
% 2.63/1.98  thf(func_def_155, type, sP14: (term > $o) > $o).
% 2.63/1.98  thf(func_def_157, type, sP16: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_158, type, sP17: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_159, type, sP18: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_161, type, sP20: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_165, type, sP24: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_167, type, sP26: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_168, type, sP27: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_169, type, sP28: (term > $o) > $o).
% 2.63/1.98  thf(func_def_170, type, sP29: (term > $o) > $o).
% 2.63/1.98  thf(func_def_172, type, sP31: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_173, type, sP32: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_174, type, sP33: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_175, type, sP34: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_178, type, sP37: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_179, type, sP38: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_180, type, sP39: term > (term > $o) > $o).
% 2.63/1.98  thf(func_def_184, type, sP43: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_185, type, sP44: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_187, type, sP46: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_189, type, sP48: (term > $o) > $o).
% 2.63/1.98  thf(func_def_190, type, sP49: (term > $o) > $o).
% 2.63/1.98  thf(func_def_192, type, sP51: (term > $o) > $o).
% 2.63/1.98  thf(func_def_193, type, sP52: (term > $o) > $o).
% 2.63/1.98  thf(func_def_194, type, sP53: (term > $o) > $o).
% 2.63/1.98  thf(func_def_195, type, sP54: (term > $o) > $o).
% 2.63/1.98  thf(func_def_200, type, sP59: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_203, type, sP62: (term > $o) > $o).
% 2.63/1.98  thf(func_def_204, type, sP63: (term > $o) > $o).
% 2.63/1.98  thf(func_def_205, type, sP64: (term > $o) > $o).
% 2.63/1.98  thf(func_def_206, type, sP65: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_207, type, sP66: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_208, type, sP67: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_209, type, sP68: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_210, type, sP69: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_211, type, sP70: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_212, type, sP71: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_213, type, sP72: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_214, type, sP73: term > (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_219, type, sP78: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_220, type, sP79: (term > $o) > term > $o).
% 2.63/1.98  thf(func_def_221, type, sP80: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_223, type, sP82: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_224, type, sP83: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_227, type, sP86: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_229, type, sP88: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_230, type, sP89: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_231, type, sP90: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_232, type, sP91: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_234, type, sP93: (term > $o) > $o).
% 2.63/1.98  thf(func_def_235, type, sP94: (term > $o) > $o).
% 2.63/1.98  thf(func_def_236, type, sP95: (term > $o) > $o).
% 2.63/1.98  thf(func_def_237, type, sP96: (term > $o) > $o).
% 2.63/1.98  thf(func_def_240, type, sP99: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_242, type, sP101: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_243, type, sP102: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_245, type, sP104: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_246, type, sP105: (term > $o) > $o).
% 2.63/1.98  thf(func_def_247, type, sP106: (term > $o) > $o).
% 2.63/1.98  thf(func_def_248, type, sP107: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_249, type, sP108: (subst > term > subst > $o) > $o).
% 2.63/1.98  thf(func_def_253, type, sK112: term > $o).
% 2.63/1.98  thf(func_def_254, type, sK113: term > $o).
% 2.63/1.98  thf(func_def_255, type, sK114: term).
% 2.63/1.98  thf(func_def_256, type, sK115: subst).
% 2.63/1.98  thf(func_def_257, type, sK116: subst > (term > $o) > term).
% 2.63/1.98  thf(func_def_258, type, sK117: (term > $o) > term).
% 2.63/1.98  thf(func_def_259, type, sK118: (term > $o) > term).
% 2.63/1.98  thf(func_def_260, type, sK119: term).
% 2.63/1.98  thf(func_def_261, type, sK120: term > $o).
% 2.63/1.98  thf(func_def_262, type, sK121: (subst > term > subst > $o) > (term > $o) > term).
% 2.63/1.98  thf(func_def_263, type, sK122: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_264, type, sK123: term > $o).
% 2.63/1.98  thf(func_def_265, type, sK124: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_266, type, sK125: term).
% 2.63/1.98  thf(func_def_267, type, sK126: term).
% 2.63/1.98  thf(func_def_268, type, sK127: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_269, type, sK128: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_270, type, sK129: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_271, type, sK130: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_272, type, sK131: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_273, type, sK132: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_274, type, sK133: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_275, type, sK134: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_276, type, sK135: (term > $o) > term).
% 2.63/1.98  thf(func_def_277, type, sK136: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_278, type, sK137: (term > $o) > term).
% 2.63/1.98  thf(func_def_279, type, sK138: (term > $o) > term).
% 2.63/1.98  thf(func_def_280, type, sK139: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_281, type, sK140: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_282, type, sK141: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_283, type, sK142: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_284, type, sK143: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_285, type, sK144: term).
% 2.63/1.98  thf(func_def_286, type, sK145: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_287, type, sK146: term).
% 2.63/1.98  thf(func_def_288, type, sK147: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_289, type, sK148: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_290, type, sK149: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_291, type, sK150: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_292, type, sK151: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_293, type, sK152: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_294, type, sK153: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_295, type, sK154: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_296, type, sK155: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_297, type, sK156: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_298, type, sK157: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_299, type, sK158: term).
% 2.63/1.98  thf(func_def_300, type, sK159: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_301, type, sK160: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_302, type, sK161: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_303, type, sK162: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_304, type, sK163: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_305, type, sK164: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_306, type, sK165: (term > $o) > term).
% 2.63/1.98  thf(func_def_307, type, sK166: term).
% 2.63/1.98  thf(func_def_308, type, sK167: term > $o).
% 2.63/1.98  thf(func_def_309, type, sK168: subst).
% 2.63/1.98  thf(func_def_310, type, sK169: term > $o).
% 2.63/1.98  thf(func_def_311, type, sK170: term).
% 2.63/1.98  thf(func_def_312, type, sK171: (term > $o) > subst > term).
% 2.63/1.98  thf(func_def_313, type, sK172: (term > $o) > term).
% 2.63/1.98  thf(func_def_314, type, sK173: (term > $o) > term).
% 2.63/1.98  thf(func_def_315, type, sK174: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_316, type, sK175: (term > $o) > term).
% 2.63/1.98  thf(func_def_317, type, sK176: (term > $o) > term).
% 2.63/1.98  thf(func_def_318, type, sK177: (term > $o) > term).
% 2.63/1.98  thf(func_def_319, type, sK178: (term > $o) > term).
% 2.63/1.98  thf(func_def_320, type, sK179: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_321, type, sK180: term).
% 2.63/1.98  thf(func_def_322, type, sK181: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_323, type, sK182: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_324, type, sK183: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_325, type, sK184: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_326, type, sK185: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_327, type, sK186: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_328, type, sK187: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_329, type, sK188: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_330, type, sK189: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_331, type, sK190: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_332, type, sK191: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_333, type, sK192: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_334, type, sK193: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_335, type, sK194: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_336, type, sK195: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_337, type, sK196: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_338, type, sK197: term).
% 2.63/1.98  thf(func_def_339, type, sK198: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_340, type, sK199: (subst > term > subst > $o) > term > term).
% 2.63/1.98  thf(func_def_341, type, sK200: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_342, type, sK201: (subst > term > term) > term > subst).
% 2.63/1.98  thf(func_def_343, type, sK202: (subst > term > term) > term > subst).
% 2.63/1.98  thf(func_def_344, type, sK203: (subst > term > term) > term > term).
% 2.63/1.98  thf(func_def_345, type, sK204: (subst > term > term) > term > subst).
% 2.63/1.98  thf(func_def_346, type, sK205: (subst > term > term) > term > subst).
% 2.63/1.98  thf(func_def_347, type, sK206: (subst > term > term) > term > term).
% 2.63/1.98  thf(func_def_348, type, sK207: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_349, type, sK208: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_350, type, sK209: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_351, type, sK210: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_352, type, sK211: term).
% 2.63/1.98  thf(func_def_353, type, sK212: term).
% 2.63/1.98  thf(func_def_354, type, sK213: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_355, type, sK214: (subst > term > subst > $o) > term > term).
% 2.63/1.98  thf(func_def_356, type, sK215: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_357, type, sK216: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_358, type, sK217: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_359, type, sK218: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_360, type, sK219: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_361, type, sK220: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_362, type, sK221: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_363, type, sK222: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_364, type, sK223: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_365, type, sK224: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_366, type, sK225: term).
% 2.63/1.98  thf(func_def_367, type, sK226: term > $o).
% 2.63/1.98  thf(func_def_368, type, sK227: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_369, type, sK228: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_370, type, sK229: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_371, type, sK230: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_372, type, sK231: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_373, type, sK232: (subst > term > subst > $o) > (term > $o) > term).
% 2.63/1.98  thf(func_def_374, type, sK233: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_375, type, sK234: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_376, type, sK235: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_377, type, sK236: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_378, type, sK237: (term > $o) > term > term).
% 2.63/1.98  thf(func_def_379, type, sK238: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_380, type, sK239: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_381, type, sK240: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_382, type, sK241: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_383, type, sK242: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_384, type, sK243: term).
% 2.63/1.98  thf(func_def_385, type, sK244: term > $o).
% 2.63/1.98  thf(func_def_386, type, sK245: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_387, type, sK246: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_388, type, sK247: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_389, type, sK248: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_390, type, sK249: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_391, type, sK250: term).
% 2.63/1.98  thf(func_def_392, type, sK251: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_393, type, sK252: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_394, type, sK253: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_395, type, sK254: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_396, type, sK255: term).
% 2.63/1.98  thf(func_def_397, type, sK256: term).
% 2.63/1.98  thf(func_def_398, type, sK257: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_399, type, sK258: term).
% 2.63/1.98  thf(func_def_400, type, sK259: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_401, type, sK260: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_402, type, sK261: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_403, type, sK262: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_404, type, sK263: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_405, type, sK264: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_406, type, sK265: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_407, type, sK266: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_408, type, sK267: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_409, type, sK268: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_410, type, sK269: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_411, type, sK270: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_412, type, sK271: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_413, type, sK272: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_414, type, sK273: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_415, type, sK274: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_416, type, sK275: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_417, type, sK276: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_418, type, sK277: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_419, type, sK278: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_420, type, sK279: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_421, type, sK280: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_422, type, sK281: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_423, type, sK282: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_424, type, sK283: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_425, type, sK284: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_426, type, sK285: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_427, type, sK286: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_428, type, sK287: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_429, type, sK288: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_430, type, sK289: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_431, type, sK290: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_432, type, sK291: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_433, type, sK292: (term > $o) > term).
% 2.63/1.98  thf(func_def_434, type, sK293: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_435, type, sK294: (term > $o) > term).
% 2.63/1.98  thf(func_def_436, type, sK295: (term > $o) > term).
% 2.63/1.98  thf(func_def_437, type, sK296: (term > $o) > term).
% 2.63/1.98  thf(func_def_438, type, sK297: subst).
% 2.63/1.98  thf(func_def_439, type, sK298: subst).
% 2.63/1.98  thf(func_def_440, type, sK299: subst).
% 2.63/1.98  thf(func_def_441, type, sK300: subst).
% 2.63/1.98  thf(func_def_442, type, sK301: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_443, type, sK302: term).
% 2.63/1.98  thf(func_def_444, type, sK303: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_445, type, sK304: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_446, type, sK305: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_447, type, sK306: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_448, type, sK307: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_449, type, sK308: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_450, type, sK309: term).
% 2.63/1.98  thf(func_def_451, type, sK310: term).
% 2.63/1.98  thf(func_def_452, type, sK311: term).
% 2.63/1.98  thf(func_def_453, type, sK312: term).
% 2.63/1.98  thf(func_def_454, type, sK313: term).
% 2.63/1.98  thf(func_def_455, type, sK314: term).
% 2.63/1.98  thf(func_def_456, type, sK315: term).
% 2.63/1.98  thf(func_def_457, type, sK316: term).
% 2.63/1.98  thf(func_def_458, type, sK317: subst > (term > $o) > term).
% 2.63/1.98  thf(func_def_459, type, sK318: term).
% 2.63/1.98  thf(func_def_460, type, sK319: term > $o).
% 2.63/1.98  thf(func_def_461, type, sK320: subst).
% 2.63/1.98  thf(func_def_462, type, sK321: term > $o).
% 2.63/1.98  thf(func_def_463, type, sK322: term).
% 2.63/1.98  thf(func_def_464, type, sK323: (term > $o) > term).
% 2.63/1.98  thf(func_def_465, type, sK324: (term > $o) > term).
% 2.63/1.98  thf(func_def_466, type, sK325: (term > $o) > term).
% 2.63/1.98  thf(func_def_467, type, sK326: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_468, type, sK327: (term > $o) > term).
% 2.63/1.98  thf(func_def_469, type, sK328: (term > $o) > term).
% 2.63/1.98  thf(func_def_470, type, sK329: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_471, type, sK330: (term > $o) > term).
% 2.63/1.98  thf(func_def_472, type, sK331: (term > $o) > term).
% 2.63/1.98  thf(func_def_473, type, sK332: term > $o).
% 2.63/1.98  thf(func_def_474, type, sK333: term).
% 2.63/1.98  thf(func_def_475, type, sK334: subst).
% 2.63/1.98  thf(func_def_476, type, sK335: subst > (term > $o) > term).
% 2.63/1.98  thf(func_def_477, type, sK336: (term > $o) > term).
% 2.63/1.98  thf(func_def_478, type, sK337: (term > $o) > term).
% 2.63/1.98  thf(func_def_479, type, sK338: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_480, type, sK339: (term > $o) > term).
% 2.63/1.98  thf(func_def_481, type, sK340: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_482, type, sK341: term).
% 2.63/1.98  thf(func_def_483, type, sK342: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_484, type, sK343: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_485, type, sK344: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_486, type, sK345: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_487, type, sK346: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_488, type, sK347: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_489, type, sK348: term).
% 2.63/1.98  thf(func_def_490, type, sK349: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_491, type, sK350: term > $o).
% 2.63/1.98  thf(func_def_492, type, sK351: term).
% 2.63/1.98  thf(func_def_493, type, sK352: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_494, type, sK353: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_495, type, sK354: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_496, type, sK355: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_497, type, sK356: (term > $o) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_498, type, sK357: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_499, type, sK358: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_500, type, sK359: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_501, type, sK360: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_502, type, sK361: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_503, type, sK362: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_504, type, sK363: subst).
% 2.63/1.98  thf(func_def_505, type, sK364: term).
% 2.63/1.98  thf(func_def_506, type, sK365: term).
% 2.63/1.98  thf(func_def_507, type, sK366: term).
% 2.63/1.98  thf(func_def_508, type, sK367: term).
% 2.63/1.98  thf(func_def_509, type, sK368: subst).
% 2.63/1.98  thf(func_def_510, type, sK369: term).
% 2.63/1.98  thf(func_def_511, type, sK370: subst > term > term).
% 2.63/1.98  thf(func_def_512, type, sK371: subst).
% 2.63/1.98  thf(func_def_513, type, sK372: subst > term > term).
% 2.63/1.98  thf(func_def_514, type, sK373: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_515, type, sK374: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_516, type, sK375: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_517, type, sK376: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_518, type, sK377: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_519, type, sK378: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_520, type, sK379: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_521, type, sK380: term > $o).
% 2.63/1.98  thf(func_def_522, type, sK381: term).
% 2.63/1.98  thf(func_def_523, type, sK382: (term > $o) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_524, type, sK383: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_525, type, sK384: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_526, type, sK385: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_527, type, sK386: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_528, type, sK387: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_529, type, sK388: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_530, type, sK389: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_531, type, sK390: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_532, type, sK391: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_533, type, sK392: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_534, type, sK393: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_535, type, sK394: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_536, type, sK395: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_537, type, sK396: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_538, type, sK397: term > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_539, type, sK398: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_540, type, sK399: term).
% 2.63/1.98  thf(func_def_541, type, sK400: term).
% 2.63/1.98  thf(func_def_542, type, sK401: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_543, type, sK402: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_544, type, sK403: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_545, type, sK404: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_546, type, sK405: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_547, type, sK406: (subst > term > subst > $o) > term > term).
% 2.63/1.98  thf(func_def_548, type, sK407: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_549, type, sK408: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_550, type, sK409: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_551, type, sK410: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_552, type, sK411: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_553, type, sK412: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_554, type, sK413: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_555, type, sK414: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_556, type, sK415: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_557, type, sK416: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_558, type, sK417: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_559, type, sK418: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_560, type, sK419: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_561, type, sK420: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_562, type, sK421: term).
% 2.63/1.98  thf(func_def_563, type, sK422: term > $o).
% 2.63/1.98  thf(func_def_564, type, sK423: (term > $o) > term).
% 2.63/1.98  thf(func_def_565, type, sK424: (term > $o) > term).
% 2.63/1.98  thf(func_def_566, type, sK425: (term > $o) > term).
% 2.63/1.98  thf(func_def_567, type, sK426: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_568, type, sK427: (term > $o) > term).
% 2.63/1.98  thf(func_def_569, type, sK428: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_570, type, sK429: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_571, type, sK430: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_572, type, sK431: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_573, type, sK432: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_574, type, sK433: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_575, type, sK434: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_576, type, sK435: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_577, type, sK436: term).
% 2.63/1.98  thf(func_def_578, type, sK437: term > $o).
% 2.63/1.98  thf(func_def_579, type, sK438: (term > $o) > term > term).
% 2.63/1.98  thf(func_def_580, type, sK439: (term > $o) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_581, type, sK440: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_582, type, sK441: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_583, type, sK442: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_584, type, sK443: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_585, type, sK444: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_586, type, sK445: term).
% 2.63/1.98  thf(func_def_587, type, sK446: term).
% 2.63/1.98  thf(func_def_588, type, sK447: term).
% 2.63/1.98  thf(func_def_589, type, sK448: term).
% 2.63/1.98  thf(func_def_590, type, sK449: term).
% 2.63/1.98  thf(func_def_591, type, sK450: term).
% 2.63/1.98  thf(func_def_592, type, sK451: term).
% 2.63/1.98  thf(func_def_593, type, sK452: term).
% 2.63/1.98  thf(func_def_594, type, sK453: term).
% 2.63/1.98  thf(func_def_595, type, sK454: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_596, type, sK455: term > $o).
% 2.63/1.98  thf(func_def_597, type, sK456: term).
% 2.63/1.98  thf(func_def_598, type, sK457: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_599, type, sK458: (term > $o) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_600, type, sK459: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_601, type, sK460: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_602, type, sK461: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_603, type, sK462: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_604, type, sK463: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_605, type, sK464: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_606, type, sK465: term).
% 2.63/1.98  thf(func_def_607, type, sK466: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_608, type, sK467: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_609, type, sK468: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_610, type, sK469: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_611, type, sK470: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_612, type, sK471: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_613, type, sK472: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_614, type, sK473: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_615, type, sK474: (subst > term > subst > $o) > term > term).
% 2.63/1.98  thf(func_def_616, type, sK475: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_617, type, sK476: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_618, type, sK477: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_619, type, sK478: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_620, type, sK479: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_621, type, sK480: term).
% 2.63/1.98  thf(func_def_622, type, sK481: term > $o).
% 2.63/1.98  thf(func_def_623, type, sK482: (term > $o) > term).
% 2.63/1.98  thf(func_def_624, type, sK483: (term > $o) > term).
% 2.63/1.98  thf(func_def_625, type, sK484: (term > $o) > term).
% 2.63/1.98  thf(func_def_626, type, sK485: (term > $o) > term).
% 2.63/1.98  thf(func_def_627, type, sK486: term > $o).
% 2.63/1.98  thf(func_def_628, type, sK487: term).
% 2.63/1.98  thf(func_def_629, type, sK488: (term > $o) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_630, type, sK489: (term > $o) > term > term).
% 2.63/1.98  thf(func_def_631, type, sK490: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_632, type, sK491: term).
% 2.63/1.98  thf(func_def_633, type, sK492: term > $o).
% 2.63/1.98  thf(func_def_634, type, sK493: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_635, type, sK494: term).
% 2.63/1.98  thf(func_def_636, type, sK495: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_637, type, sK496: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_638, type, sK497: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_639, type, sK498: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_640, type, sK499: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_641, type, sK500: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_642, type, sK501: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_643, type, sK502: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_644, type, sK503: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_645, type, sK504: (term > $o) > term).
% 2.63/1.98  thf(func_def_646, type, sK505: term > (term > $o) > term).
% 2.63/1.98  thf(func_def_647, type, sK506: (term > $o) > term).
% 2.63/1.98  thf(func_def_648, type, sK507: (term > $o) > term).
% 2.63/1.98  thf(func_def_649, type, sK508: (term > $o) > term).
% 2.63/1.98  thf(func_def_650, type, sK509: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_651, type, sK510: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_652, type, sK511: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_653, type, sK512: (subst > term > subst > $o) > subst).
% 2.63/1.98  thf(func_def_654, type, sK513: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_655, type, sK514: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_656, type, sK515: (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_657, type, sK516: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_658, type, sK517: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_659, type, sK518: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_660, type, sK519: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.63/1.98  thf(func_def_661, type, sK520: (subst > term > subst > $o) > subst > term > term).
% 2.63/1.98  thf(func_def_662, type, sK521: subst).
% 2.63/1.98  thf(func_def_663, type, sK522: term).
% 2.63/1.98  thf(func_def_664, type, sK523: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_665, type, sK524: (term > $o) > term).
% 2.63/1.98  thf(func_def_666, type, sK525: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_667, type, sK526: term).
% 2.63/1.98  thf(func_def_668, type, sK527: subst).
% 2.63/1.98  thf(func_def_669, type, sK528: term).
% 2.63/1.98  thf(func_def_670, type, sK529: subst).
% 2.63/1.98  thf(func_def_671, type, sK530: subst).
% 2.63/1.98  thf(func_def_672, type, sK531: term > $o).
% 2.63/1.98  thf(func_def_673, type, sK532: subst).
% 2.63/1.98  thf(func_def_674, type, sK533: term).
% 2.63/1.98  thf(func_def_675, type, sK534: term > $o).
% 2.63/1.98  thf(func_def_676, type, sK535: term).
% 2.63/1.98  thf(func_def_677, type, sK536: subst).
% 2.63/1.98  thf(func_def_678, type, sK537: term).
% 2.63/1.98  thf(func_def_679, type, sK538: term).
% 2.63/1.98  thf(func_def_680, type, sK539: subst).
% 2.63/1.98  thf(func_def_681, type, sK540: term).
% 2.63/1.98  thf(func_def_682, type, sK541: term).
% 2.63/1.98  thf(func_def_683, type, sK542: term).
% 2.63/1.98  thf(func_def_684, type, sK543: term > subst > term > term).
% 2.63/1.98  thf(func_def_685, type, sK544: subst).
% 2.63/1.98  thf(func_def_686, type, sK545: term).
% 2.63/1.98  thf(func_def_687, type, sK546: term > subst > term > term).
% 2.63/1.98  thf(func_def_688, type, sK547: term).
% 2.63/1.98  thf(func_def_689, type, sK548: term).
% 2.63/1.98  thf(func_def_690, type, sK549: term).
% 2.63/1.98  thf(func_def_691, type, sK550: term).
% 2.63/1.98  thf(func_def_692, type, sK551: term).
% 2.63/1.98  thf(func_def_693, type, sK552: term).
% 2.63/1.98  thf(func_def_694, type, sK553: term).
% 2.63/1.98  thf(func_def_695, type, sK554: (term > $o) > term > subst > term > $o).
% 2.63/1.98  thf(func_def_696, type, sK555: subst).
% 2.63/1.98  thf(func_def_697, type, sK556: term).
% 2.63/1.98  thf(func_def_698, type, sK557: term > $o).
% 2.63/1.98  thf(func_def_699, type, sK558: (term > $o) > term).
% 2.63/1.98  thf(func_def_700, type, sK559: subst).
% 2.63/1.98  thf(func_def_701, type, sK560: subst).
% 2.63/1.98  thf(func_def_702, type, sK561: subst).
% 2.63/1.98  thf(func_def_703, type, sK562: term).
% 2.63/1.98  thf(func_def_704, type, sK563: term > d_term).
% 2.63/1.98  thf(func_def_705, type, sK564: term).
% 2.63/1.98  thf(func_def_706, type, sK565: term).
% 2.63/1.98  thf(func_def_707, type, sK566: term).
% 2.63/1.98  thf(func_def_708, type, sK567: term).
% 2.63/1.98  thf(func_def_709, type, sK568: term).
% 2.63/1.98  thf(func_def_710, type, sK569: term).
% 2.63/1.98  thf(func_def_711, type, sK570: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_712, type, sK571: (term > $o) > term).
% 2.63/1.98  thf(func_def_713, type, sK572: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_714, type, sK573: term).
% 2.63/1.98  thf(func_def_715, type, sK574: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_716, type, sK575: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_717, type, sK576: term > subst > term > term).
% 2.63/1.98  thf(func_def_718, type, sK577: subst).
% 2.63/1.98  thf(func_def_719, type, sK578: term).
% 2.63/1.98  thf(func_def_720, type, sK579: term).
% 2.63/1.98  thf(func_def_721, type, sK580: term).
% 2.63/1.98  thf(func_def_722, type, sK581: term).
% 2.63/1.98  thf(func_def_723, type, sK582: term).
% 2.63/1.98  thf(func_def_724, type, sK583: subst).
% 2.63/1.98  thf(func_def_725, type, sK584: term).
% 2.63/1.98  thf(func_def_726, type, sK585: term > (term > $o) > subst > (term > $o) > term).
% 2.63/1.98  thf(func_def_727, type, sK586: term > $o).
% 2.63/1.98  thf(func_def_728, type, sK587: subst).
% 2.63/1.98  thf(func_def_729, type, sK588: term > $o).
% 2.63/1.98  thf(func_def_730, type, sK589: term).
% 2.63/1.98  thf(func_def_731, type, sK590: term).
% 2.63/1.98  thf(func_def_732, type, sK591: term).
% 2.63/1.98  thf(func_def_733, type, sK592: term).
% 2.63/1.98  thf(func_def_734, type, sK593: term).
% 2.63/1.98  thf(func_def_735, type, sK594: term).
% 2.63/1.98  thf(func_def_736, type, sK595: term > $o).
% 2.63/1.98  thf(func_def_737, type, sK596: subst).
% 2.63/1.98  thf(func_def_738, type, sK597: term).
% 2.63/1.98  thf(func_def_739, type, sK598: term).
% 2.63/1.98  thf(func_def_740, type, sK599: term > $o).
% 2.63/1.98  thf(func_def_741, type, sK600: term).
% 2.63/1.98  thf(func_def_742, type, sK601: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_743, type, sK602: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_744, type, sK603: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_745, type, sK604: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_746, type, sK605: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_747, type, sK606: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_748, type, sK607: subst > term > term).
% 2.63/1.98  thf(func_def_749, type, sK608: subst).
% 2.63/1.98  thf(func_def_750, type, sK609: term).
% 2.63/1.98  thf(func_def_751, type, sK610: subst > term > term).
% 2.63/1.98  thf(func_def_752, type, sK611: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_753, type, sK612: (term > $o) > term).
% 2.63/1.98  thf(func_def_754, type, sK613: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_755, type, sK614: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_756, type, sK615: term).
% 2.63/1.98  thf(func_def_757, type, sK616: subst > d_subst).
% 2.63/1.98  thf(func_def_758, type, sK617: subst).
% 2.63/1.98  thf(func_def_759, type, sK618: term > $o).
% 2.63/1.98  thf(func_def_760, type, sK619: term > $o).
% 2.63/1.98  thf(func_def_761, type, sK620: term).
% 2.63/1.98  thf(func_def_762, type, sK621: term > (term > $o) > (term > $o) > subst > term).
% 2.63/1.98  thf(func_def_763, type, sK622: subst).
% 2.63/1.98  thf(func_def_764, type, sK623: term).
% 2.63/1.98  thf(func_def_765, type, sK624: (term > $o) > subst > term > term > $o).
% 2.63/1.98  thf(func_def_766, type, sK625: term).
% 2.63/1.98  thf(func_def_767, type, sK626: subst).
% 2.63/1.98  thf(func_def_768, type, sK627: term > $o).
% 2.63/1.98  thf(func_def_769, type, sK628: (term > $o) > term).
% 2.63/1.98  thf(func_def_770, type, sK629: term).
% 2.63/1.98  thf(func_def_771, type, sK630: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_772, type, sK631: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_773, type, sK632: term).
% 2.63/1.98  thf(func_def_774, type, sK633: term > subst > term > term).
% 2.63/1.98  thf(func_def_775, type, sK634: subst > term > term).
% 2.63/1.98  thf(func_def_776, type, sK635: term).
% 2.63/1.98  thf(func_def_777, type, sK636: term).
% 2.63/1.98  thf(func_def_778, type, sK637: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_779, type, sK638: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_780, type, sK639: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_781, type, sK640: term > subst > term > term).
% 2.63/1.98  thf(func_def_782, type, sK641: term).
% 2.63/1.98  thf(func_def_783, type, sK642: (subst > term > term) > term).
% 2.63/1.98  thf(func_def_784, type, sK643: (subst > term > term) > subst).
% 2.63/1.98  thf(func_def_785, type, sK644: term).
% 2.63/1.98  thf(func_def_786, type, sK645: term).
% 2.63/1.98  thf(func_def_787, type, sK646: subst > term > subst > $o).
% 2.63/1.98  thf(func_def_788, type, sK647: (term > $o) > term).
% 2.63/1.98  thf(func_def_789, type, sK648: (subst > term > subst > $o) > term > $o).
% 2.63/1.98  thf(func_def_790, type, sK649: term).
% 2.63/1.98  thf(func_def_792, type, sK651: subst > term > (term > $o) > (term > $o) > term).
% 2.63/1.98  thf(func_def_793, type, sK652: subst > term > (term > $o) > (term > $o) > term).
% 2.63/1.98  thf(func_def_795, type, ph653: !>[X0: $tType]:(X0)).
% 2.63/1.98  thf(f3977,plain,(
% 2.63/1.98    $false),
% 2.63/1.98    inference(avatar_sat_refutation,[status(thm)],[f3812,f3876,f3976])).
% 2.63/1.98  thf(f3976,plain,(
% 2.63/1.98    spl650_452),
% 2.63/1.98    inference(avatar_contradiction_clause,[status(thm)],[f3975])).
% 2.63/1.98  thf(f3975,plain,(
% 2.63/1.98    $false | spl650_452),
% 2.63/1.98    inference(trivial_inequality_removal,[status(thm)],[f3974])).
% 2.63/1.98  thf(f3974,plain,(
% 2.63/1.98    ($true != $true) | spl650_452),
% 2.63/1.98    inference(superposition,[status(thm)],[f3811,f3973])).
% 2.63/1.98  thf(f3973,plain,(
% 2.63/1.98    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true)) )),
% 2.63/1.98    inference(subsumption_resolution,[status(thm)],[f764,f3898])).
% 2.63/1.98  thf(f3898,plain,(
% 2.63/1.98    ( ! [X0 : term] : (($true != (var @ X0))) )),
% 2.63/1.98    inference(superposition,[status(thm)],[f1286,f3893])).
% 2.63/1.98  thf(f3893,plain,(
% 2.63/1.98    ( ! [X87 : term] : (((d2term @ d_one) = X87)) )),
% 2.63/1.98    inference(forward_demodulation,[status(thm)],[f1420,f1425])).
% 2.63/1.98  thf(f1425,plain,(
% 2.63/1.98    ( ! [X84 : d_term] : ((d_one = X84)) )),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f757])).
% 2.63/1.98  thf(f757,plain,(
% 2.63/1.98    ((axscons = $true) | (sK521 != (push @ (sub @ one @ sK521) @ (comp @ sh @ sK521)))) & (! [X1 : subst] : ((push @ (sub @ one @ X1) @ (comp @ sh @ X1)) = X1) | (axscons != $true)) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & (($true = sP109) | ($true = sP111) | ($true = sP110) | (sK522 != (sub @ sK522 @ id)) | ! [X4 : term > $o] : ((X4 @ (sK524 @ X4)) != (sK523 @ id @ (sK524 @ X4) @ id)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP109) & ($true != sP111) & ($true != sP110) & ! [X6 : term] : ((sub @ X6 @ id) = X6) & ! [X7 : subst > term > subst > $o] : ! [X9 : term] : ((X7 @ id @ X9 @ id) = (sK525 @ X7 @ X9)))) & (axvarshift = $true) & (($true = sP103) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP103)) & ((d2subst @ d_id) = sh) & (($true = sP100) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP100)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) | (! [X10 : term,X11 : subst] : ((sub @ one @ (push @ X10 @ X11)) = X10) & ! [X12 : term,X13 : subst] : ((comp @ sh @ (push @ X12 @ X13)) = X13) & ($true != sP97) & ($true != sP98) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))) & (((sub @ one @ (push @ sK526 @ sK527)) != sK526) | (sK529 != (comp @ sh @ (push @ sK528 @ sK529))) | ($true = sP97) | ($true = sP98) | (sK530 != (comp @ sK530 @ id)) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & ((pushprop_lem1_lthm = $true) | (! [X20 : subst,X21 : term] : ((sub @ one @ (push @ X21 @ X20)) = X21) & (($true = (sK531 @ sK533)) & ($true != (sK534 @ (sub @ sK533 @ (push @ sK535 @ sK532))))) & ! [X27 : term,X28 : subst] : ((comp @ sh @ (push @ X27 @ X28)) = X28))) & (((sub @ one @ (push @ sK537 @ sK536)) != sK537) | ! [X31 : term > $o,X32 : subst,X33 : term,X34 : term > $o,X35 : term] : (($true != (X31 @ X33)) | ((X34 @ (sub @ X33 @ (push @ X35 @ X32))) = $true)) | ((comp @ sh @ (push @ sK538 @ sK539)) != sK539) | (pushprop_lem1_lthm != $true)) & (($true = sP92) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP92)) & (hoaslamnotvar_lthm = $true) & ((shinj = $true) | (((sub @ sK541 @ sh) = (sub @ sK540 @ sh)) & (sK540 != sK541))) & (! [X40 : term,X41 : term] : (((sub @ X40 @ sh) != (sub @ X41 @ sh)) | (X40 = X41)) | (shinj != $true)) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ! [X43 : subst > term > term] : ((X43 @ sh @ one) != (sub @ sK542 @ (push @ one @ sh)))) & (! [X44 : term] : ((sK543 @ X44 @ sh @ one) = (sub @ X44 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & ((axidr = $true) | ((comp @ sK544 @ id) != sK544)) & (! [X47 : subst] : ((comp @ X47 @ id) = X47) | (axidr != $true)) & ((hoasinduction_lem3aaa = $true) | (sP87 != $true)) & ((sP87 = $true) | (hoasinduction_lem3aaa != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP84) & ! [X48 : term] : ((sub @ X48 @ id) = X48) & ($true != sP85))) & (($true = sP84) | (sK545 != (sub @ sK545 @ id)) | ($true = sP85) | (hoasinduction_lem3a_lthm != $true)) & (! [X50 : term] : ((sub @ X50 @ (push @ one @ sh)) = (sK546 @ X50 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ! [X53 : subst > term > term] : ((sub @ sK547 @ (push @ one @ sh)) != (X53 @ sh @ one))) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP81) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP81)) & ((termmset_lthm = $true) | (! [X54 : term] : ((sub @ X54 @ id) = X54) & (sK548 != (sub @ sK548 @ id)))) & ((sK549 != (sub @ sK549 @ id)) | ! [X57 : term] : ((sub @ X57 @ id) = X57) | (termmset_lthm != $true)) & (termmset_gthm = $true) & (! [X58 : term,X59 : term,X60 : term,X61 : term] : ((X58 = X59) | ((ap @ (sub @ X61 @ id) @ X59) != (ap @ (sub @ X60 @ id) @ X58))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ((sK551 != sK550) & ((ap @ (sub @ sK552 @ id) @ sK550) = (ap @ (sub @ sK553 @ id) @ sK551)))) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lthm = $true) | (($true != sP76) & ($true != sP75) & ($true != sP74) & ($true != sP77))) & (($true = sP76) | ($true = sP75) | ($true = sP74) | ($true = sP77) | (hoasinduction_lthm != $true)) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & (($true = sP61) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP61)) & (hoasapinj2_gthm = $true) & (! [X66 : subst,X67 : term,X68 : term > $o] : ! [X70 : term] : ((sK554 @ X68 @ X67 @ X66 @ X70) = (X68 @ (sub @ X70 @ (push @ X67 @ X66)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X74 : term > $o] : ((sK557 @ (sub @ (sK558 @ X74) @ (push @ sK556 @ sK555))) != (X74 @ (sK558 @ X74)))) & ((axidl = $true) | (sK559 != (comp @ id @ sK559))) & (! [X77 : subst] : ((comp @ id @ X77) = X77) | (axidl != $true)) & (($true = sP60) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP60)) & ((hoasapinj2_lthm = $true) | ($true != sP58)) & (($true = sP58) | (hoasapinj2_lthm != $true)) & ((! [X78 : subst] : ((comp @ id @ X78) = X78) & ! [X79 : subst] : ((comp @ X79 @ id) = X79)) | (substmonoid != $true)) & ((substmonoid = $true) | ((comp @ id @ sK560) != sK560) | ((comp @ sK561 @ id) != sK561)) & (axapp = $true) & ! [X82 : d_subst,X83 : d_subst] : (((d2subst @ X83) != (d2subst @ X82)) | (X82 = X83)) & ! [X84 : d_term] : (d_one = X84) & ((induction2_lthm = $true) | (($true != sP55) & ($true != sP56) & ! [X85 : term] : ((sub @ X85 @ id) = X85))) & (($true = sP55) | ($true = sP56) | (sK562 != (sub @ sK562 @ id)) | (induction2_lthm != $true)) & ! [X87 : term] : ((d2term @ (sK563 @ X87)) = X87) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((laminj = $true) | (((lam @ sK565) = (lam @ sK564)) & (sK565 != sK564))) & (! [X91 : term,X92 : term] : (((lam @ X92) != (lam @ X91)) | (X91 = X92)) | (laminj != $true)) & ((hoasapinj1 = $true) | (((ap @ (sub @ sK566 @ id) @ sK568) = (ap @ (sub @ sK569 @ id) @ sK567)) & (sK566 != sK569))) & (! [X97 : term,X98 : term,X99 : term,X100 : term] : (((ap @ (sub @ X100 @ id) @ X98) != (ap @ (sub @ X97 @ id) @ X99)) | (X97 = X100)) | (hoasapinj1 != $true)) & ! [X101 : d_term,X102 : d_term] : ((X101 = X102) | ((d2term @ X102) != (d2term @ X101))) & ((hoasinduction_lem0_lthm = $true) | ! [X104 : term > $o] : ((X104 @ (sK571 @ X104)) != (sK570 @ id @ (sK571 @ X104) @ id))) & (! [X106 : subst > term > subst > $o] : ! [X108 : term] : ((X106 @ id @ X108 @ id) = (sK572 @ X106 @ X108)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem3v2_f = $true) | ! [X110 : subst > term > term] : ((sub @ sK573 @ (push @ (sK574 @ X110) @ (sK575 @ X110))) != (X110 @ (sK575 @ X110) @ (sK574 @ X110)))) & (! [X113 : term] : ! [X115 : term,X116 : subst] : ((sub @ X113 @ (push @ X115 @ X116)) = (sK576 @ X113 @ X116 @ X115)) | (hoasinduction_lem3v2_f != $true)) & ((d2subst @ d_id) = id) & ((induction2lem = $true) | ($true != sP50)) & (($true = sP50) | (induction2lem != $true)) & (pushprop_lem0_gthm = $true) & ((axshiftcons = $true) | ((comp @ sh @ (push @ sK578 @ sK577)) != sK577)) & (! [X119 : subst,X120 : term] : ((comp @ sh @ (push @ X120 @ X119)) = X119) | (axshiftcons != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X121 : term,X122 : term,X123 : term,X124 : term] : ((X123 = X124) | ((ap @ X122 @ X124) != (ap @ X121 @ X123))) | (apinj2 != $true)) & ((apinj2 = $true) | ((sK582 != sK581) & ((ap @ sK579 @ sK581) = (ap @ sK580 @ sK582)))) & (($true = sP47) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP47)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X129 : d_subst] : (d_id = X129) & ((axvarcons = $true) | (sK584 != (sub @ one @ (push @ sK584 @ sK583)))) & (! [X132 : subst,X133 : term] : ((sub @ one @ (push @ X133 @ X132)) = X133) | (axvarcons != $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & (hoasinduction_lem1 = $true) & (($true = sP42) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP42)) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & (! [X134 : term > $o,X135 : subst,X136 : term > $o,X137 : term] : (((X134 @ one) = $true) | ($true != (X136 @ X137)) | ((X134 @ (sK585 @ X137 @ X136 @ X135 @ X134)) != (X136 @ (sub @ (sK585 @ X137 @ X136 @ X135 @ X134) @ (push @ X137 @ X135))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | (($true != (sK586 @ one)) & ($true = (sK588 @ sK589)) & ! [X143 : term] : ((sK588 @ (sub @ X143 @ (push @ sK589 @ sK587))) = (sK586 @ X143)))) & (! [X144 : term,X145 : term,X146 : term,X147 : term] : ((X146 = X147) | ((ap @ X146 @ X144) != (ap @ X147 @ X145))) | (apinj1 != $true)) & ((apinj1 = $true) | ((sK592 != sK593) & ((ap @ sK592 @ sK590) = (ap @ sK593 @ sK591)))) & (((sub @ sK594 @ id) != sK594) | ($true = sP40) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X153 : term] : ((sub @ X153 @ id) = X153) & ($true != sP40))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X154 : term > $o,X155 : subst,X156 : term,X157 : term,X158 : term > $o] : (($true != (X154 @ X157)) | ((X158 @ (sub @ X157 @ (push @ X156 @ X155))) = $true)) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | (($true = (sK595 @ sK598)) & ($true != (sK599 @ (sub @ sK598 @ (push @ sK597 @ sK596)))))) & (($true = sP35) | (sK600 != (sub @ sK600 @ id)) | (sP36 = $true) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (($true != sP35) & ! [X165 : term] : ((sub @ X165 @ id) = X165) & (sP36 != $true))) & (! [X166 : subst > term > term,X167 : subst,X168 : term,X169 : subst > term > term] : (((X166 @ (comp @ (sK602 @ X166) @ (sK603 @ X166)) @ (sub @ (sK601 @ X166) @ (sK603 @ X166))) != (sub @ (X166 @ (sK602 @ X166) @ (sK601 @ X166)) @ (sK603 @ X166))) | ((X169 @ (comp @ (sK604 @ X169) @ (sK606 @ X169)) @ (sub @ (sK605 @ X169) @ (sK606 @ X169))) != (sub @ (X169 @ (sK604 @ X169) @ (sK605 @ X169)) @ (sK606 @ X169))) | ((X169 @ X167 @ X168) = (X166 @ X167 @ X168)) | ((lam @ (X169 @ sh @ one)) != (lam @ (X166 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (! [X180 : term,X181 : subst,X182 : subst] : ((sK607 @ (comp @ X181 @ X182) @ (sub @ X180 @ X182)) = (sub @ (sK607 @ X181 @ X180) @ X182)) & ! [X183 : subst,X184 : term,X185 : subst] : ((sK610 @ (comp @ X183 @ X185) @ (sub @ X184 @ X185)) = (sub @ (sK610 @ X183 @ X184) @ X185)) & ((sK607 @ sK608 @ sK609) != (sK610 @ sK608 @ sK609)) & ((lam @ (sK610 @ sh @ one)) = (lam @ (sK607 @ sh @ one))))) & ((hoasinduction_lem0 = $true) | ! [X187 : term > $o] : ((X187 @ (sK612 @ X187)) != (sK611 @ id @ (sK612 @ X187) @ id))) & (! [X189 : subst > term > subst > $o] : ! [X191 : term] : ((X189 @ id @ X191 @ id) = (sK613 @ X189 @ X191)) | (hoasinduction_lem0 != $true)) & ((sP30 = $true) | (induction2 != $true)) & ((induction2 = $true) | (sP30 != $true)) & (substmonoid_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | (($true != (sP27 @ sK614)) & ($true != (sP26 @ sK614)) & ($true != (sK614 @ id @ sK615 @ id)))) & (! [X194 : subst > term > subst > $o,X195 : term] : (((sP27 @ X194) = $true) | ((sP26 @ X194) = $true) | ((X194 @ id @ X195 @ id) = $true)) | (hoasinduction_no_psi_cond != $true)) & ! [X196 : subst] : ((d2subst @ (sK616 @ X196)) = X196) & ((pushprop_lem1v2_lthm = $true) | ((! [X202 : term] : ((sK618 @ X202) = (sK619 @ (sub @ X202 @ (push @ sK620 @ sK617)))) & ($true != (sK618 @ one)) & ($true = (sK619 @ sK620))) & ! [X203 : subst,X204 : term] : ((sub @ one @ (push @ X204 @ X203)) = X204))) & (! [X205 : subst,X206 : term > $o,X207 : term > $o,X208 : term] : (((X206 @ (sK621 @ X208 @ X207 @ X206 @ X205)) != (X207 @ (sub @ (sK621 @ X208 @ X207 @ X206 @ X205) @ (push @ X208 @ X205)))) | ((X206 @ one) = $true) | ($true != (X207 @ X208))) | ((sub @ one @ (push @ sK623 @ sK622)) != sK623) | (pushprop_lem1v2_lthm != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X212 : term,X213 : subst,X214 : term > $o] : ! [X216 : term] : ((sK624 @ X214 @ X213 @ X212 @ X216) = (X214 @ (sub @ X216 @ (push @ X212 @ X213)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ! [X220 : term > $o] : ((sK627 @ (sub @ (sK628 @ X220) @ (push @ sK625 @ sK626))) != (X220 @ (sK628 @ X220)))) & (pushprop_lem1v2_gthm = $true) & (! [X223 : subst > term > term] : ((X223 @ (sK630 @ X223) @ (sK631 @ X223)) != (sub @ sK629 @ (push @ (sK631 @ X223) @ (sK630 @ X223)))) | ((sub @ sK632 @ id) != sK632) | (sP25 = $true) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X227 : term] : ! [X229 : subst,X230 : term] : ((sK633 @ X227 @ X229 @ X230) = (sub @ X227 @ (push @ X230 @ X229))) & ! [X231 : term] : ((sub @ X231 @ id) = X231) & (sP25 != $true))) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & ((hoaslamnotap = $true) | (((ap @ (sub @ sK635 @ id) @ sK636) = (lam @ (sK634 @ sh @ one))) & ! [X235 : subst,X236 : subst,X237 : term] : ((sub @ (sK634 @ X235 @ X237) @ X236) = (sK634 @ (comp @ X235 @ X236) @ (sub @ X237 @ X236))))) & (! [X238 : subst > term > term,X239 : term,X240 : term] : (((ap @ (sub @ X239 @ id) @ X240) != (lam @ (X238 @ sh @ one))) | ((sub @ (X238 @ (sK637 @ X238) @ (sK639 @ X238)) @ (sK638 @ X238)) != (X238 @ (comp @ (sK637 @ X238) @ (sK638 @ X238)) @ (sub @ (sK639 @ X238) @ (sK638 @ X238))))) | (hoaslamnotap != $true)) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & ((hoasapinj1_lthm = $true) | ($true != sP23)) & (($true = sP23) | (hoasapinj1_lthm != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3v2a != $true)) & (! [X244 : term] : ! [X246 : term,X247 : subst] : ((sK640 @ X244 @ X247 @ X246) = (sub @ X244 @ (push @ X246 @ X247))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X249 : subst > term > term] : ((X249 @ (sK643 @ X249) @ (sK642 @ X249)) != (sub @ sK641 @ (push @ (sK642 @ X249) @ (sK643 @ X249))))) & (hoasapnotvar = $true) & (axmap = $true) & ((axvarid = $true) | (sK644 != (sub @ sK644 @ id))) & (! [X253 : term] : ((sub @ X253 @ id) = X253) | (axvarid != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (($true = sP19) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP19)) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (($true = sP15) | (induction != $true)) & ((induction = $true) | ($true != sP15)) & (($true = sP11) | ((sub @ sK645 @ id) != sK645) | (sP12 = $true) | (sP10 = $true) | ! [X256 : term > $o] : ((sK646 @ id @ (sK647 @ X256) @ id) != (X256 @ (sK647 @ X256))) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP11) & ! [X258 : term] : ((sub @ X258 @ id) = X258) & (sP12 != $true) & (sP10 != $true) & ! [X259 : subst > term > subst > $o] : ! [X261 : term] : ((sK648 @ X259 @ X261) = (X259 @ id @ X261 @ id)))) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & (! [X262 : term] : ((sub @ X262 @ id) = X262) | (termmset != $true)) & ((termmset = $true) | (sK649 != (sub @ sK649 @ id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK591,sK592,sK593,sK594,sK595,sK596,sK597,sK598,sK599,sK600,sK601,sK602,sK603,sK604,sK605,sK606,sK607,sK608,sK609,sK610,sK611,sK612,sK613,sK614,sK615,sK616,sK617,sK618,sK619,sK620,sK621,sK622,sK623,sK624,sK625,sK626,sK627,sK628,sK629,sK630,sK631,sK632,sK633,sK634,sK635,sK636,sK637,sK638,sK639,sK640,sK641,sK642,sK643,sK644,sK645,sK646,sK647,sK648,sK649])],[f681,f756,f755,f754,f753,f752,f751,f750,f749,f748,f747,f746,f745,f744,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682])).
% 2.63/1.98  thf(f682,plain,(
% 2.63/1.98    ? [X0 : subst] : ((push @ (sub @ one @ X0) @ (comp @ sh @ X0)) != X0) => (sK521 != (push @ (sub @ one @ sK521) @ (comp @ sh @ sK521)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f683,plain,(
% 2.63/1.98    ? [X2 : term] : ((sub @ X2 @ id) != X2) => (sK522 != (sub @ sK522 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f684,plain,(
% 2.63/1.98    ? [X3 : subst > term > subst > $o] : ! [X4 : term > $o] : ? [X5 : term] : ((X4 @ X5) != (X3 @ id @ X5 @ id)) => ! [X4 : term > $o] : ? [X5 : term] : ((X4 @ X5) != (sK523 @ id @ X5 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f685,plain,(
% 2.63/1.98    ! [X4 : term > $o] : (? [X5 : term] : ((X4 @ X5) != (sK523 @ id @ X5 @ id)) => ((X4 @ (sK524 @ X4)) != (sK523 @ id @ (sK524 @ X4) @ id)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f686,plain,(
% 2.63/1.98    ! [X7 : subst > term > subst > $o] : (? [X8 : term > $o] : ! [X9 : term] : ((X7 @ id @ X9 @ id) = (X8 @ X9)) => ! [X9 : term] : ((X7 @ id @ X9 @ id) = (sK525 @ X7 @ X9)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f687,plain,(
% 2.63/1.98    ? [X15 : term,X16 : subst] : ((sub @ one @ (push @ X15 @ X16)) != X15) => ((sub @ one @ (push @ sK526 @ sK527)) != sK526)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f688,plain,(
% 2.63/1.98    ? [X17 : term,X18 : subst] : ((comp @ sh @ (push @ X17 @ X18)) != X18) => (sK529 != (comp @ sh @ (push @ sK528 @ sK529)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f689,plain,(
% 2.63/1.98    ? [X19 : subst] : ((comp @ X19 @ id) != X19) => (sK530 != (comp @ sK530 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f690,plain,(
% 2.63/1.98    ? [X22 : term > $o,X23 : subst,X24 : term,X25 : term > $o,X26 : term] : (($true = (X22 @ X24)) & ($true != (X25 @ (sub @ X24 @ (push @ X26 @ X23))))) => (($true = (sK531 @ sK533)) & ($true != (sK534 @ (sub @ sK533 @ (push @ sK535 @ sK532)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f691,plain,(
% 2.63/1.98    ? [X29 : subst,X30 : term] : ((sub @ one @ (push @ X30 @ X29)) != X30) => ((sub @ one @ (push @ sK537 @ sK536)) != sK537)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f692,plain,(
% 2.63/1.98    ? [X36 : term,X37 : subst] : ((comp @ sh @ (push @ X36 @ X37)) != X37) => ((comp @ sh @ (push @ sK538 @ sK539)) != sK539)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f693,plain,(
% 2.63/1.98    ? [X38 : term,X39 : term] : (((sub @ X38 @ sh) = (sub @ X39 @ sh)) & (X38 != X39)) => (((sub @ sK541 @ sh) = (sub @ sK540 @ sh)) & (sK540 != sK541))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f694,plain,(
% 2.63/1.98    ? [X42 : term] : ! [X43 : subst > term > term] : ((sub @ X42 @ (push @ one @ sh)) != (X43 @ sh @ one)) => ! [X43 : subst > term > term] : ((X43 @ sh @ one) != (sub @ sK542 @ (push @ one @ sh)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f695,plain,(
% 2.63/1.98    ! [X44 : term] : (? [X45 : subst > term > term] : ((sub @ X44 @ (push @ one @ sh)) = (X45 @ sh @ one)) => ((sK543 @ X44 @ sh @ one) = (sub @ X44 @ (push @ one @ sh))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f696,plain,(
% 2.63/1.98    ? [X46 : subst] : ((comp @ X46 @ id) != X46) => ((comp @ sK544 @ id) != sK544)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f697,plain,(
% 2.63/1.98    ? [X49 : term] : ((sub @ X49 @ id) != X49) => (sK545 != (sub @ sK545 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f698,plain,(
% 2.63/1.98    ! [X50 : term] : (? [X51 : subst > term > term] : ((sub @ X50 @ (push @ one @ sh)) = (X51 @ sh @ one)) => ((sub @ X50 @ (push @ one @ sh)) = (sK546 @ X50 @ sh @ one)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f699,plain,(
% 2.63/1.98    ? [X52 : term] : ! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one)) => ! [X53 : subst > term > term] : ((sub @ sK547 @ (push @ one @ sh)) != (X53 @ sh @ one))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f700,plain,(
% 2.63/1.98    ? [X55 : term] : ((sub @ X55 @ id) != X55) => (sK548 != (sub @ sK548 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f701,plain,(
% 2.63/1.98    ? [X56 : term] : ((sub @ X56 @ id) != X56) => (sK549 != (sub @ sK549 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f702,plain,(
% 2.63/1.98    ? [X62 : term,X63 : term,X64 : term,X65 : term] : ((X62 != X63) & ((ap @ (sub @ X64 @ id) @ X62) = (ap @ (sub @ X65 @ id) @ X63))) => ((sK551 != sK550) & ((ap @ (sub @ sK552 @ id) @ sK550) = (ap @ (sub @ sK553 @ id) @ sK551)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f703,plain,(
% 2.63/1.98    ! [X66 : subst,X67 : term,X68 : term > $o] : (? [X69 : term > $o] : ! [X70 : term] : ((X69 @ X70) = (X68 @ (sub @ X70 @ (push @ X67 @ X66)))) => ! [X70 : term] : ((sK554 @ X68 @ X67 @ X66 @ X70) = (X68 @ (sub @ X70 @ (push @ X67 @ X66)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f704,plain,(
% 2.63/1.98    ? [X71 : subst,X72 : term,X73 : term > $o] : ! [X74 : term > $o] : ? [X75 : term] : ((X73 @ (sub @ X75 @ (push @ X72 @ X71))) != (X74 @ X75)) => ! [X74 : term > $o] : ? [X75 : term] : ((X74 @ X75) != (sK557 @ (sub @ X75 @ (push @ sK556 @ sK555))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f705,plain,(
% 2.63/1.98    ! [X74 : term > $o] : (? [X75 : term] : ((X74 @ X75) != (sK557 @ (sub @ X75 @ (push @ sK556 @ sK555)))) => ((sK557 @ (sub @ (sK558 @ X74) @ (push @ sK556 @ sK555))) != (X74 @ (sK558 @ X74))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f706,plain,(
% 2.63/1.98    ? [X76 : subst] : ((comp @ id @ X76) != X76) => (sK559 != (comp @ id @ sK559))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f707,plain,(
% 2.63/1.98    ? [X80 : subst] : ((comp @ id @ X80) != X80) => ((comp @ id @ sK560) != sK560)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f708,plain,(
% 2.63/1.98    ? [X81 : subst] : ((comp @ X81 @ id) != X81) => ((comp @ sK561 @ id) != sK561)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f709,plain,(
% 2.63/1.98    ? [X86 : term] : ((sub @ X86 @ id) != X86) => (sK562 != (sub @ sK562 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f710,plain,(
% 2.63/1.98    ! [X87 : term] : (? [X88 : d_term] : ((d2term @ X88) = X87) => ((d2term @ (sK563 @ X87)) = X87))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f711,plain,(
% 2.63/1.98    ? [X89 : term,X90 : term] : (((lam @ X89) = (lam @ X90)) & (X89 != X90)) => (((lam @ sK565) = (lam @ sK564)) & (sK565 != sK564))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f712,plain,(
% 2.63/1.98    ? [X93 : term,X94 : term,X95 : term,X96 : term] : (((ap @ (sub @ X93 @ id) @ X95) = (ap @ (sub @ X96 @ id) @ X94)) & (X93 != X96)) => (((ap @ (sub @ sK566 @ id) @ sK568) = (ap @ (sub @ sK569 @ id) @ sK567)) & (sK566 != sK569))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f713,plain,(
% 2.63/1.98    ? [X103 : subst > term > subst > $o] : ! [X104 : term > $o] : ? [X105 : term] : ((X103 @ id @ X105 @ id) != (X104 @ X105)) => ! [X104 : term > $o] : ? [X105 : term] : ((sK570 @ id @ X105 @ id) != (X104 @ X105))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f714,plain,(
% 2.63/1.98    ! [X104 : term > $o] : (? [X105 : term] : ((sK570 @ id @ X105 @ id) != (X104 @ X105)) => ((X104 @ (sK571 @ X104)) != (sK570 @ id @ (sK571 @ X104) @ id)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f715,plain,(
% 2.63/1.98    ! [X106 : subst > term > subst > $o] : (? [X107 : term > $o] : ! [X108 : term] : ((X106 @ id @ X108 @ id) = (X107 @ X108)) => ! [X108 : term] : ((X106 @ id @ X108 @ id) = (sK572 @ X106 @ X108)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f716,plain,(
% 2.63/1.98    ? [X109 : term] : ! [X110 : subst > term > term] : ? [X111 : term,X112 : subst] : ((sub @ X109 @ (push @ X111 @ X112)) != (X110 @ X112 @ X111)) => ! [X110 : subst > term > term] : ? [X112 : subst,X111 : term] : ((X110 @ X112 @ X111) != (sub @ sK573 @ (push @ X111 @ X112)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f717,plain,(
% 2.63/1.98    ! [X110 : subst > term > term] : (? [X112 : subst,X111 : term] : ((X110 @ X112 @ X111) != (sub @ sK573 @ (push @ X111 @ X112))) => ((sub @ sK573 @ (push @ (sK574 @ X110) @ (sK575 @ X110))) != (X110 @ (sK575 @ X110) @ (sK574 @ X110))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f718,plain,(
% 2.63/1.98    ! [X113 : term] : (? [X114 : subst > term > term] : ! [X115 : term,X116 : subst] : ((X114 @ X116 @ X115) = (sub @ X113 @ (push @ X115 @ X116))) => ! [X116 : subst,X115 : term] : ((sub @ X113 @ (push @ X115 @ X116)) = (sK576 @ X113 @ X116 @ X115)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f719,plain,(
% 2.63/1.98    ? [X117 : subst,X118 : term] : ((comp @ sh @ (push @ X118 @ X117)) != X117) => ((comp @ sh @ (push @ sK578 @ sK577)) != sK577)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f720,plain,(
% 2.63/1.98    ? [X125 : term,X126 : term,X127 : term,X128 : term] : ((X127 != X128) & ((ap @ X126 @ X128) = (ap @ X125 @ X127))) => ((sK582 != sK581) & ((ap @ sK579 @ sK581) = (ap @ sK580 @ sK582)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f721,plain,(
% 2.63/1.98    ? [X130 : subst,X131 : term] : ((sub @ one @ (push @ X131 @ X130)) != X131) => (sK584 != (sub @ one @ (push @ sK584 @ sK583)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f722,plain,(
% 2.63/1.98    ! [X134 : term > $o,X135 : subst,X136 : term > $o,X137 : term] : (? [X138 : term] : ((X136 @ (sub @ X138 @ (push @ X137 @ X135))) != (X134 @ X138)) => ((X134 @ (sK585 @ X137 @ X136 @ X135 @ X134)) != (X136 @ (sub @ (sK585 @ X137 @ X136 @ X135 @ X134) @ (push @ X137 @ X135)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f723,plain,(
% 2.63/1.98    ? [X139 : term > $o,X140 : subst,X141 : term > $o,X142 : term] : (($true != (X139 @ one)) & ((X141 @ X142) = $true) & ! [X143 : term] : ((X141 @ (sub @ X143 @ (push @ X142 @ X140))) = (X139 @ X143))) => (($true != (sK586 @ one)) & ($true = (sK588 @ sK589)) & ! [X143 : term] : ((sK588 @ (sub @ X143 @ (push @ sK589 @ sK587))) = (sK586 @ X143)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f724,plain,(
% 2.63/1.98    ? [X148 : term,X149 : term,X150 : term,X151 : term] : ((X150 != X151) & ((ap @ X150 @ X148) = (ap @ X151 @ X149))) => ((sK592 != sK593) & ((ap @ sK592 @ sK590) = (ap @ sK593 @ sK591)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f725,plain,(
% 2.63/1.98    ? [X152 : term] : ((sub @ X152 @ id) != X152) => ((sub @ sK594 @ id) != sK594)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f726,plain,(
% 2.63/1.98    ? [X159 : term > $o,X160 : subst,X161 : term,X162 : term,X163 : term > $o] : (($true = (X159 @ X162)) & ((X163 @ (sub @ X162 @ (push @ X161 @ X160))) != $true)) => (($true = (sK595 @ sK598)) & ($true != (sK599 @ (sub @ sK598 @ (push @ sK597 @ sK596)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f727,plain,(
% 2.63/1.98    ? [X164 : term] : ((sub @ X164 @ id) != X164) => (sK600 != (sub @ sK600 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f728,plain,(
% 2.63/1.98    ! [X166 : subst > term > term] : (? [X170 : term,X171 : subst,X172 : subst] : ((sub @ (X166 @ X171 @ X170) @ X172) != (X166 @ (comp @ X171 @ X172) @ (sub @ X170 @ X172))) => ((X166 @ (comp @ (sK602 @ X166) @ (sK603 @ X166)) @ (sub @ (sK601 @ X166) @ (sK603 @ X166))) != (sub @ (X166 @ (sK602 @ X166) @ (sK601 @ X166)) @ (sK603 @ X166))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f729,plain,(
% 2.63/1.98    ! [X169 : subst > term > term] : (? [X173 : subst,X174 : term,X175 : subst] : ((sub @ (X169 @ X173 @ X174) @ X175) != (X169 @ (comp @ X173 @ X175) @ (sub @ X174 @ X175))) => ((X169 @ (comp @ (sK604 @ X169) @ (sK606 @ X169)) @ (sub @ (sK605 @ X169) @ (sK606 @ X169))) != (sub @ (X169 @ (sK604 @ X169) @ (sK605 @ X169)) @ (sK606 @ X169))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f730,plain,(
% 2.63/1.98    ? [X176 : subst > term > term,X177 : subst,X178 : term,X179 : subst > term > term] : (! [X180 : term,X181 : subst,X182 : subst] : ((sub @ (X176 @ X181 @ X180) @ X182) = (X176 @ (comp @ X181 @ X182) @ (sub @ X180 @ X182))) & ! [X183 : subst,X184 : term,X185 : subst] : ((sub @ (X179 @ X183 @ X184) @ X185) = (X179 @ (comp @ X183 @ X185) @ (sub @ X184 @ X185))) & ((X176 @ X177 @ X178) != (X179 @ X177 @ X178)) & ((lam @ (X176 @ sh @ one)) = (lam @ (X179 @ sh @ one)))) => (! [X182 : subst,X181 : subst,X180 : term] : ((sK607 @ (comp @ X181 @ X182) @ (sub @ X180 @ X182)) = (sub @ (sK607 @ X181 @ X180) @ X182)) & ! [X185 : subst,X184 : term,X183 : subst] : ((sK610 @ (comp @ X183 @ X185) @ (sub @ X184 @ X185)) = (sub @ (sK610 @ X183 @ X184) @ X185)) & ((sK607 @ sK608 @ sK609) != (sK610 @ sK608 @ sK609)) & ((lam @ (sK610 @ sh @ one)) = (lam @ (sK607 @ sh @ one))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f731,plain,(
% 2.63/1.98    ? [X186 : subst > term > subst > $o] : ! [X187 : term > $o] : ? [X188 : term] : ((X187 @ X188) != (X186 @ id @ X188 @ id)) => ! [X187 : term > $o] : ? [X188 : term] : ((X187 @ X188) != (sK611 @ id @ X188 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f732,plain,(
% 2.63/1.98    ! [X187 : term > $o] : (? [X188 : term] : ((X187 @ X188) != (sK611 @ id @ X188 @ id)) => ((X187 @ (sK612 @ X187)) != (sK611 @ id @ (sK612 @ X187) @ id)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f733,plain,(
% 2.63/1.98    ! [X189 : subst > term > subst > $o] : (? [X190 : term > $o] : ! [X191 : term] : ((X189 @ id @ X191 @ id) = (X190 @ X191)) => ! [X191 : term] : ((X189 @ id @ X191 @ id) = (sK613 @ X189 @ X191)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f734,plain,(
% 2.63/1.98    ? [X192 : subst > term > subst > $o,X193 : term] : (($true != (sP27 @ X192)) & ($true != (sP26 @ X192)) & ($true != (X192 @ id @ X193 @ id))) => (($true != (sP27 @ sK614)) & ($true != (sP26 @ sK614)) & ($true != (sK614 @ id @ sK615 @ id)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f735,plain,(
% 2.63/1.98    ! [X196 : subst] : (? [X197 : d_subst] : ((d2subst @ X197) = X196) => ((d2subst @ (sK616 @ X196)) = X196))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f736,plain,(
% 2.63/1.98    ? [X198 : subst,X199 : term > $o,X200 : term > $o,X201 : term] : (! [X202 : term] : ((X200 @ (sub @ X202 @ (push @ X201 @ X198))) = (X199 @ X202)) & ($true != (X199 @ one)) & ($true = (X200 @ X201))) => (! [X202 : term] : ((sK618 @ X202) = (sK619 @ (sub @ X202 @ (push @ sK620 @ sK617)))) & ($true != (sK618 @ one)) & ($true = (sK619 @ sK620)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f737,plain,(
% 2.63/1.98    ! [X205 : subst,X206 : term > $o,X207 : term > $o,X208 : term] : (? [X209 : term] : ((X207 @ (sub @ X209 @ (push @ X208 @ X205))) != (X206 @ X209)) => ((X206 @ (sK621 @ X208 @ X207 @ X206 @ X205)) != (X207 @ (sub @ (sK621 @ X208 @ X207 @ X206 @ X205) @ (push @ X208 @ X205)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f738,plain,(
% 2.63/1.98    ? [X210 : subst,X211 : term] : ((sub @ one @ (push @ X211 @ X210)) != X211) => ((sub @ one @ (push @ sK623 @ sK622)) != sK623)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f739,plain,(
% 2.63/1.98    ! [X212 : term,X213 : subst,X214 : term > $o] : (? [X215 : term > $o] : ! [X216 : term] : ((X215 @ X216) = (X214 @ (sub @ X216 @ (push @ X212 @ X213)))) => ! [X216 : term] : ((sK624 @ X214 @ X213 @ X212 @ X216) = (X214 @ (sub @ X216 @ (push @ X212 @ X213)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f740,plain,(
% 2.63/1.98    ? [X217 : term,X218 : subst,X219 : term > $o] : ! [X220 : term > $o] : ? [X221 : term] : ((X220 @ X221) != (X219 @ (sub @ X221 @ (push @ X217 @ X218)))) => ! [X220 : term > $o] : ? [X221 : term] : ((sK627 @ (sub @ X221 @ (push @ sK625 @ sK626))) != (X220 @ X221))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f741,plain,(
% 2.63/1.98    ! [X220 : term > $o] : (? [X221 : term] : ((sK627 @ (sub @ X221 @ (push @ sK625 @ sK626))) != (X220 @ X221)) => ((sK627 @ (sub @ (sK628 @ X220) @ (push @ sK625 @ sK626))) != (X220 @ (sK628 @ X220))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f742,plain,(
% 2.63/1.98    ? [X222 : term] : ! [X223 : subst > term > term] : ? [X224 : subst,X225 : term] : ((sub @ X222 @ (push @ X225 @ X224)) != (X223 @ X224 @ X225)) => ! [X223 : subst > term > term] : ? [X225 : term,X224 : subst] : ((X223 @ X224 @ X225) != (sub @ sK629 @ (push @ X225 @ X224)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f743,plain,(
% 2.63/1.98    ! [X223 : subst > term > term] : (? [X225 : term,X224 : subst] : ((X223 @ X224 @ X225) != (sub @ sK629 @ (push @ X225 @ X224))) => ((X223 @ (sK630 @ X223) @ (sK631 @ X223)) != (sub @ sK629 @ (push @ (sK631 @ X223) @ (sK630 @ X223)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f744,plain,(
% 2.63/1.98    ? [X226 : term] : ((sub @ X226 @ id) != X226) => ((sub @ sK632 @ id) != sK632)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f745,plain,(
% 2.63/1.98    ! [X227 : term] : (? [X228 : subst > term > term] : ! [X229 : subst,X230 : term] : ((sub @ X227 @ (push @ X230 @ X229)) = (X228 @ X229 @ X230)) => ! [X230 : term,X229 : subst] : ((sK633 @ X227 @ X229 @ X230) = (sub @ X227 @ (push @ X230 @ X229))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f746,plain,(
% 2.63/1.98    ? [X232 : subst > term > term,X233 : term,X234 : term] : (((lam @ (X232 @ sh @ one)) = (ap @ (sub @ X233 @ id) @ X234)) & ! [X235 : subst,X236 : subst,X237 : term] : ((sub @ (X232 @ X235 @ X237) @ X236) = (X232 @ (comp @ X235 @ X236) @ (sub @ X237 @ X236)))) => (((ap @ (sub @ sK635 @ id) @ sK636) = (lam @ (sK634 @ sh @ one))) & ! [X237 : term,X236 : subst,X235 : subst] : ((sub @ (sK634 @ X235 @ X237) @ X236) = (sK634 @ (comp @ X235 @ X236) @ (sub @ X237 @ X236))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f747,plain,(
% 2.63/1.98    ! [X238 : subst > term > term] : (? [X241 : subst,X242 : subst,X243 : term] : ((sub @ (X238 @ X241 @ X243) @ X242) != (X238 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242))) => ((sub @ (X238 @ (sK637 @ X238) @ (sK639 @ X238)) @ (sK638 @ X238)) != (X238 @ (comp @ (sK637 @ X238) @ (sK638 @ X238)) @ (sub @ (sK639 @ X238) @ (sK638 @ X238)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f748,plain,(
% 2.63/1.98    ! [X244 : term] : (? [X245 : subst > term > term] : ! [X246 : term,X247 : subst] : ((sub @ X244 @ (push @ X246 @ X247)) = (X245 @ X247 @ X246)) => ! [X247 : subst,X246 : term] : ((sK640 @ X244 @ X247 @ X246) = (sub @ X244 @ (push @ X246 @ X247))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f749,plain,(
% 2.63/1.98    ? [X248 : term] : ! [X249 : subst > term > term] : ? [X250 : term,X251 : subst] : ((sub @ X248 @ (push @ X250 @ X251)) != (X249 @ X251 @ X250)) => ! [X249 : subst > term > term] : ? [X251 : subst,X250 : term] : ((sub @ sK641 @ (push @ X250 @ X251)) != (X249 @ X251 @ X250))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f750,plain,(
% 2.63/1.98    ! [X249 : subst > term > term] : (? [X251 : subst,X250 : term] : ((sub @ sK641 @ (push @ X250 @ X251)) != (X249 @ X251 @ X250)) => ((X249 @ (sK643 @ X249) @ (sK642 @ X249)) != (sub @ sK641 @ (push @ (sK642 @ X249) @ (sK643 @ X249)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f751,plain,(
% 2.63/1.98    ? [X252 : term] : ((sub @ X252 @ id) != X252) => (sK644 != (sub @ sK644 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f752,plain,(
% 2.63/1.98    ? [X254 : term] : ((sub @ X254 @ id) != X254) => ((sub @ sK645 @ id) != sK645)),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f753,plain,(
% 2.63/1.98    ? [X255 : subst > term > subst > $o] : ! [X256 : term > $o] : ? [X257 : term] : ((X255 @ id @ X257 @ id) != (X256 @ X257)) => ! [X256 : term > $o] : ? [X257 : term] : ((sK646 @ id @ X257 @ id) != (X256 @ X257))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f754,plain,(
% 2.63/1.98    ! [X256 : term > $o] : (? [X257 : term] : ((sK646 @ id @ X257 @ id) != (X256 @ X257)) => ((sK646 @ id @ (sK647 @ X256) @ id) != (X256 @ (sK647 @ X256))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f755,plain,(
% 2.63/1.98    ! [X259 : subst > term > subst > $o] : (? [X260 : term > $o] : ! [X261 : term] : ((X260 @ X261) = (X259 @ id @ X261 @ id)) => ! [X261 : term] : ((sK648 @ X259 @ X261) = (X259 @ id @ X261 @ id)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f756,plain,(
% 2.63/1.98    ? [X263 : term] : ((sub @ X263 @ id) != X263) => (sK649 != (sub @ sK649 @ id))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f681,plain,(
% 2.63/1.98    ((axscons = $true) | ? [X0 : subst] : ((push @ (sub @ one @ X0) @ (comp @ sh @ X0)) != X0)) & (! [X1 : subst] : ((push @ (sub @ one @ X1) @ (comp @ sh @ X1)) = X1) | (axscons != $true)) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & (($true = sP109) | ($true = sP111) | ($true = sP110) | ? [X2 : term] : ((sub @ X2 @ id) != X2) | ? [X3 : subst > term > subst > $o] : ! [X4 : term > $o] : ? [X5 : term] : ((X4 @ X5) != (X3 @ id @ X5 @ id)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP109) & ($true != sP111) & ($true != sP110) & ! [X6 : term] : ((sub @ X6 @ id) = X6) & ! [X7 : subst > term > subst > $o] : ? [X8 : term > $o] : ! [X9 : term] : ((X7 @ id @ X9 @ id) = (X8 @ X9)))) & (axvarshift = $true) & (($true = sP103) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP103)) & ((d2subst @ d_id) = sh) & (($true = sP100) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP100)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) | (! [X10 : term,X11 : subst] : ((sub @ one @ (push @ X10 @ X11)) = X10) & ! [X12 : term,X13 : subst] : ((comp @ sh @ (push @ X12 @ X13)) = X13) & ($true != sP97) & ($true != sP98) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))) & (? [X15 : term,X16 : subst] : ((sub @ one @ (push @ X15 @ X16)) != X15) | ? [X17 : term,X18 : subst] : ((comp @ sh @ (push @ X17 @ X18)) != X18) | ($true = sP97) | ($true = sP98) | ? [X19 : subst] : ((comp @ X19 @ id) != X19) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & ((pushprop_lem1_lthm = $true) | (! [X20 : subst,X21 : term] : ((sub @ one @ (push @ X21 @ X20)) = X21) & ? [X22 : term > $o,X23 : subst,X24 : term,X25 : term > $o,X26 : term] : (($true = (X22 @ X24)) & ($true != (X25 @ (sub @ X24 @ (push @ X26 @ X23))))) & ! [X27 : term,X28 : subst] : ((comp @ sh @ (push @ X27 @ X28)) = X28))) & (? [X29 : subst,X30 : term] : ((sub @ one @ (push @ X30 @ X29)) != X30) | ! [X31 : term > $o,X32 : subst,X33 : term,X34 : term > $o,X35 : term] : (($true != (X31 @ X33)) | ((X34 @ (sub @ X33 @ (push @ X35 @ X32))) = $true)) | ? [X36 : term,X37 : subst] : ((comp @ sh @ (push @ X36 @ X37)) != X37) | (pushprop_lem1_lthm != $true)) & (($true = sP92) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP92)) & (hoaslamnotvar_lthm = $true) & ((shinj = $true) | ? [X38 : term,X39 : term] : (((sub @ X38 @ sh) = (sub @ X39 @ sh)) & (X38 != X39))) & (! [X40 : term,X41 : term] : (((sub @ X40 @ sh) != (sub @ X41 @ sh)) | (X40 = X41)) | (shinj != $true)) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X42 : term] : ! [X43 : subst > term > term] : ((sub @ X42 @ (push @ one @ sh)) != (X43 @ sh @ one))) & (! [X44 : term] : ? [X45 : subst > term > term] : ((sub @ X44 @ (push @ one @ sh)) = (X45 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((axidr = $true) | ? [X46 : subst] : ((comp @ X46 @ id) != X46)) & (! [X47 : subst] : ((comp @ X47 @ id) = X47) | (axidr != $true)) & ((hoasinduction_lem3aaa = $true) | (sP87 != $true)) & ((sP87 = $true) | (hoasinduction_lem3aaa != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP84) & ! [X48 : term] : ((sub @ X48 @ id) = X48) & ($true != sP85))) & (($true = sP84) | ? [X49 : term] : ((sub @ X49 @ id) != X49) | ($true = sP85) | (hoasinduction_lem3a_lthm != $true)) & (! [X50 : term] : ? [X51 : subst > term > term] : ((sub @ X50 @ (push @ one @ sh)) = (X51 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X52 : term] : ! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one))) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP81) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP81)) & ((termmset_lthm = $true) | (! [X54 : term] : ((sub @ X54 @ id) = X54) & ? [X55 : term] : ((sub @ X55 @ id) != X55))) & (? [X56 : term] : ((sub @ X56 @ id) != X56) | ! [X57 : term] : ((sub @ X57 @ id) = X57) | (termmset_lthm != $true)) & (termmset_gthm = $true) & (! [X58 : term,X59 : term,X60 : term,X61 : term] : ((X58 = X59) | ((ap @ (sub @ X61 @ id) @ X59) != (ap @ (sub @ X60 @ id) @ X58))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X62 : term,X63 : term,X64 : term,X65 : term] : ((X62 != X63) & ((ap @ (sub @ X64 @ id) @ X62) = (ap @ (sub @ X65 @ id) @ X63)))) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lthm = $true) | (($true != sP76) & ($true != sP75) & ($true != sP74) & ($true != sP77))) & (($true = sP76) | ($true = sP75) | ($true = sP74) | ($true = sP77) | (hoasinduction_lthm != $true)) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & (($true = sP61) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP61)) & (hoasapinj2_gthm = $true) & (! [X66 : subst,X67 : term,X68 : term > $o] : ? [X69 : term > $o] : ! [X70 : term] : ((X69 @ X70) = (X68 @ (sub @ X70 @ (push @ X67 @ X66)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X71 : subst,X72 : term,X73 : term > $o] : ! [X74 : term > $o] : ? [X75 : term] : ((X73 @ (sub @ X75 @ (push @ X72 @ X71))) != (X74 @ X75))) & ((axidl = $true) | ? [X76 : subst] : ((comp @ id @ X76) != X76)) & (! [X77 : subst] : ((comp @ id @ X77) = X77) | (axidl != $true)) & (($true = sP60) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP60)) & ((hoasapinj2_lthm = $true) | ($true != sP58)) & (($true = sP58) | (hoasapinj2_lthm != $true)) & ((! [X78 : subst] : ((comp @ id @ X78) = X78) & ! [X79 : subst] : ((comp @ X79 @ id) = X79)) | (substmonoid != $true)) & ((substmonoid = $true) | ? [X80 : subst] : ((comp @ id @ X80) != X80) | ? [X81 : subst] : ((comp @ X81 @ id) != X81)) & (axapp = $true) & ! [X82 : d_subst,X83 : d_subst] : (((d2subst @ X83) != (d2subst @ X82)) | (X82 = X83)) & ! [X84 : d_term] : (d_one = X84) & ((induction2_lthm = $true) | (($true != sP55) & ($true != sP56) & ! [X85 : term] : ((sub @ X85 @ id) = X85))) & (($true = sP55) | ($true = sP56) | ? [X86 : term] : ((sub @ X86 @ id) != X86) | (induction2_lthm != $true)) & ! [X87 : term] : ? [X88 : d_term] : ((d2term @ X88) = X87) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((laminj = $true) | ? [X89 : term,X90 : term] : (((lam @ X89) = (lam @ X90)) & (X89 != X90))) & (! [X91 : term,X92 : term] : (((lam @ X92) != (lam @ X91)) | (X91 = X92)) | (laminj != $true)) & ((hoasapinj1 = $true) | ? [X93 : term,X94 : term,X95 : term,X96 : term] : (((ap @ (sub @ X93 @ id) @ X95) = (ap @ (sub @ X96 @ id) @ X94)) & (X93 != X96))) & (! [X97 : term,X98 : term,X99 : term,X100 : term] : (((ap @ (sub @ X100 @ id) @ X98) != (ap @ (sub @ X97 @ id) @ X99)) | (X97 = X100)) | (hoasapinj1 != $true)) & ! [X101 : d_term,X102 : d_term] : ((X101 = X102) | ((d2term @ X102) != (d2term @ X101))) & ((hoasinduction_lem0_lthm = $true) | ? [X103 : subst > term > subst > $o] : ! [X104 : term > $o] : ? [X105 : term] : ((X103 @ id @ X105 @ id) != (X104 @ X105))) & (! [X106 : subst > term > subst > $o] : ? [X107 : term > $o] : ! [X108 : term] : ((X106 @ id @ X108 @ id) = (X107 @ X108)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X109 : term] : ! [X110 : subst > term > term] : ? [X111 : term,X112 : subst] : ((sub @ X109 @ (push @ X111 @ X112)) != (X110 @ X112 @ X111))) & (! [X113 : term] : ? [X114 : subst > term > term] : ! [X115 : term,X116 : subst] : ((X114 @ X116 @ X115) = (sub @ X113 @ (push @ X115 @ X116))) | (hoasinduction_lem3v2_f != $true)) & ((d2subst @ d_id) = id) & ((induction2lem = $true) | ($true != sP50)) & (($true = sP50) | (induction2lem != $true)) & (pushprop_lem0_gthm = $true) & ((axshiftcons = $true) | ? [X117 : subst,X118 : term] : ((comp @ sh @ (push @ X118 @ X117)) != X117)) & (! [X119 : subst,X120 : term] : ((comp @ sh @ (push @ X120 @ X119)) = X119) | (axshiftcons != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X121 : term,X122 : term,X123 : term,X124 : term] : ((X123 = X124) | ((ap @ X122 @ X124) != (ap @ X121 @ X123))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X125 : term,X126 : term,X127 : term,X128 : term] : ((X127 != X128) & ((ap @ X126 @ X128) = (ap @ X125 @ X127)))) & (($true = sP47) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP47)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X129 : d_subst] : (d_id = X129) & ((axvarcons = $true) | ? [X130 : subst,X131 : term] : ((sub @ one @ (push @ X131 @ X130)) != X131)) & (! [X132 : subst,X133 : term] : ((sub @ one @ (push @ X133 @ X132)) = X133) | (axvarcons != $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & (hoasinduction_lem1 = $true) & (($true = sP42) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP42)) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & (! [X134 : term > $o,X135 : subst,X136 : term > $o,X137 : term] : (((X134 @ one) = $true) | ($true != (X136 @ X137)) | ? [X138 : term] : ((X136 @ (sub @ X138 @ (push @ X137 @ X135))) != (X134 @ X138))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X139 : term > $o,X140 : subst,X141 : term > $o,X142 : term] : (($true != (X139 @ one)) & ((X141 @ X142) = $true) & ! [X143 : term] : ((X141 @ (sub @ X143 @ (push @ X142 @ X140))) = (X139 @ X143)))) & (! [X144 : term,X145 : term,X146 : term,X147 : term] : ((X146 = X147) | ((ap @ X146 @ X144) != (ap @ X147 @ X145))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X148 : term,X149 : term,X150 : term,X151 : term] : ((X150 != X151) & ((ap @ X150 @ X148) = (ap @ X151 @ X149)))) & (? [X152 : term] : ((sub @ X152 @ id) != X152) | ($true = sP40) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X153 : term] : ((sub @ X153 @ id) = X153) & ($true != sP40))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X154 : term > $o,X155 : subst,X156 : term,X157 : term,X158 : term > $o] : (($true != (X154 @ X157)) | ((X158 @ (sub @ X157 @ (push @ X156 @ X155))) = $true)) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X159 : term > $o,X160 : subst,X161 : term,X162 : term,X163 : term > $o] : (($true = (X159 @ X162)) & ((X163 @ (sub @ X162 @ (push @ X161 @ X160))) != $true))) & (($true = sP35) | ? [X164 : term] : ((sub @ X164 @ id) != X164) | (sP36 = $true) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (($true != sP35) & ! [X165 : term] : ((sub @ X165 @ id) = X165) & (sP36 != $true))) & (! [X166 : subst > term > term,X167 : subst,X168 : term,X169 : subst > term > term] : (? [X170 : term,X171 : subst,X172 : subst] : ((sub @ (X166 @ X171 @ X170) @ X172) != (X166 @ (comp @ X171 @ X172) @ (sub @ X170 @ X172))) | ? [X173 : subst,X174 : term,X175 : subst] : ((sub @ (X169 @ X173 @ X174) @ X175) != (X169 @ (comp @ X173 @ X175) @ (sub @ X174 @ X175))) | ((X169 @ X167 @ X168) = (X166 @ X167 @ X168)) | ((lam @ (X169 @ sh @ one)) != (lam @ (X166 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X176 : subst > term > term,X177 : subst,X178 : term,X179 : subst > term > term] : (! [X180 : term,X181 : subst,X182 : subst] : ((sub @ (X176 @ X181 @ X180) @ X182) = (X176 @ (comp @ X181 @ X182) @ (sub @ X180 @ X182))) & ! [X183 : subst,X184 : term,X185 : subst] : ((sub @ (X179 @ X183 @ X184) @ X185) = (X179 @ (comp @ X183 @ X185) @ (sub @ X184 @ X185))) & ((X176 @ X177 @ X178) != (X179 @ X177 @ X178)) & ((lam @ (X176 @ sh @ one)) = (lam @ (X179 @ sh @ one))))) & ((hoasinduction_lem0 = $true) | ? [X186 : subst > term > subst > $o] : ! [X187 : term > $o] : ? [X188 : term] : ((X187 @ X188) != (X186 @ id @ X188 @ id))) & (! [X189 : subst > term > subst > $o] : ? [X190 : term > $o] : ! [X191 : term] : ((X189 @ id @ X191 @ id) = (X190 @ X191)) | (hoasinduction_lem0 != $true)) & ((sP30 = $true) | (induction2 != $true)) & ((induction2 = $true) | (sP30 != $true)) & (substmonoid_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | ? [X192 : subst > term > subst > $o,X193 : term] : (($true != (sP27 @ X192)) & ($true != (sP26 @ X192)) & ($true != (X192 @ id @ X193 @ id)))) & (! [X194 : subst > term > subst > $o,X195 : term] : (((sP27 @ X194) = $true) | ((sP26 @ X194) = $true) | ((X194 @ id @ X195 @ id) = $true)) | (hoasinduction_no_psi_cond != $true)) & ! [X196 : subst] : ? [X197 : d_subst] : ((d2subst @ X197) = X196) & ((pushprop_lem1v2_lthm = $true) | (? [X198 : subst,X199 : term > $o,X200 : term > $o,X201 : term] : (! [X202 : term] : ((X200 @ (sub @ X202 @ (push @ X201 @ X198))) = (X199 @ X202)) & ($true != (X199 @ one)) & ($true = (X200 @ X201))) & ! [X203 : subst,X204 : term] : ((sub @ one @ (push @ X204 @ X203)) = X204))) & (! [X205 : subst,X206 : term > $o,X207 : term > $o,X208 : term] : (? [X209 : term] : ((X207 @ (sub @ X209 @ (push @ X208 @ X205))) != (X206 @ X209)) | ((X206 @ one) = $true) | ($true != (X207 @ X208))) | ? [X210 : subst,X211 : term] : ((sub @ one @ (push @ X211 @ X210)) != X211) | (pushprop_lem1v2_lthm != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X212 : term,X213 : subst,X214 : term > $o] : ? [X215 : term > $o] : ! [X216 : term] : ((X215 @ X216) = (X214 @ (sub @ X216 @ (push @ X212 @ X213)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X217 : term,X218 : subst,X219 : term > $o] : ! [X220 : term > $o] : ? [X221 : term] : ((X220 @ X221) != (X219 @ (sub @ X221 @ (push @ X217 @ X218))))) & (pushprop_lem1v2_gthm = $true) & (? [X222 : term] : ! [X223 : subst > term > term] : ? [X224 : subst,X225 : term] : ((sub @ X222 @ (push @ X225 @ X224)) != (X223 @ X224 @ X225)) | ? [X226 : term] : ((sub @ X226 @ id) != X226) | (sP25 = $true) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X227 : term] : ? [X228 : subst > term > term] : ! [X229 : subst,X230 : term] : ((sub @ X227 @ (push @ X230 @ X229)) = (X228 @ X229 @ X230)) & ! [X231 : term] : ((sub @ X231 @ id) = X231) & (sP25 != $true))) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & ((hoaslamnotap = $true) | ? [X232 : subst > term > term,X233 : term,X234 : term] : (((lam @ (X232 @ sh @ one)) = (ap @ (sub @ X233 @ id) @ X234)) & ! [X235 : subst,X236 : subst,X237 : term] : ((sub @ (X232 @ X235 @ X237) @ X236) = (X232 @ (comp @ X235 @ X236) @ (sub @ X237 @ X236))))) & (! [X238 : subst > term > term,X239 : term,X240 : term] : (((ap @ (sub @ X239 @ id) @ X240) != (lam @ (X238 @ sh @ one))) | ? [X241 : subst,X242 : subst,X243 : term] : ((sub @ (X238 @ X241 @ X243) @ X242) != (X238 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242)))) | (hoaslamnotap != $true)) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & ((hoasapinj1_lthm = $true) | ($true != sP23)) & (($true = sP23) | (hoasapinj1_lthm != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3v2a != $true)) & (! [X244 : term] : ? [X245 : subst > term > term] : ! [X246 : term,X247 : subst] : ((sub @ X244 @ (push @ X246 @ X247)) = (X245 @ X247 @ X246)) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X248 : term] : ! [X249 : subst > term > term] : ? [X250 : term,X251 : subst] : ((sub @ X248 @ (push @ X250 @ X251)) != (X249 @ X251 @ X250))) & (hoasapnotvar = $true) & (axmap = $true) & ((axvarid = $true) | ? [X252 : term] : ((sub @ X252 @ id) != X252)) & (! [X253 : term] : ((sub @ X253 @ id) = X253) | (axvarid != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (($true = sP19) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP19)) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (($true = sP15) | (induction != $true)) & ((induction = $true) | ($true != sP15)) & (($true = sP11) | ? [X254 : term] : ((sub @ X254 @ id) != X254) | (sP12 = $true) | (sP10 = $true) | ? [X255 : subst > term > subst > $o] : ! [X256 : term > $o] : ? [X257 : term] : ((X255 @ id @ X257 @ id) != (X256 @ X257)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP11) & ! [X258 : term] : ((sub @ X258 @ id) = X258) & (sP12 != $true) & (sP10 != $true) & ! [X259 : subst > term > subst > $o] : ? [X260 : term > $o] : ! [X261 : term] : ((X260 @ X261) = (X259 @ id @ X261 @ id)))) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & (! [X262 : term] : ((sub @ X262 @ id) = X262) | (termmset != $true)) & ((termmset = $true) | ? [X263 : term] : ((sub @ X263 @ id) != X263)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(rectify,[status(thm)],[f680])).
% 2.63/1.98  thf(f680,plain,(
% 2.63/1.98    ((axscons = $true) | ? [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) != X86)) & (! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86) | (axscons != $true)) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & (($true = sP109) | ($true = sP111) | ($true = sP110) | ? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP109) & ($true != sP111) & ($true != sP110) & ! [X184 : term] : ((sub @ X184 @ id) = X184) & ! [X174 : subst > term > subst > $o] : ? [X175 : term > $o] : ! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)))) & (axvarshift = $true) & (($true = sP103) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP103)) & ((d2subst @ d_id) = sh) & (($true = sP100) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP100)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) | (! [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) = X236) & ! [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) = X239) & ($true != sP97) & ($true != sP98) & ! [X240 : subst] : ((comp @ X240 @ id) = X240))) & (? [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) != X236) | ? [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) != X239) | ($true = sP97) | ($true = sP98) | ? [X240 : subst] : ((comp @ X240 @ id) != X240) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & ((pushprop_lem1_lthm = $true) | (! [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) = X452) & ? [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true = (X455 @ X457)) & ($true != (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) & ! [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) = X454))) & (? [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) != X452) | ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) | ? [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) != X454) | (pushprop_lem1_lthm != $true)) & (($true = sP92) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP92)) & (hoaslamnotvar_lthm = $true) & ((shinj = $true) | ? [X50 : term,X51 : term] : (((sub @ X51 @ sh) = (sub @ X50 @ sh)) & (X50 != X51))) & (! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51)) | (shinj != $true)) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X526 : term] : ! [X527 : subst > term > term] : ((X527 @ sh @ one) != (sub @ X526 @ (push @ one @ sh)))) & (! [X526 : term] : ? [X527 : subst > term > term] : ((X527 @ sh @ one) = (sub @ X526 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & ((axidr = $true) | ? [X529 : subst] : ((comp @ X529 @ id) != X529)) & (! [X529 : subst] : ((comp @ X529 @ id) = X529) | (axidr != $true)) & ((hoasinduction_lem3aaa = $true) | (sP87 != $true)) & ((sP87 = $true) | (hoasinduction_lem3aaa != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP84) & ! [X359 : term] : ((sub @ X359 @ id) = X359) & ($true != sP85))) & (($true = sP84) | ? [X359 : term] : ((sub @ X359 @ id) != X359) | ($true = sP85) | (hoasinduction_lem3a_lthm != $true)) & (! [X158 : term] : ? [X159 : subst > term > term] : ((X159 @ sh @ one) = (sub @ X158 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X158 : term] : ! [X159 : subst > term > term] : ((X159 @ sh @ one) != (sub @ X158 @ (push @ one @ sh)))) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP81) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP81)) & ((termmset_lthm = $true) | (! [X480 : term] : ((sub @ X480 @ id) = X480) & ? [X481 : term] : ((sub @ X481 @ id) != X481))) & (? [X480 : term] : ((sub @ X480 @ id) != X480) | ! [X481 : term] : ((sub @ X481 @ id) = X481) | (termmset_lthm != $true)) & (termmset_gthm = $true) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 != X161) & ((ap @ (sub @ X163 @ id) @ X161) = (ap @ (sub @ X162 @ id) @ X160)))) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lthm = $true) | (($true != sP76) & ($true != sP75) & ($true != sP74) & ($true != sP77))) & (($true = sP76) | ($true = sP75) | ($true = sP74) | ($true = sP77) | (hoasinduction_lthm != $true)) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & (($true = sP61) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP61)) & (hoasapinj2_gthm = $true) & (! [X446 : subst,X447 : term,X448 : term > $o] : ? [X449 : term > $o] : ! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X446 : subst,X447 : term,X448 : term > $o] : ! [X449 : term > $o] : ? [X450 : term] : ((X449 @ X450) != (X448 @ (sub @ X450 @ (push @ X447 @ X446))))) & ((axidl = $true) | ? [X528 : subst] : ((comp @ id @ X528) != X528)) & (! [X528 : subst] : ((comp @ id @ X528) = X528) | (axidl != $true)) & (($true = sP60) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP60)) & ((hoasapinj2_lthm = $true) | ($true != sP58)) & (($true = sP58) | (hoasapinj2_lthm != $true)) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) | (substmonoid != $true)) & ((substmonoid = $true) | ? [X82 : subst] : ((comp @ id @ X82) != X82) | ? [X83 : subst] : ((comp @ X83 @ id) != X83)) & (axapp = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) != (d2subst @ X483)) | (X482 = X483)) & ! [X38 : d_term] : (d_one = X38) & ((induction2_lthm = $true) | (($true != sP55) & ($true != sP56) & ! [X87 : term] : ((sub @ X87 @ id) = X87))) & (($true = sP55) | ($true = sP56) | ? [X87 : term] : ((sub @ X87 @ id) != X87) | (induction2_lthm != $true)) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((laminj = $true) | ? [X530 : term,X531 : term] : (((lam @ X531) = (lam @ X530)) & (X530 != X531))) & (! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531)) | (laminj != $true)) & ((hoasapinj1 = $true) | ? [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) = (ap @ (sub @ X522 @ id) @ X524)) & (X522 != X525))) & (! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525)) | (hoasapinj1 != $true)) & ! [X84 : d_term,X85 : d_term] : ((X84 = X85) | ((d2term @ X85) != (d2term @ X84))) & ((hoasinduction_lem0_lthm = $true) | ? [X461 : subst > term > subst > $o] : ! [X462 : term > $o] : ? [X463 : term] : ((X461 @ id @ X463 @ id) != (X462 @ X463))) & (! [X461 : subst > term > subst > $o] : ? [X462 : term > $o] : ! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X509 : term] : ! [X510 : subst > term > term] : ? [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) != (X510 @ X512 @ X511))) & (! [X509 : term] : ? [X510 : subst > term > term] : ! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511)) | (hoasinduction_lem3v2_f != $true)) & ((d2subst @ d_id) = id) & ((induction2lem = $true) | ($true != sP50)) & (($true = sP50) | (induction2lem != $true)) & (pushprop_lem0_gthm = $true) & ((axshiftcons = $true) | ? [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) != X45)) & (! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45) | (axshiftcons != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 != X138) & ((ap @ X136 @ X138) = (ap @ X135 @ X137)))) & (($true = sP47) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP47)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X235 : d_subst] : (d_id = X235) & ((axvarcons = $true) | ? [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) != X533)) & (! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533) | (axvarcons != $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true)) & (hoasinduction_lem1 = $true) & (($true = sP42) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP42)) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & (! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true = (X7 @ one)) | ((X9 @ X10) != $true) | ? [X11 : term] : ((X7 @ X11) != (X9 @ (sub @ X11 @ (push @ X10 @ X8))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true != (X7 @ one)) & ((X9 @ X10) = $true) & ! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8)))))) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 != X129) & ((ap @ X128 @ X126) = (ap @ X129 @ X127)))) & (? [X139 : term] : ((sub @ X139 @ id) != X139) | ($true = sP40) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X139 : term] : ((sub @ X139 @ id) = X139) & ($true != sP40))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true = (X255 @ X258)) & ($true != (X259 @ (sub @ X258 @ (push @ X257 @ X256)))))) & (($true = sP35) | ? [X484 : term] : ((sub @ X484 @ id) != X484) | (sP36 = $true) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (($true != sP35) & ! [X484 : term] : ((sub @ X484 @ id) = X484) & (sP36 != $true))) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (? [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) != (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ? [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) != (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) & ! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) & ((X12 @ X13 @ X14) != (X15 @ X13 @ X14)) & ((lam @ (X12 @ sh @ one)) = (lam @ (X15 @ sh @ one))))) & ((hoasinduction_lem0 = $true) | ? [X47 : subst > term > subst > $o] : ! [X48 : term > $o] : ? [X49 : term] : ((X48 @ X49) != (X47 @ id @ X49 @ id))) & (! [X47 : subst > term > subst > $o] : ? [X48 : term > $o] : ! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id)) | (hoasinduction_lem0 != $true)) & ((sP30 = $true) | (induction2 != $true)) & ((induction2 = $true) | (sP30 != $true)) & (substmonoid_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | ? [X270 : subst > term > subst > $o,X271 : term] : (($true != (sP27 @ X270)) & ($true != (sP26 @ X270)) & ($true != (X270 @ id @ X271 @ id)))) & (! [X270 : subst > term > subst > $o,X271 : term] : (($true = (sP27 @ X270)) | ($true = (sP26 @ X270)) | ($true = (X270 @ id @ X271 @ id))) | (hoasinduction_no_psi_cond != $true)) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & ((pushprop_lem1v2_lthm = $true) | (? [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (! [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) = (X516 @ X519)) & ($true != (X516 @ one)) & ($true = (X517 @ X518))) & ! [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) = X514))) & (! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (? [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) != (X516 @ X519)) | ($true = (X516 @ one)) | ($true != (X517 @ X518))) | ? [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) != X514) | (pushprop_lem1v2_lthm != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ? [X133 : term > $o] : ! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X130 : term,X131 : subst,X132 : term > $o] : ! [X133 : term > $o] : ? [X134 : term] : ((X133 @ X134) != (X132 @ (sub @ X134 @ (push @ X130 @ X131))))) & (pushprop_lem1v2_gthm = $true) & (? [X305 : term] : ! [X306 : subst > term > term] : ? [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) != (X306 @ X307 @ X308)) | ? [X309 : term] : ((sub @ X309 @ id) != X309) | (sP25 = $true) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X305 : term] : ? [X306 : subst > term > term] : ! [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) = (X306 @ X307 @ X308)) & ! [X309 : term] : ((sub @ X309 @ id) = X309) & (sP25 != $true))) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & ((hoaslamnotap = $true) | ? [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) = (lam @ (X534 @ sh @ one))) & ! [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) = (sub @ (X534 @ X537 @ X539) @ X538)))) & (! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ? [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) != (sub @ (X534 @ X537 @ X539) @ X538))) | (hoaslamnotap != $true)) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & ((hoasapinj1_lthm = $true) | ($true != sP23)) & (($true = sP23) | (hoasapinj1_lthm != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3v2a != $true)) & (! [X103 : term] : ? [X104 : subst > term > term] : ! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X103 : term] : ! [X104 : subst > term > term] : ? [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) != (sub @ X103 @ (push @ X105 @ X106)))) & (hoasapnotvar = $true) & (axmap = $true) & ((axvarid = $true) | ? [X460 : term] : ((sub @ X460 @ id) != X460)) & (! [X460 : term] : ((sub @ X460 @ id) = X460) | (axvarid != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (($true = sP19) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP19)) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (($true = sP15) | (induction != $true)) & ((induction = $true) | ($true != sP15)) & (($true = sP11) | ? [X330 : term] : ((sub @ X330 @ id) != X330) | (sP12 = $true) | (sP10 = $true) | ? [X320 : subst > term > subst > $o] : ! [X321 : term > $o] : ? [X322 : term] : ((X320 @ id @ X322 @ id) != (X321 @ X322)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP11) & ! [X330 : term] : ((sub @ X330 @ id) = X330) & (sP12 != $true) & (sP10 != $true) & ! [X320 : subst > term > subst > $o] : ? [X321 : term > $o] : ! [X322 : term] : ((X320 @ id @ X322 @ id) = (X321 @ X322)))) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & (! [X269 : term] : ((sub @ X269 @ id) = X269) | (termmset != $true)) & ((termmset = $true) | ? [X269 : term] : ((sub @ X269 @ id) != X269)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(flattening,[status(thm)],[f679])).
% 2.63/1.98  thf(f679,plain,(
% 2.63/1.98    (((axscons = $true) | ? [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) != X86)) & (! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86) | (axscons != $true))) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & (((($true = sP109) | ($true = sP111) | ($true = sP110) | ? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176))) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP109) & ($true != sP111) & ($true != sP110) & ! [X184 : term] : ((sub @ X184 @ id) = X184) & ! [X174 : subst > term > subst > $o] : ? [X175 : term > $o] : ! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176))))) & (axvarshift = $true) & ((($true = sP103) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP103))) & ((d2subst @ d_id) = sh) & ((($true = sP100) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP100))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (((induction2lem_lthm = $true) | (! [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) = X236) & ! [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) = X239) & ($true != sP97) & ($true != sP98) & ! [X240 : subst] : ((comp @ X240 @ id) = X240))) & ((? [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) != X236) | ? [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) != X239) | ($true = sP97) | ($true = sP98) | ? [X240 : subst] : ((comp @ X240 @ id) != X240)) | (induction2lem_lthm != $true))) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & (((pushprop_lem1_lthm = $true) | (! [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) = X452) & ? [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true = (X455 @ X457)) & ($true != (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) & ! [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) = X454))) & ((? [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) != X452) | ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) | ? [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) != X454)) | (pushprop_lem1_lthm != $true))) & ((($true = sP92) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP92))) & (hoaslamnotvar_lthm = $true) & (((shinj = $true) | ? [X50 : term,X51 : term] : (((sub @ X51 @ sh) = (sub @ X50 @ sh)) & (X50 != X51))) & (! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51)) | (shinj != $true))) & (hoasinduction_gthm = $true) & (((hoasinduction_lem3b_lthm = $true) | ? [X526 : term] : ! [X527 : subst > term > term] : ((X527 @ sh @ one) != (sub @ X526 @ (push @ one @ sh)))) & (! [X526 : term] : ? [X527 : subst > term > term] : ((X527 @ sh @ one) = (sub @ X526 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true))) & (((axidr = $true) | ? [X529 : subst] : ((comp @ X529 @ id) != X529)) & (! [X529 : subst] : ((comp @ X529 @ id) = X529) | (axidr != $true))) & (((hoasinduction_lem3aaa = $true) | (sP87 != $true)) & ((sP87 = $true) | (hoasinduction_lem3aaa != $true))) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & (((hoasinduction_lem3a_lthm = $true) | (($true != sP84) & ! [X359 : term] : ((sub @ X359 @ id) = X359) & ($true != sP85))) & ((($true = sP84) | ? [X359 : term] : ((sub @ X359 @ id) != X359) | ($true = sP85)) | (hoasinduction_lem3a_lthm != $true))) & ((! [X158 : term] : ? [X159 : subst > term > term] : ((X159 @ sh @ one) = (sub @ X158 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X158 : term] : ! [X159 : subst > term > term] : ((X159 @ sh @ one) != (sub @ X158 @ (push @ one @ sh))))) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ((($true = sP81) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP81))) & (((termmset_lthm = $true) | (! [X480 : term] : ((sub @ X480 @ id) = X480) & ? [X481 : term] : ((sub @ X481 @ id) != X481))) & ((? [X480 : term] : ((sub @ X480 @ id) != X480) | ! [X481 : term] : ((sub @ X481 @ id) = X481)) | (termmset_lthm != $true))) & (termmset_gthm = $true) & ((! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 != X161) & ((ap @ (sub @ X163 @ id) @ X161) = (ap @ (sub @ X162 @ id) @ X160))))) & (hoasinduction_lem3a_gthm = $true) & (((hoasinduction_lthm = $true) | (($true != sP76) & ($true != sP75) & ($true != sP74) & ($true != sP77))) & ((($true = sP76) | ($true = sP75) | ($true = sP74) | ($true = sP77)) | (hoasinduction_lthm != $true))) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & ((($true = sP61) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP61))) & (hoasapinj2_gthm = $true) & ((! [X446 : subst,X447 : term,X448 : term > $o] : ? [X449 : term > $o] : ! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X446 : subst,X447 : term,X448 : term > $o] : ! [X449 : term > $o] : ? [X450 : term] : ((X449 @ X450) != (X448 @ (sub @ X450 @ (push @ X447 @ X446)))))) & (((axidl = $true) | ? [X528 : subst] : ((comp @ id @ X528) != X528)) & (! [X528 : subst] : ((comp @ id @ X528) = X528) | (axidl != $true))) & ((($true = sP60) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP60))) & (((hoasapinj2_lthm = $true) | ($true != sP58)) & (($true = sP58) | (hoasapinj2_lthm != $true))) & (((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) | (substmonoid != $true)) & ((substmonoid = $true) | (? [X82 : subst] : ((comp @ id @ X82) != X82) | ? [X83 : subst] : ((comp @ X83 @ id) != X83)))) & (axapp = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) != (d2subst @ X483)) | (X482 = X483)) & ! [X38 : d_term] : (d_one = X38) & (((induction2_lthm = $true) | (($true != sP55) & ($true != sP56) & ! [X87 : term] : ((sub @ X87 @ id) = X87))) & ((($true = sP55) | ($true = sP56) | ? [X87 : term] : ((sub @ X87 @ id) != X87)) | (induction2_lthm != $true))) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (((laminj = $true) | ? [X530 : term,X531 : term] : (((lam @ X531) = (lam @ X530)) & (X530 != X531))) & (! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531)) | (laminj != $true))) & (((hoasapinj1 = $true) | ? [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) = (ap @ (sub @ X522 @ id) @ X524)) & (X522 != X525))) & (! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525)) | (hoasapinj1 != $true))) & ! [X84 : d_term,X85 : d_term] : ((X84 = X85) | ((d2term @ X85) != (d2term @ X84))) & (((hoasinduction_lem0_lthm = $true) | ? [X461 : subst > term > subst > $o] : ! [X462 : term > $o] : ? [X463 : term] : ((X461 @ id @ X463 @ id) != (X462 @ X463))) & (! [X461 : subst > term > subst > $o] : ? [X462 : term > $o] : ! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463)) | (hoasinduction_lem0_lthm != $true))) & (((hoasinduction_lem3v2_f = $true) | ? [X509 : term] : ! [X510 : subst > term > term] : ? [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) != (X510 @ X512 @ X511))) & (! [X509 : term] : ? [X510 : subst > term > term] : ! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511)) | (hoasinduction_lem3v2_f != $true))) & ((d2subst @ d_id) = id) & (((induction2lem = $true) | ($true != sP50)) & (($true = sP50) | (induction2lem != $true))) & (pushprop_lem0_gthm = $true) & (((axshiftcons = $true) | ? [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) != X45)) & (! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45) | (axshiftcons != $true))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & ((! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 != X138) & ((ap @ X136 @ X138) = (ap @ X135 @ X137))))) & ((($true = sP47) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP47))) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X235 : d_subst] : (d_id = X235) & (((axvarcons = $true) | ? [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) != X533)) & (! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533) | (axvarcons != $true))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (((hoasinduction_lem2v2 = $true) | ($true != sP45)) & (($true = sP45) | (hoasinduction_lem2v2 != $true))) & (hoasinduction_lem1 = $true) & ((($true = sP42) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP42))) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & ((! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true = (X7 @ one)) | ((X9 @ X10) != $true) | ? [X11 : term] : ((X7 @ X11) != (X9 @ (sub @ X11 @ (push @ X10 @ X8))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true != (X7 @ one)) & ((X9 @ X10) = $true) & ! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8))))))) & ((! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 != X129) & ((ap @ X128 @ X126) = (ap @ X129 @ X127))))) & (((? [X139 : term] : ((sub @ X139 @ id) != X139) | ($true = sP40)) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X139 : term] : ((sub @ X139 @ id) = X139) & ($true != sP40)))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true = (X255 @ X258)) & ($true != (X259 @ (sub @ X258 @ (push @ X257 @ X256))))))) & (((($true = sP35) | ? [X484 : term] : ((sub @ X484 @ id) != X484) | (sP36 = $true)) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (($true != sP35) & ! [X484 : term] : ((sub @ X484 @ id) = X484) & (sP36 != $true)))) & ((! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (? [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) != (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ? [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) != (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) & ! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) & ((X12 @ X13 @ X14) != (X15 @ X13 @ X14)) & ((lam @ (X12 @ sh @ one)) = (lam @ (X15 @ sh @ one)))))) & (((hoasinduction_lem0 = $true) | ? [X47 : subst > term > subst > $o] : ! [X48 : term > $o] : ? [X49 : term] : ((X48 @ X49) != (X47 @ id @ X49 @ id))) & (! [X47 : subst > term > subst > $o] : ? [X48 : term > $o] : ! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id)) | (hoasinduction_lem0 != $true))) & (((sP30 = $true) | (induction2 != $true)) & ((induction2 = $true) | (sP30 != $true))) & (substmonoid_gthm = $true) & (((hoasinduction_no_psi_cond = $true) | ? [X270 : subst > term > subst > $o,X271 : term] : (($true != (sP27 @ X270)) & ($true != (sP26 @ X270)) & ($true != (X270 @ id @ X271 @ id)))) & (! [X270 : subst > term > subst > $o,X271 : term] : (($true = (sP27 @ X270)) | ($true = (sP26 @ X270)) | ($true = (X270 @ id @ X271 @ id))) | (hoasinduction_no_psi_cond != $true))) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & (((pushprop_lem1v2_lthm = $true) | (? [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (! [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) = (X516 @ X519)) & ($true != (X516 @ one)) & ($true = (X517 @ X518))) & ! [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) = X514))) & ((! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (? [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) != (X516 @ X519)) | ($true = (X516 @ one)) | ($true != (X517 @ X518))) | ? [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) != X514)) | (pushprop_lem1v2_lthm != $true))) & (hoasinduction_lem2v2_gthm = $true) & ((! [X130 : term,X131 : subst,X132 : term > $o] : ? [X133 : term > $o] : ! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X130 : term,X131 : subst,X132 : term > $o] : ! [X133 : term > $o] : ? [X134 : term] : ((X133 @ X134) != (X132 @ (sub @ X134 @ (push @ X130 @ X131)))))) & (pushprop_lem1v2_gthm = $true) & (((? [X305 : term] : ! [X306 : subst > term > term] : ? [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) != (X306 @ X307 @ X308)) | ? [X309 : term] : ((sub @ X309 @ id) != X309) | (sP25 = $true)) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X305 : term] : ? [X306 : subst > term > term] : ! [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) = (X306 @ X307 @ X308)) & ! [X309 : term] : ((sub @ X309 @ id) = X309) & (sP25 != $true)))) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & (((hoaslamnotap = $true) | ? [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) = (lam @ (X534 @ sh @ one))) & ! [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) = (sub @ (X534 @ X537 @ X539) @ X538)))) & (! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ? [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) != (sub @ (X534 @ X537 @ X539) @ X538))) | (hoaslamnotap != $true))) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & (((hoasapinj1_lthm = $true) | ($true != sP23)) & (($true = sP23) | (hoasapinj1_lthm != $true))) & (((hoasinduction_lem3v2a = $true) | ($true != sP21)) & (($true = sP21) | (hoasinduction_lem3v2a != $true))) & ((! [X103 : term] : ? [X104 : subst > term > term] : ! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X103 : term] : ! [X104 : subst > term > term] : ? [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) != (sub @ X103 @ (push @ X105 @ X106))))) & (hoasapnotvar = $true) & (axmap = $true) & (((axvarid = $true) | ? [X460 : term] : ((sub @ X460 @ id) != X460)) & (! [X460 : term] : ((sub @ X460 @ id) = X460) | (axvarid != $true))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((($true = sP19) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP19))) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((($true = sP15) | (induction != $true)) & ((induction = $true) | ($true != sP15))) & (((($true = sP11) | ? [X330 : term] : ((sub @ X330 @ id) != X330) | (sP12 = $true) | (sP10 = $true) | ? [X320 : subst > term > subst > $o] : ! [X321 : term > $o] : ? [X322 : term] : ((X320 @ id @ X322 @ id) != (X321 @ X322))) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP11) & ! [X330 : term] : ((sub @ X330 @ id) = X330) & (sP12 != $true) & (sP10 != $true) & ! [X320 : subst > term > subst > $o] : ? [X321 : term > $o] : ! [X322 : term] : ((X320 @ id @ X322 @ id) = (X321 @ X322))))) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & ((! [X269 : term] : ((sub @ X269 @ id) = X269) | (termmset != $true)) & ((termmset = $true) | ? [X269 : term] : ((sub @ X269 @ id) != X269))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(nnf_transformation,[status(thm)],[f128])).
% 2.63/1.98  thf(f128,plain,(
% 2.63/1.98    ((axscons = $true) <=> ! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86)) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & ((($true = sP109) | ($true = sP111) | ($true = sP110) | ? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (axvarshift = $true) & (($true = sP103) <=> (hoasinduction_lem2 = $true)) & ((d2subst @ d_id) = sh) & (($true = sP100) <=> (hoasinduction_lem3a = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) <=> (? [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) != X236) | ? [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) != X239) | ($true = sP97) | ($true = sP98) | ? [X240 : subst] : ((comp @ X240 @ id) != X240))) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & ((pushprop_lem1_lthm = $true) <=> (? [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) != X452) | ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) | ? [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) != X454))) & (($true = sP92) <=> (hoasinduction = $true)) & (hoaslamnotvar_lthm = $true) & ((shinj = $true) <=> ! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X526 : term] : ? [X527 : subst > term > term] : ((X527 @ sh @ one) = (sub @ X526 @ (push @ one @ sh)))) & ((axidr = $true) <=> ! [X529 : subst] : ((comp @ X529 @ id) = X529)) & ((hoasinduction_lem3aaa = $true) <=> (sP87 = $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (($true = sP84) | ? [X359 : term] : ((sub @ X359 @ id) != X359) | ($true = sP85))) & (! [X158 : term] : ? [X159 : subst > term > term] : ((X159 @ sh @ one) = (sub @ X158 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP81) <=> (hoasinduction_lem3v2 = $true)) & ((termmset_lthm = $true) <=> (? [X480 : term] : ((sub @ X480 @ id) != X480) | ! [X481 : term] : ((sub @ X481 @ id) = X481))) & (termmset_gthm = $true) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) <=> (hoasapinj2 = $true)) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lthm = $true) <=> (($true = sP76) | ($true = sP75) | ($true = sP74) | ($true = sP77))) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & (($true = sP61) <=> (substmonoid_lthm = $true)) & (hoasapinj2_gthm = $true) & (! [X446 : subst,X447 : term,X448 : term > $o] : ? [X449 : term > $o] : ! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446)))) <=> (pushprop_lem0_lthm = $true)) & ((axidl = $true) <=> ! [X528 : subst] : ((comp @ id @ X528) = X528)) & (($true = sP60) <=> (hoasinduction_lem3aa = $true)) & ((hoasapinj2_lthm = $true) <=> ($true = sP58)) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) <=> (substmonoid = $true)) & (axapp = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) != (d2subst @ X483)) | (X482 = X483)) & ! [X38 : d_term] : (d_one = X38) & ((induction2_lthm = $true) <=> (($true = sP55) | ($true = sP56) | ? [X87 : term] : ((sub @ X87 @ id) != X87))) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((laminj = $true) <=> ! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531))) & ((hoasapinj1 = $true) <=> ! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525))) & ! [X84 : d_term,X85 : d_term] : ((X84 = X85) | ((d2term @ X85) != (d2term @ X84))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X461 : subst > term > subst > $o] : ? [X462 : term > $o] : ! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X509 : term] : ? [X510 : subst > term > term] : ! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511))) & ((d2subst @ d_id) = id) & ((induction2lem = $true) <=> ($true = sP50)) & (pushprop_lem0_gthm = $true) & ((axshiftcons = $true) <=> ! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) <=> (apinj2 = $true)) & (($true = sP47) <=> (hoasinduction_lem3aa_lthm = $true)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X235 : d_subst] : (d_id = X235) & ((axvarcons = $true) <=> ! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) <=> ($true = sP45)) & (hoasinduction_lem1 = $true) & (($true = sP42) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & (! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true = (X7 @ one)) | ((X9 @ X10) != $true) | ? [X11 : term] : ((X7 @ X11) != (X9 @ (sub @ X11 @ (push @ X10 @ X8))))) <=> (pushprop_lem1v2 = $true)) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) <=> (apinj1 = $true)) & ((? [X139 : term] : ((sub @ X139 @ id) != X139) | ($true = sP40)) <=> (hoasinduction_lem3v2_lthm = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) <=> (pushprop_lem1 = $true)) & ((($true = sP35) | ? [X484 : term] : ((sub @ X484 @ id) != X484) | (sP36 = $true)) <=> (hoasinduction_lem3_lthm = $true)) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (? [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) != (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ? [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) != (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & ((hoasinduction_lem0 = $true) <=> ! [X47 : subst > term > subst > $o] : ? [X48 : term > $o] : ! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id))) & ((sP30 = $true) <=> (induction2 = $true)) & (substmonoid_gthm = $true) & ((hoasinduction_no_psi_cond = $true) <=> ! [X270 : subst > term > subst > $o,X271 : term] : (($true = (sP27 @ X270)) | ($true = (sP26 @ X270)) | ($true = (X270 @ id @ X271 @ id)))) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & ((pushprop_lem1v2_lthm = $true) <=> (! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (? [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) != (X516 @ X519)) | ($true = (X516 @ one)) | ($true != (X517 @ X518))) | ? [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) != X514))) & (hoasinduction_lem2v2_gthm = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ? [X133 : term > $o] : ! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) <=> (pushprop_lem0 = $true)) & (pushprop_lem1v2_gthm = $true) & ((? [X305 : term] : ! [X306 : subst > term > term] : ? [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) != (X306 @ X307 @ X308)) | ? [X309 : term] : ((sub @ X309 @ id) != X309) | (sP25 = $true)) <=> (hoasinduction_lem3v2a_lthm = $true)) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & ((hoaslamnotap = $true) <=> ! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ? [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) != (sub @ (X534 @ X537 @ X539) @ X538)))) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & ((hoasapinj1_lthm = $true) <=> ($true = sP23)) & ((hoasinduction_lem3v2a = $true) <=> ($true = sP21)) & (! [X103 : term] : ? [X104 : subst > term > term] : ! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (hoasapnotvar = $true) & (axmap = $true) & ((axvarid = $true) <=> ! [X460 : term] : ((sub @ X460 @ id) = X460)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (($true = sP19) <=> (hoasinduction_lem3 = $true)) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (($true = sP15) <=> (induction = $true)) & ((($true = sP11) | ? [X330 : term] : ((sub @ X330 @ id) != X330) | (sP12 = $true) | (sP10 = $true) | ? [X320 : subst > term > subst > $o] : ! [X321 : term > $o] : ? [X322 : term] : ((X320 @ id @ X322 @ id) != (X321 @ X322))) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & (! [X269 : term] : ((sub @ X269 @ id) = X269) <=> (termmset = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(definition_folding,[status(thm)],[f14,f127,f126,f125,f124,f123,f122,f121,f120,f119,f118,f117,f116,f115,f114,f113,f112,f111,f110,f109,f108,f107,f106,f105,f104,f103,f102,f101,f100,f99,f98,f97,f96,f95,f94,f93,f92,f91,f90,f89,f88,f87,f86,f85,f84,f83,f82,f81,f80,f79,f78,f77,f76,f75,f74,f73,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])).
% 2.63/1.98  thf(f18,plain,(
% 2.63/1.98    ! [X341 : subst > term > subst > $o] : (($true = (sP2 @ X341)) <=> ? [X350 : subst > term > term] : (! [X352 : subst,X353 : term,X354 : subst] : ((X350 @ (comp @ X354 @ X352) @ (sub @ X353 @ X352)) = (sub @ (X350 @ X354 @ X353) @ X352)) & ! [X351 : term] : (($true = (X341 @ id @ (X350 @ id @ X351) @ id)) | ($true != (X341 @ id @ X351 @ id))) & ($true != (X341 @ id @ (lam @ (X350 @ sh @ one)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f19,plain,(
% 2.63/1.98    ! [X341 : subst > term > subst > $o] : (($true = (sP3 @ X341)) <=> ? [X347 : term,X348 : term] : (($true != (X341 @ id @ (ap @ (sub @ X348 @ id) @ X347) @ id)) & ($true = (X341 @ id @ X348 @ id)) & ($true = (X341 @ id @ X347 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f20,plain,(
% 2.63/1.98    ! [X341 : subst > term > subst > $o] : (($true = (sP4 @ X341)) <=> ? [X349 : term] : (((X341 @ id @ X349 @ id) != $true) & ($true = (var @ (sub @ X349 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f21,plain,(
% 2.63/1.98    ! [X341 : subst > term > subst > $o] : (($true = (sP5 @ X341)) <=> ? [X355 : subst,X356 : subst,X357 : term,X358 : subst] : (((X341 @ X355 @ X357 @ (comp @ X358 @ X356)) != $true) & ((X341 @ (comp @ X355 @ X358) @ (sub @ X357 @ X358) @ X356) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f22,plain,(
% 2.63/1.98    ! [X323 : term > $o] : (($true = (sP6 @ X323)) <=> ! [X327 : term,X328 : term] : (($true != (X323 @ X327)) | ($true != (X323 @ X328)) | ($true = (X323 @ (ap @ X328 @ X327)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f23,plain,(
% 2.63/1.98    ! [X323 : term > $o] : (((sP7 @ X323) = $true) <=> ! [X329 : term] : (($true != (var @ X329)) | ((X323 @ X329) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f24,plain,(
% 2.63/1.98    ! [X323 : term > $o] : (($true = (sP8 @ X323)) <=> ! [X325 : term] : (? [X326 : term] : (($true = (X323 @ X326)) & ($true != (X323 @ (sub @ X325 @ (push @ X326 @ id))))) | ($true = (X323 @ (lam @ X325)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f25,plain,(
% 2.63/1.98    ! [X331 : subst > term > subst > $o] : (((sP9 @ X331) = $true) <=> ! [X335 : subst > term > term] : (((X331 @ id @ (lam @ (X335 @ sh @ one)) @ id) = $true) | ? [X339 : term] : (((X331 @ id @ X339 @ id) = $true) & ($true != (X331 @ id @ (X335 @ id @ X339) @ id))) | ? [X336 : subst,X337 : term,X338 : subst] : ((sub @ (X335 @ X338 @ X337) @ X336) != (X335 @ (comp @ X338 @ X336) @ (sub @ X337 @ X336)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f26,plain,(
% 2.63/1.98    (sP10 = $true) <=> ! [X341 : subst > term > subst > $o,X342 : term] : (($true = (X341 @ id @ X342 @ id)) | ? [X343 : subst,X344 : subst,X345 : subst,X346 : term] : (($true != (X341 @ (comp @ X343 @ X344) @ (sub @ X346 @ X344) @ X345)) & ($true = (X341 @ X343 @ X346 @ (comp @ X344 @ X345)))) | ($true = (sP5 @ X341)) | ($true = (sP4 @ X341)) | ($true = (sP2 @ X341)) | ($true = (sP3 @ X341)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f27,plain,(
% 2.63/1.98    ($true = sP11) <=> ? [X331 : subst > term > subst > $o,X332 : term,X333 : term > $o] : (((X333 @ (lam @ X332)) != $true) & ! [X340 : term] : ((X333 @ X340) = (X331 @ id @ X340 @ id)) & ! [X334 : term] : (($true != (X333 @ X334)) | ($true = (X333 @ (sub @ X332 @ (push @ X334 @ id))))) & ((sP9 @ X331) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f28,plain,(
% 2.63/1.98    (sP12 = $true) <=> ? [X323 : term > $o,X324 : term] : (($true = (sP6 @ X323)) & ($true = (sP8 @ X323)) & ((sP7 @ X323) = $true) & ($true != (X323 @ X324)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f29,plain,(
% 2.63/1.98    ! [X121 : term > $o] : (((sP13 @ X121) = $true) <=> ? [X122 : term,X123 : term] : (((X121 @ X122) = $true) & ($true != (X121 @ (ap @ X123 @ X122))) & ($true = (X121 @ X123))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f30,plain,(
% 2.63/1.98    ! [X121 : term > $o] : (($true = (sP14 @ X121)) <=> ? [X124 : term] : (($true != (X121 @ (lam @ X124))) & ((X121 @ X124) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f31,plain,(
% 2.63/1.98    ($true = sP15) <=> ! [X120 : term,X121 : term > $o] : (($true = (X121 @ X120)) | ? [X125 : term] : (((var @ X125) = $true) & ((X121 @ X125) != $true)) | ((sP13 @ X121) = $true) | ($true = (sP14 @ X121)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f32,plain,(
% 2.63/1.98    ! [X430 : subst > term > subst > $o] : (((sP16 @ X430) = $true) <=> ? [X441 : subst > term > term] : (($true != (X430 @ id @ (lam @ (X441 @ sh @ one)) @ id)) & ! [X442 : subst,X443 : subst,X444 : term] : ((sub @ (X441 @ X443 @ X444) @ X442) = (X441 @ (comp @ X443 @ X442) @ (sub @ X444 @ X442))) & ! [X445 : term] : (($true = (X430 @ id @ (X441 @ id @ X445) @ id)) | ($true != (X430 @ id @ X445 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f33,plain,(
% 2.63/1.98    ! [X431 : term,X430 : subst > term > subst > $o] : (($true = (sP17 @ X430 @ X431)) <=> ? [X436 : term] : (((X430 @ id @ (sub @ X431 @ (push @ X436 @ id)) @ id) != $true) & ((X430 @ id @ X436 @ id) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f34,plain,(
% 2.63/1.98    ! [X430 : subst > term > subst > $o] : (((sP18 @ X430) = $true) <=> ? [X437 : term,X438 : subst,X439 : subst,X440 : subst] : (($true != (X430 @ X440 @ X437 @ (comp @ X439 @ X438))) & ($true = (X430 @ (comp @ X440 @ X439) @ (sub @ X437 @ X439) @ X438))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f35,plain,(
% 2.63/1.98    ($true = sP19) <=> ! [X430 : subst > term > subst > $o,X431 : term] : (? [X432 : subst,X433 : subst,X434 : subst,X435 : term] : (($true != (X430 @ (comp @ X432 @ X434) @ (sub @ X435 @ X434) @ X433)) & ($true = (X430 @ X432 @ X435 @ (comp @ X434 @ X433)))) | ((sP18 @ X430) = $true) | ($true = (sP17 @ X430 @ X431)) | ($true = (X430 @ id @ (lam @ X431) @ id)) | ((sP16 @ X430) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f36,plain,(
% 2.63/1.98    ! [X164 : subst > term > subst > $o] : (((sP20 @ X164) = $true) <=> ? [X168 : subst > term > term] : (! [X170 : subst,X171 : term,X172 : subst] : ((sub @ (X168 @ X172 @ X171) @ X170) = (X168 @ (comp @ X172 @ X170) @ (sub @ X171 @ X170))) & ! [X169 : term] : (((X164 @ id @ X169 @ id) != $true) | ((X164 @ id @ (X168 @ id @ X169) @ id) = $true)) & ($true != (X164 @ id @ (lam @ (X168 @ sh @ one)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f37,plain,(
% 2.63/1.98    ($true = sP21) <=> ! [X164 : subst > term > subst > $o,X165 : term > $o,X166 : term] : (? [X167 : term] : (($true = (X165 @ X167)) & ($true != (X165 @ (sub @ X166 @ (push @ X167 @ id))))) | ? [X173 : term] : ((X165 @ X173) != (X164 @ id @ X173 @ id)) | ($true = (X165 @ (lam @ X166))) | ((sP20 @ X164) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f38,plain,(
% 2.63/1.98    ($true = sP22) <=> ! [X265 : term,X266 : term,X267 : term,X268 : term] : ((X266 = X267) | ((ap @ (sub @ X267 @ id) @ X265) != (ap @ (sub @ X266 @ id) @ X268)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f39,plain,(
% 2.63/1.98    ($true = sP23) <=> (? [X260 : term] : ((sub @ X260 @ id) != X260) | ? [X261 : term,X262 : term,X263 : term,X264 : term] : ((X261 != X264) & ((ap @ X264 @ X262) = (ap @ X261 @ X263))) | ($true = sP22))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f40,plain,(
% 2.63/1.98    ! [X310 : subst > term > subst > $o] : (($true = (sP24 @ X310)) <=> ? [X314 : subst > term > term] : (((X310 @ id @ (lam @ (X314 @ sh @ one)) @ id) != $true) & ! [X316 : subst,X317 : subst,X318 : term] : ((X314 @ (comp @ X317 @ X316) @ (sub @ X318 @ X316)) = (sub @ (X314 @ X317 @ X318) @ X316)) & ! [X315 : term] : (($true = (X310 @ id @ (X314 @ id @ X315) @ id)) | ($true != (X310 @ id @ X315 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f41,plain,(
% 2.63/1.98    (sP25 = $true) <=> ! [X310 : subst > term > subst > $o,X311 : term,X312 : term > $o] : (((X312 @ (lam @ X311)) = $true) | ? [X313 : term] : (($true = (X312 @ X313)) & ($true != (X312 @ (sub @ X311 @ (push @ X313 @ id))))) | ? [X319 : term] : ((X312 @ X319) != (X310 @ id @ X319 @ id)) | ($true = (sP24 @ X310)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f42,plain,(
% 2.63/1.98    ! [X270 : subst > term > subst > $o] : (($true = (sP26 @ X270)) <=> ? [X272 : subst > term > term] : (! [X273 : term] : (($true = (X270 @ id @ (X272 @ id @ X273) @ id)) | ($true != (X270 @ id @ X273 @ id))) & ! [X274 : subst,X275 : subst,X276 : term] : ((X272 @ (comp @ X274 @ X275) @ (sub @ X276 @ X275)) = (sub @ (X272 @ X274 @ X276) @ X275)) & ($true != (X270 @ id @ (lam @ (X272 @ sh @ one)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f43,plain,(
% 2.63/1.98    ! [X270 : subst > term > subst > $o] : (($true = (sP27 @ X270)) <=> ? [X277 : term,X278 : term] : (((X270 @ id @ (ap @ (sub @ X278 @ id) @ X277) @ id) != $true) & ($true = (X270 @ id @ X278 @ id)) & ($true = (X270 @ id @ X277 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f44,plain,(
% 2.63/1.98    ! [X1 : term > $o] : (($true = (sP28 @ X1)) <=> ? [X4 : term] : (! [X5 : term] : (($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))) | ($true != (X1 @ X5))) & ($true != (X1 @ (lam @ X4)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f45,plain,(
% 2.63/1.98    ! [X1 : term > $o] : (((sP29 @ X1) = $true) <=> ? [X2 : term,X3 : term] : (($true = (X1 @ X3)) & ((X1 @ X2) = $true) & ((X1 @ (ap @ X3 @ X2)) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f46,plain,(
% 2.63/1.98    (sP30 = $true) <=> ! [X0 : term,X1 : term > $o] : (($true = (sP28 @ X1)) | ((X1 @ X0) = $true) | ? [X6 : term] : (($true != (X1 @ X6)) & ((var @ X6) = $true)) | ((sP29 @ X1) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f47,plain,(
% 2.63/1.98    ! [X485 : subst > term > subst > $o] : (($true = (sP31 @ X485)) <=> ! [X488 : subst > term > term] : (? [X492 : term] : (($true = (X485 @ id @ X492 @ id)) & ($true != (X485 @ id @ (X488 @ id @ X492) @ id))) | ((X485 @ id @ (lam @ (X488 @ sh @ one)) @ id) = $true) | ? [X489 : subst,X490 : subst,X491 : term] : ((X488 @ (comp @ X489 @ X490) @ (sub @ X491 @ X490)) != (sub @ (X488 @ X489 @ X491) @ X490))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f48,plain,(
% 2.63/1.98    ! [X494 : subst > term > subst > $o] : (($true = (sP32 @ X494)) <=> ? [X504 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X504 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X504 @ X507 @ X508) @ X506)) & ($true != (X494 @ id @ (lam @ (X504 @ sh @ one)) @ id)) & ! [X505 : term] : (($true = (X494 @ id @ (X504 @ id @ X505) @ id)) | ((X494 @ id @ X505 @ id) != $true))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f49,plain,(
% 2.63/1.98    ! [X494 : subst > term > subst > $o] : (((sP33 @ X494) = $true) <=> ? [X495 : term,X496 : subst,X497 : subst,X498 : subst] : (($true != (X494 @ X497 @ X495 @ (comp @ X496 @ X498))) & ($true = (X494 @ (comp @ X497 @ X496) @ (sub @ X495 @ X496) @ X498))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f50,plain,(
% 2.63/1.98    ! [X493 : term,X494 : subst > term > subst > $o] : (($true = (sP34 @ X494 @ X493)) <=> ? [X499 : term] : (($true != (X494 @ id @ (sub @ X493 @ (push @ X499 @ id)) @ id)) & ($true = (X494 @ id @ X499 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f51,plain,(
% 2.63/1.98    ($true = sP35) <=> ! [X493 : term,X494 : subst > term > subst > $o] : (((X494 @ id @ (lam @ X493) @ id) = $true) | ? [X500 : term,X501 : subst,X502 : subst,X503 : subst] : (($true = (X494 @ X503 @ X500 @ (comp @ X501 @ X502))) & ($true != (X494 @ (comp @ X503 @ X501) @ (sub @ X500 @ X501) @ X502))) | ($true = (sP34 @ X494 @ X493)) | ((sP33 @ X494) = $true) | ($true = (sP32 @ X494)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f52,plain,(
% 2.63/1.98    (sP36 = $true) <=> ? [X485 : subst > term > subst > $o,X486 : term] : (! [X487 : term] : (($true = (X485 @ id @ (sub @ X486 @ (push @ X487 @ id)) @ id)) | ($true != (X485 @ id @ X487 @ id))) & ($true != (X485 @ id @ (lam @ (sub @ X486 @ (push @ one @ sh))) @ id)) & ($true = (sP31 @ X485)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f53,plain,(
% 2.63/1.98    ! [X140 : subst > term > subst > $o] : (($true = (sP37 @ X140)) <=> ? [X152 : subst > term > term] : (((X140 @ id @ (lam @ (X152 @ sh @ one)) @ id) != $true) & ! [X153 : term,X154 : subst,X155 : subst] : ((sub @ (X152 @ X154 @ X153) @ X155) = (X152 @ (comp @ X154 @ X155) @ (sub @ X153 @ X155))) & ! [X156 : term] : (($true = (X140 @ id @ (X152 @ id @ X156) @ id)) | ($true != (X140 @ id @ X156 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f54,plain,(
% 2.63/1.98    ! [X140 : subst > term > subst > $o] : (($true = (sP38 @ X140)) <=> ? [X148 : subst,X149 : subst,X150 : term,X151 : subst] : (($true = (X140 @ X151 @ X150 @ (comp @ X149 @ X148))) & ((X140 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149) @ X148) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f55,plain,(
% 2.63/1.98    ! [X141 : term > $o,X142 : term] : (($true = (sP39 @ X142 @ X141)) <=> ? [X157 : term] : (($true = (X141 @ X157)) & ($true != (X141 @ (sub @ X142 @ (push @ X157 @ id))))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f56,plain,(
% 2.63/1.98    ($true = sP40) <=> ! [X140 : subst > term > subst > $o,X141 : term > $o,X142 : term] : (($true = (X141 @ (lam @ X142))) | ($true = (sP37 @ X140)) | ? [X143 : term] : ((X140 @ id @ X143 @ id) != (X141 @ X143)) | ? [X144 : subst,X145 : term,X146 : subst,X147 : subst] : (($true = (X140 @ (comp @ X147 @ X144) @ (sub @ X145 @ X144) @ X146)) & ($true != (X140 @ X147 @ X145 @ (comp @ X144 @ X146)))) | ($true = (sP39 @ X142 @ X141)) | ($true = (sP38 @ X140)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f57,plain,(
% 2.63/1.98    ($true = sP41) <=> ! [X470 : term,X471 : subst > term > term,X472 : subst,X473 : subst > term > term] : (? [X477 : subst,X478 : subst,X479 : term] : ((sub @ (X473 @ X478 @ X479) @ X477) != (X473 @ (comp @ X478 @ X477) @ (sub @ X479 @ X477))) | ((X471 @ X472 @ X470) = (X473 @ X472 @ X470)) | ((lam @ (X473 @ sh @ one)) != (lam @ (X471 @ sh @ one))) | ? [X474 : term,X475 : subst,X476 : subst] : ((X471 @ (comp @ X475 @ X476) @ (sub @ X474 @ X476)) != (sub @ (X471 @ X475 @ X474) @ X476)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f58,plain,(
% 2.63/1.98    ($true = sP42) <=> (($true = sP41) | ? [X466 : subst,X467 : term] : ((comp @ sh @ (push @ X467 @ X466)) != X466) | ? [X468 : term,X469 : term] : ((X468 != X469) & ((lam @ X468) = (lam @ X469))) | ? [X464 : term,X465 : subst] : ((sub @ one @ (push @ X464 @ X465)) != X464))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f59,plain,(
% 2.63/1.98    ! [X213 : subst > term > subst > $o] : (($true = (sP43 @ X213)) <=> ? [X225 : term,X226 : term] : (($true = (X213 @ id @ X225 @ id)) & ($true != (X213 @ id @ (ap @ (sub @ X226 @ id) @ X225) @ id)) & ($true = (X213 @ id @ X226 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f60,plain,(
% 2.63/1.98    ! [X213 : subst > term > subst > $o] : (($true = (sP44 @ X213)) <=> ? [X216 : subst,X217 : subst,X218 : term,X219 : subst] : (($true = (X213 @ (comp @ X216 @ X219) @ (sub @ X218 @ X219) @ X217)) & ((X213 @ X216 @ X218 @ (comp @ X219 @ X217)) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f61,plain,(
% 2.63/1.98    ($true = sP45) <=> ! [X212 : term,X213 : subst > term > subst > $o,X214 : term > $o,X215 : term] : (? [X220 : subst,X221 : term,X222 : subst,X223 : subst] : (($true = (X213 @ X223 @ X221 @ (comp @ X220 @ X222))) & ($true != (X213 @ (comp @ X223 @ X220) @ (sub @ X221 @ X220) @ X222))) | ($true = (sP43 @ X213)) | ? [X224 : term] : ((X214 @ X224) != (X213 @ id @ X224 @ id)) | ($true != (X214 @ X215)) | ($true = (X214 @ (ap @ X212 @ X215))) | ($true != (X214 @ X212)) | ($true = (sP44 @ X213)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f62,plain,(
% 2.63/1.98    ! [X204 : subst > term > subst > $o] : (($true = (sP46 @ X204)) <=> ? [X206 : subst > term > term] : (! [X207 : term] : (($true != (X204 @ id @ X207 @ id)) | ($true = (X204 @ id @ (X206 @ id @ X207) @ id))) & ($true != (X204 @ id @ (lam @ (X206 @ sh @ one)) @ id)) & ! [X208 : term,X209 : subst,X210 : subst] : ((sub @ (X206 @ X209 @ X208) @ X210) = (X206 @ (comp @ X209 @ X210) @ (sub @ X208 @ X210)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f63,plain,(
% 2.63/1.98    ($true = sP47) <=> ! [X204 : subst > term > subst > $o,X205 : term] : (($true = (X204 @ id @ (lam @ (sub @ X205 @ (push @ one @ sh))) @ id)) | ($true = (sP46 @ X204)) | ? [X211 : term] : (((X204 @ id @ (sub @ X205 @ (push @ X211 @ id)) @ id) != $true) & ($true = (X204 @ id @ X211 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f64,plain,(
% 2.63/1.98    ! [X279 : term > $o] : (((sP48 @ X279) = $true) <=> ? [X283 : term] : (! [X284 : term] : (($true = (X279 @ (sub @ X283 @ (push @ X284 @ id)))) | ($true != (X279 @ X284))) & ($true != (X279 @ (lam @ X283)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f65,plain,(
% 2.63/1.98    ! [X279 : term > $o] : (((sP49 @ X279) = $true) <=> ? [X285 : term,X286 : term] : (((X279 @ X285) = $true) & ($true = (X279 @ X286)) & ($true != (X279 @ (ap @ X286 @ X285)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f66,plain,(
% 2.63/1.98    ($true = sP50) <=> ! [X279 : term > $o,X280 : term,X281 : subst] : (? [X282 : term] : (((X279 @ (sub @ X282 @ X281)) != $true) & ($true = (var @ X282))) | ((sP49 @ X279) = $true) | ((sP48 @ X279) = $true) | ($true = (X279 @ (sub @ X280 @ X281))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f67,plain,(
% 2.63/1.98    ! [X89 : term > $o] : (((sP51 @ X89) = $true) <=> ! [X94 : term,X95 : term] : (($true = (X89 @ (ap @ X94 @ X95))) | ($true != (X89 @ X94)) | ($true != (X89 @ X95))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f68,plain,(
% 2.63/1.98    ! [X89 : term > $o] : (($true = (sP52 @ X89)) <=> ! [X91 : term] : (($true = (X89 @ (lam @ X91))) | ? [X92 : term] : (($true = (X89 @ X92)) & ($true != (X89 @ (sub @ X91 @ (push @ X92 @ id)))))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f69,plain,(
% 2.63/1.98    ! [X96 : term > $o] : (($true = (sP53 @ X96)) <=> ? [X98 : term] : (! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ((X96 @ X99) != $true)) & ((X96 @ (lam @ X98)) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f70,plain,(
% 2.63/1.98    ! [X96 : term > $o] : (($true = (sP54 @ X96)) <=> ? [X100 : term,X101 : term] : (($true != (X96 @ (ap @ X100 @ X101))) & ((X96 @ X100) = $true) & ($true = (X96 @ X101))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f71,plain,(
% 2.63/1.98    ($true = sP55) <=> ! [X96 : term > $o,X97 : term] : (((X96 @ X97) = $true) | ? [X102 : term] : (($true != (X96 @ X102)) & ($true = (var @ X102))) | ($true = (sP53 @ X96)) | ($true = (sP54 @ X96)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f72,plain,(
% 2.63/1.98    ($true = sP56) <=> ? [X88 : term,X89 : term > $o,X90 : subst] : (! [X93 : term] : (($true = (X89 @ (sub @ X93 @ X90))) | ($true != (var @ X93))) & ((sP51 @ X89) = $true) & ($true = (sP52 @ X89)) & ($true != (X89 @ (sub @ X88 @ X90))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f73,plain,(
% 2.63/1.98    (sP57 = $true) <=> ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f74,plain,(
% 2.63/1.98    ($true = sP58) <=> (? [X30 : term,X31 : term,X32 : term,X33 : term] : ((X31 != X33) & ((ap @ X32 @ X33) = (ap @ X30 @ X31))) | (sP57 = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f75,plain,(
% 2.63/1.98    ! [X227 : subst > term > subst > $o] : (($true = (sP59 @ X227)) <=> ? [X229 : subst > term > term] : (((X227 @ id @ (lam @ (X229 @ sh @ one)) @ id) != $true) & ! [X233 : term] : (($true = (X227 @ id @ (X229 @ id @ X233) @ id)) | ($true != (X227 @ id @ X233 @ id))) & ! [X230 : term,X231 : subst,X232 : subst] : ((sub @ (X229 @ X231 @ X230) @ X232) = (X229 @ (comp @ X231 @ X232) @ (sub @ X230 @ X232)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f76,plain,(
% 2.63/1.98    ($true = sP60) <=> ! [X227 : subst > term > subst > $o,X228 : term] : (? [X234 : term] : (($true != (X227 @ id @ (sub @ X228 @ (push @ X234 @ id)) @ id)) & ($true = (X227 @ id @ X234 @ id))) | ($true = (sP59 @ X227)) | ((X227 @ id @ (lam @ (sub @ X228 @ (push @ one @ sh))) @ id) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f77,plain,(
% 2.63/1.98    ($true = sP61) <=> (? [X42 : subst] : ((comp @ X42 @ id) != X42) | (! [X43 : subst] : ((comp @ id @ X43) = X43) & ! [X44 : subst] : ((comp @ X44 @ id) = X44)) | ? [X41 : subst] : ((comp @ id @ X41) != X41))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f78,plain,(
% 2.63/1.98    ! [X377 : term > $o] : (((sP62 @ X377) = $true) <=> ! [X381 : term,X382 : term] : (((X377 @ X381) != $true) | ($true = (X377 @ (ap @ X382 @ X381))) | ($true != (X377 @ X382))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f79,plain,(
% 2.63/1.98    ! [X377 : term > $o] : (($true = (sP63 @ X377)) <=> ! [X378 : term] : (($true = (X377 @ X378)) | ($true != (var @ X378))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f80,plain,(
% 2.63/1.98    ! [X377 : term > $o] : (((sP64 @ X377) = $true) <=> ! [X379 : term] : (? [X380 : term] : (($true != (X377 @ (sub @ X379 @ (push @ X380 @ id)))) & ($true = (X377 @ X380))) | ($true = (X377 @ (lam @ X379)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f81,plain,(
% 2.63/1.98    ! [X413 : subst > term > subst > $o] : (((sP65 @ X413) = $true) <=> ? [X425 : subst > term > term] : (! [X426 : term] : (((X413 @ id @ X426 @ id) != $true) | ($true = (X413 @ id @ (X425 @ id @ X426) @ id))) & ($true != (X413 @ id @ (lam @ (X425 @ sh @ one)) @ id)) & ! [X427 : term,X428 : subst,X429 : subst] : ((sub @ (X425 @ X428 @ X427) @ X429) = (X425 @ (comp @ X428 @ X429) @ (sub @ X427 @ X429)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f82,plain,(
% 2.63/1.98    ! [X413 : subst > term > subst > $o] : (($true = (sP66 @ X413)) <=> ? [X418 : term,X419 : term] : (($true = (X413 @ id @ X419 @ id)) & ($true = (X413 @ id @ X418 @ id)) & ($true != (X413 @ id @ (ap @ (sub @ X419 @ id) @ X418) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f83,plain,(
% 2.63/1.98    ! [X413 : subst > term > subst > $o] : (($true = (sP67 @ X413)) <=> ? [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (($true != (X413 @ X415 @ X414 @ (comp @ X417 @ X416))) & ($true = (X413 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f84,plain,(
% 2.63/1.98    ! [X413 : subst > term > subst > $o] : (($true = (sP68 @ X413)) <=> ? [X420 : term] : (($true != (X413 @ id @ X420 @ id)) & ($true = (var @ (sub @ X420 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f85,plain,(
% 2.63/1.98    ! [X385 : subst > term > subst > $o] : (($true = (sP69 @ X385)) <=> ! [X386 : term,X387 : term] : (((X385 @ id @ (ap @ (sub @ X386 @ id) @ X387) @ id) = $true) | ($true != (X385 @ id @ X386 @ id)) | ((X385 @ id @ X387 @ id) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f86,plain,(
% 2.63/1.98    ! [X385 : subst > term > subst > $o] : (((sP70 @ X385) = $true) <=> ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true != (X385 @ X393 @ X395 @ (comp @ X394 @ X392))) | ($true = (X385 @ (comp @ X393 @ X394) @ (sub @ X395 @ X394) @ X392))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f87,plain,(
% 2.63/1.98    ! [X396 : subst > term > subst > $o] : (((sP71 @ X396) = $true) <=> ! [X407 : subst > term > term] : (? [X408 : subst,X409 : term,X410 : subst] : ((sub @ (X407 @ X410 @ X409) @ X408) != (X407 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408))) | ? [X411 : term] : (($true = (X396 @ id @ X411 @ id)) & ($true != (X396 @ id @ (X407 @ id @ X411) @ id))) | ((X396 @ id @ (lam @ (X407 @ sh @ one)) @ id) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f88,plain,(
% 2.63/1.98    ! [X396 : subst > term > subst > $o] : (($true = (sP72 @ X396)) <=> ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X396 @ (comp @ X399 @ X401) @ (sub @ X402 @ X401) @ X400)) | ($true = (X396 @ X399 @ X402 @ (comp @ X401 @ X400)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f89,plain,(
% 2.63/1.98    ! [X396 : subst > term > subst > $o,X397 : term] : (($true = (sP73 @ X397 @ X396)) <=> ! [X398 : term] : (($true != (X396 @ id @ X398 @ id)) | ($true = (X396 @ id @ (sub @ X397 @ (push @ X398 @ id)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f90,plain,(
% 2.63/1.98    ($true = sP74) <=> ! [X412 : term,X413 : subst > term > subst > $o] : (? [X421 : term,X422 : subst,X423 : subst,X424 : subst] : (($true = (X413 @ X422 @ X421 @ (comp @ X424 @ X423))) & ((X413 @ (comp @ X422 @ X424) @ (sub @ X421 @ X424) @ X423) != $true)) | ($true = (sP68 @ X413)) | ($true = (sP67 @ X413)) | ($true = (sP66 @ X413)) | ((X413 @ id @ X412 @ id) = $true) | ((sP65 @ X413) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f91,plain,(
% 2.63/1.98    ($true = sP75) <=> ? [X383 : term,X384 : term,X385 : subst > term > subst > $o] : (($true != (X385 @ id @ (ap @ X384 @ X383) @ id)) & ($true = (sP69 @ X385)) & ! [X388 : term,X389 : subst,X390 : subst,X391 : subst] : (($true = (X385 @ X391 @ X388 @ (comp @ X390 @ X389))) | ($true != (X385 @ (comp @ X391 @ X390) @ (sub @ X388 @ X390) @ X389))) & ($true = (X385 @ id @ X384 @ id)) & ((sP70 @ X385) = $true) & ($true = (X385 @ id @ X383 @ id)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f92,plain,(
% 2.63/1.98    ($true = sP76) <=> ? [X396 : subst > term > subst > $o,X397 : term] : (! [X403 : subst,X404 : term,X405 : subst,X406 : subst] : (((X396 @ (comp @ X403 @ X406) @ (sub @ X404 @ X406) @ X405) = $true) | ((X396 @ X403 @ X404 @ (comp @ X406 @ X405)) != $true)) & ((sP71 @ X396) = $true) & ($true = (sP73 @ X397 @ X396)) & ($true = (sP72 @ X396)) & ($true != (X396 @ id @ (lam @ X397) @ id)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f93,plain,(
% 2.63/1.98    ($true = sP77) <=> ? [X376 : term,X377 : term > $o] : (((sP64 @ X377) = $true) & ((sP62 @ X377) = $true) & ($true = (sP63 @ X377)) & ((X377 @ X376) != $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f94,plain,(
% 2.63/1.98    ! [X66 : subst > term > subst > $o] : (($true = (sP78 @ X66)) <=> ? [X75 : subst > term > term] : (($true != (X66 @ id @ (lam @ (X75 @ sh @ one)) @ id)) & ! [X77 : subst,X78 : subst,X79 : term] : ((X75 @ (comp @ X77 @ X78) @ (sub @ X79 @ X78)) = (sub @ (X75 @ X77 @ X79) @ X78)) & ! [X76 : term] : (((X66 @ id @ (X75 @ id @ X76) @ id) = $true) | ($true != (X66 @ id @ X76 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f95,plain,(
% 2.63/1.98    ! [X64 : term,X65 : term > $o] : (($true = (sP79 @ X65 @ X64)) <=> ? [X80 : term] : (($true != (X65 @ (sub @ X64 @ (push @ X80 @ id)))) & ($true = (X65 @ X80))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f96,plain,(
% 2.63/1.98    ! [X66 : subst > term > subst > $o] : (($true = (sP80 @ X66)) <=> ? [X67 : subst,X68 : term,X69 : subst,X70 : subst] : (((X66 @ (comp @ X70 @ X67) @ (sub @ X68 @ X67) @ X69) != $true) & ($true = (X66 @ X70 @ X68 @ (comp @ X67 @ X69)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f97,plain,(
% 2.63/1.98    ($true = sP81) <=> ! [X64 : term,X65 : term > $o,X66 : subst > term > subst > $o] : (? [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (((X66 @ X74 @ X72 @ (comp @ X71 @ X73)) != $true) & ($true = (X66 @ (comp @ X74 @ X71) @ (sub @ X72 @ X71) @ X73))) | ($true = (X65 @ (lam @ X64))) | ($true = (sP78 @ X66)) | ($true = (sP80 @ X66)) | ($true = (sP79 @ X65 @ X64)) | ? [X81 : term] : ((X66 @ id @ X81 @ id) != (X65 @ X81)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f98,plain,(
% 2.63/1.98    ! [X360 : subst > term > subst > $o] : (((sP82 @ X360) = $true) <=> ! [X362 : subst > term > term] : (($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | ? [X364 : subst,X365 : subst,X366 : term] : ((X362 @ (comp @ X364 @ X365) @ (sub @ X366 @ X365)) != (sub @ (X362 @ X364 @ X366) @ X365)) | ? [X363 : term] : (($true != (X360 @ id @ (X362 @ id @ X363) @ id)) & ((X360 @ id @ X363 @ id) = $true))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f99,plain,(
% 2.63/1.98    ! [X369 : subst > term > subst > $o] : (($true = (sP83 @ X369)) <=> ? [X371 : subst > term > term] : (($true != (X369 @ id @ (lam @ (X371 @ sh @ one)) @ id)) & ! [X375 : term] : (($true = (X369 @ id @ (X371 @ id @ X375) @ id)) | ($true != (X369 @ id @ X375 @ id))) & ! [X372 : subst,X373 : subst,X374 : term] : ((X371 @ (comp @ X373 @ X372) @ (sub @ X374 @ X372)) = (sub @ (X371 @ X373 @ X374) @ X372))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f100,plain,(
% 2.63/1.98    ($true = sP84) <=> ! [X368 : term,X369 : subst > term > subst > $o] : (($true = (X369 @ id @ (lam @ X368) @ id)) | ($true = (sP83 @ X369)) | ? [X370 : term] : (($true = (X369 @ id @ X370 @ id)) & ($true != (X369 @ id @ (sub @ X368 @ (push @ X370 @ id)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f101,plain,(
% 2.63/1.98    ($true = sP85) <=> ? [X360 : subst > term > subst > $o,X361 : term] : (($true != (X360 @ id @ (lam @ (sub @ X361 @ (push @ one @ sh))) @ id)) & ((sP82 @ X360) = $true) & ! [X367 : term] : (($true != (X360 @ id @ X367 @ id)) | ($true = (X360 @ id @ (sub @ X361 @ (push @ X367 @ id)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f102,plain,(
% 2.63/1.98    ! [X53 : subst > term > subst > $o] : (($true = (sP86 @ X53)) <=> ? [X54 : term,X55 : subst > term > term] : (($true != (X53 @ id @ (lam @ (X55 @ sh @ one)) @ id)) & ! [X59 : term] : (((X53 @ id @ X59 @ id) != $true) | ((X53 @ id @ (X55 @ id @ X59) @ id) = $true)) & ! [X60 : subst,X61 : subst,X62 : term] : ((sub @ (sub @ X54 @ (push @ X62 @ X61)) @ X60) = (sub @ (X55 @ X61 @ X62) @ X60)) & ! [X56 : subst,X57 : subst,X58 : term] : ((sub @ X54 @ (push @ (sub @ X58 @ X57) @ (comp @ X56 @ X57))) = (X55 @ (comp @ X56 @ X57) @ (sub @ X58 @ X57)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f103,plain,(
% 2.63/1.98    (sP87 = $true) <=> ! [X52 : term,X53 : subst > term > subst > $o] : (? [X63 : term] : (((X53 @ id @ (sub @ X52 @ (push @ X63 @ id)) @ id) != $true) & ((X53 @ id @ X63 @ id) = $true)) | ($true = (sP86 @ X53)) | ($true = (X53 @ id @ (lam @ (sub @ X52 @ (push @ one @ sh))) @ id)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f104,plain,(
% 2.63/1.98    ! [X287 : subst > term > subst > $o] : (($true = (sP88 @ X287)) <=> ? [X289 : subst > term > term] : (! [X290 : subst,X291 : term,X292 : subst] : ((sub @ (X289 @ X290 @ X291) @ X292) = (X289 @ (comp @ X290 @ X292) @ (sub @ X291 @ X292))) & ($true != (X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) & ! [X293 : term] : (((X287 @ id @ (X289 @ id @ X293) @ id) = $true) | ($true != (X287 @ id @ X293 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f105,plain,(
% 2.63/1.98    ! [X287 : subst > term > subst > $o] : (((sP89 @ X287) = $true) <=> ? [X299 : term,X300 : term] : (($true = (X287 @ id @ X300 @ id)) & ($true != (X287 @ id @ (ap @ (sub @ X300 @ id) @ X299) @ id)) & ($true = (X287 @ id @ X299 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f106,plain,(
% 2.63/1.98    ! [X287 : subst > term > subst > $o] : (($true = (sP90 @ X287)) <=> ? [X301 : subst,X302 : subst,X303 : subst,X304 : term] : (((X287 @ (comp @ X301 @ X303) @ (sub @ X304 @ X303) @ X302) = $true) & ($true != (X287 @ X301 @ X304 @ (comp @ X303 @ X302)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f107,plain,(
% 2.63/1.98    ! [X287 : subst > term > subst > $o] : (($true = (sP91 @ X287)) <=> ? [X295 : subst,X296 : term,X297 : subst,X298 : subst] : (($true != (X287 @ (comp @ X298 @ X295) @ (sub @ X296 @ X295) @ X297)) & ($true = (X287 @ X298 @ X296 @ (comp @ X295 @ X297)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f108,plain,(
% 2.63/1.98    ($true = sP92) <=> ! [X287 : subst > term > subst > $o,X288 : term] : (($true = (X287 @ id @ X288 @ id)) | ? [X294 : term] : (($true = (var @ (sub @ X294 @ id))) & ($true != (X287 @ id @ X294 @ id))) | ($true = (sP91 @ X287)) | ((sP89 @ X287) = $true) | ($true = (sP90 @ X287)) | ($true = (sP88 @ X287)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f109,plain,(
% 2.63/1.98    ! [X242 : term > $o] : (((sP93 @ X242) = $true) <=> ! [X244 : term,X245 : term] : (($true != (X242 @ X244)) | ($true != (X242 @ X245)) | ((X242 @ (ap @ X244 @ X245)) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f110,plain,(
% 2.63/1.98    ! [X242 : term > $o] : (($true = (sP94 @ X242)) <=> ! [X243 : term] : (((X242 @ X243) = $true) | ($true != (var @ X243))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f111,plain,(
% 2.63/1.98    ! [X248 : term > $o] : (((sP95 @ X248) = $true) <=> ? [X250 : term] : (($true != (X248 @ (lam @ X250))) & ! [X251 : term] : (($true = (X248 @ (sub @ X250 @ (push @ X251 @ id)))) | ($true != (X248 @ X251)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f112,plain,(
% 2.63/1.98    ! [X248 : term > $o] : (((sP96 @ X248) = $true) <=> ? [X252 : term,X253 : term] : (($true = (X248 @ X252)) & ($true = (X248 @ X253)) & ($true != (X248 @ (ap @ X253 @ X252)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f113,plain,(
% 2.63/1.98    ($true = sP97) <=> ! [X247 : subst,X248 : term > $o,X249 : term] : (((sP95 @ X248) = $true) | ? [X254 : term] : (($true != (X248 @ (sub @ X254 @ X247))) & ($true = (var @ X254))) | ((sP96 @ X248) = $true) | ($true = (X248 @ (sub @ X249 @ X247))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f114,plain,(
% 2.63/1.98    ($true = sP98) <=> ? [X241 : term,X242 : term > $o] : (($true != (X242 @ X241)) & ! [X246 : term] : (($true = (X242 @ (lam @ X246))) | ($true != (X242 @ X246))) & ((sP93 @ X242) = $true) & ($true = (sP94 @ X242)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f115,plain,(
% 2.63/1.98    ! [X22 : subst > term > subst > $o] : (($true = (sP99 @ X22)) <=> ? [X25 : subst > term > term] : (! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) & ! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ($true != (X22 @ id @ X29 @ id))) & ($true != (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f116,plain,(
% 2.63/1.98    ($true = sP100) <=> ! [X22 : subst > term > subst > $o,X23 : term] : (($true = (sP99 @ X22)) | ($true = (X22 @ id @ (lam @ X23) @ id)) | ? [X24 : term] : (((X22 @ id @ X24 @ id) = $true) & ($true != (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f117,plain,(
% 2.63/1.98    ! [X108 : subst > term > subst > $o] : (((sP101 @ X108) = $true) <=> ? [X114 : term,X115 : term] : (($true != (X108 @ id @ (ap @ (sub @ X114 @ id) @ X115) @ id)) & ((X108 @ id @ X115 @ id) = $true) & ($true = (X108 @ id @ X114 @ id))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f118,plain,(
% 2.63/1.98    ! [X108 : subst > term > subst > $o] : (($true = (sP102 @ X108)) <=> ? [X116 : subst,X117 : subst,X118 : subst,X119 : term] : (((X108 @ X117 @ X119 @ (comp @ X116 @ X118)) != $true) & ($true = (X108 @ (comp @ X117 @ X116) @ (sub @ X119 @ X116) @ X118))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f119,plain,(
% 2.63/1.98    ($true = sP103) <=> ! [X107 : term,X108 : subst > term > subst > $o,X109 : term] : (? [X110 : subst,X111 : subst,X112 : subst,X113 : term] : (((X108 @ X112 @ X113 @ (comp @ X111 @ X110)) = $true) & ($true != (X108 @ (comp @ X112 @ X111) @ (sub @ X113 @ X111) @ X110))) | ($true != (X108 @ id @ X107 @ id)) | ($true = (X108 @ id @ (ap @ X109 @ X107) @ id)) | ($true = (sP102 @ X108)) | ((sP101 @ X108) = $true) | ((X108 @ id @ X109 @ id) != $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f120,plain,(
% 2.63/1.98    ! [X186 : subst > term > subst > $o] : (($true = (sP104 @ X186)) <=> ! [X189 : subst > term > term] : (? [X190 : term,X191 : subst,X192 : subst] : ((sub @ (X189 @ X192 @ X190) @ X191) != (X189 @ (comp @ X192 @ X191) @ (sub @ X190 @ X191))) | ($true = (X186 @ id @ (lam @ (X189 @ sh @ one)) @ id)) | ? [X193 : term] : (((X186 @ id @ (X189 @ id @ X193) @ id) != $true) & ((X186 @ id @ X193 @ id) = $true))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f121,plain,(
% 2.63/1.98    ! [X178 : term > $o] : (($true = (sP105 @ X178)) <=> ! [X182 : term,X183 : term] : (($true != (X178 @ X183)) | ($true != (X178 @ X182)) | ($true = (X178 @ (ap @ X182 @ X183)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f122,plain,(
% 2.63/1.98    ! [X178 : term > $o] : (($true = (sP106 @ X178)) <=> ! [X179 : term] : (((X178 @ (lam @ X179)) = $true) | ? [X180 : term] : (($true != (X178 @ (sub @ X179 @ (push @ X180 @ id)))) & ((X178 @ X180) = $true))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f123,plain,(
% 2.63/1.98    ! [X196 : subst > term > subst > $o] : (((sP107 @ X196) = $true) <=> ? [X199 : subst > term > term] : (! [X200 : subst,X201 : subst,X202 : term] : ((sub @ (X199 @ X201 @ X202) @ X200) = (X199 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200))) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X203 : term] : (((X196 @ id @ (X199 @ id @ X203) @ id) = $true) | ($true != (X196 @ id @ X203 @ id)))))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f124,plain,(
% 2.63/1.98    ! [X196 : subst > term > subst > $o] : (($true = (sP108 @ X196)) <=> ? [X197 : term,X198 : term] : (((X196 @ id @ X198 @ id) = $true) & ($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ((X196 @ id @ X197 @ id) = $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f125,plain,(
% 2.63/1.98    ($true = sP109) <=> ! [X195 : term,X196 : subst > term > subst > $o] : (((sP107 @ X196) = $true) | ($true = (sP108 @ X196)) | ((X196 @ id @ X195 @ id) = $true))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f126,plain,(
% 2.63/1.98    ($true = sP110) <=> ? [X185 : term > $o,X186 : subst > term > subst > $o,X187 : term] : (! [X194 : term] : ((X186 @ id @ X194 @ id) = (X185 @ X194)) & ($true != (X185 @ (lam @ X187))) & ! [X188 : term] : (($true = (X185 @ (sub @ X187 @ (push @ X188 @ id)))) | ($true != (X185 @ X188))) & ($true = (sP104 @ X186)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f127,plain,(
% 2.63/1.98    ($true = sP111) <=> ? [X177 : term,X178 : term > $o] : (($true != (X178 @ X177)) & ($true = (sP105 @ X178)) & ! [X181 : term] : (($true = (X178 @ X181)) | ((var @ X181) != $true)) & ($true = (sP106 @ X178)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f14,plain,(
% 2.63/1.98    ((axscons = $true) <=> ! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86)) & (hoasapinj1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasapnotvar_lthm = $true) & ((! [X195 : term,X196 : subst > term > subst > $o] : (? [X199 : subst > term > term] : (! [X200 : subst,X201 : subst,X202 : term] : ((sub @ (X199 @ X201 @ X202) @ X200) = (X199 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200))) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X203 : term] : (((X196 @ id @ (X199 @ id @ X203) @ id) = $true) | ($true != (X196 @ id @ X203 @ id)))) | ? [X197 : term,X198 : term] : (((X196 @ id @ X198 @ id) = $true) & ($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ((X196 @ id @ X197 @ id) = $true)) | ((X196 @ id @ X195 @ id) = $true)) | ? [X177 : term,X178 : term > $o] : (($true != (X178 @ X177)) & ! [X182 : term,X183 : term] : (($true != (X178 @ X183)) | ($true != (X178 @ X182)) | ($true = (X178 @ (ap @ X182 @ X183)))) & ! [X181 : term] : (($true = (X178 @ X181)) | ((var @ X181) != $true)) & ! [X179 : term] : (((X178 @ (lam @ X179)) = $true) | ? [X180 : term] : (($true != (X178 @ (sub @ X179 @ (push @ X180 @ id)))) & ((X178 @ X180) = $true)))) | ? [X185 : term > $o,X186 : subst > term > subst > $o,X187 : term] : (! [X194 : term] : ((X186 @ id @ X194 @ id) = (X185 @ X194)) & ($true != (X185 @ (lam @ X187))) & ! [X188 : term] : (($true = (X185 @ (sub @ X187 @ (push @ X188 @ id)))) | ($true != (X185 @ X188))) & ! [X189 : subst > term > term] : (? [X190 : term,X191 : subst,X192 : subst] : ((sub @ (X189 @ X192 @ X190) @ X191) != (X189 @ (comp @ X192 @ X191) @ (sub @ X190 @ X191))) | ($true = (X186 @ id @ (lam @ (X189 @ sh @ one)) @ id)) | ? [X193 : term] : (((X186 @ id @ (X189 @ id @ X193) @ id) != $true) & ((X186 @ id @ X193 @ id) = $true)))) | ? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (axvarshift = $true) & (! [X107 : term,X108 : subst > term > subst > $o,X109 : term] : (? [X110 : subst,X111 : subst,X112 : subst,X113 : term] : (((X108 @ X112 @ X113 @ (comp @ X111 @ X110)) = $true) & ($true != (X108 @ (comp @ X112 @ X111) @ (sub @ X113 @ X111) @ X110))) | ($true != (X108 @ id @ X107 @ id)) | ($true = (X108 @ id @ (ap @ X109 @ X107) @ id)) | ? [X116 : subst,X117 : subst,X118 : subst,X119 : term] : (((X108 @ X117 @ X119 @ (comp @ X116 @ X118)) != $true) & ($true = (X108 @ (comp @ X117 @ X116) @ (sub @ X119 @ X116) @ X118))) | ? [X114 : term,X115 : term] : (($true != (X108 @ id @ (ap @ (sub @ X114 @ id) @ X115) @ id)) & ((X108 @ id @ X115 @ id) = $true) & ($true = (X108 @ id @ X114 @ id))) | ((X108 @ id @ X109 @ id) != $true)) <=> (hoasinduction_lem2 = $true)) & ((d2subst @ d_id) = sh) & (! [X22 : subst > term > subst > $o,X23 : term] : (? [X25 : subst > term > term] : (! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) & ! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ($true != (X22 @ id @ X29 @ id))) & ($true != (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id))) | ($true = (X22 @ id @ (lam @ X23) @ id)) | ? [X24 : term] : (((X22 @ id @ X24 @ id) = $true) & ($true != (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id)))) <=> (hoasinduction_lem3a = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) <=> (? [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) != X236) | ? [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) != X239) | ! [X247 : subst,X248 : term > $o,X249 : term] : (? [X250 : term] : (($true != (X248 @ (lam @ X250))) & ! [X251 : term] : (($true = (X248 @ (sub @ X250 @ (push @ X251 @ id)))) | ($true != (X248 @ X251)))) | ? [X254 : term] : (($true != (X248 @ (sub @ X254 @ X247))) & ($true = (var @ X254))) | ? [X252 : term,X253 : term] : (($true = (X248 @ X252)) & ($true = (X248 @ X253)) & ($true != (X248 @ (ap @ X253 @ X252)))) | ($true = (X248 @ (sub @ X249 @ X247)))) | ? [X241 : term,X242 : term > $o] : (($true != (X242 @ X241)) & ! [X246 : term] : (($true = (X242 @ (lam @ X246))) | ($true != (X242 @ X246))) & ! [X244 : term,X245 : term] : (($true != (X242 @ X244)) | ($true != (X242 @ X245)) | ((X242 @ (ap @ X244 @ X245)) = $true)) & ! [X243 : term] : (((X242 @ X243) = $true) | ($true != (var @ X243)))) | ? [X240 : subst] : ((comp @ X240 @ id) != X240))) & (hoasinduction_lem2_lthm = $true) & (hoaslamnotvar = $true) & ((pushprop_lem1_lthm = $true) <=> (? [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) != X452) | ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) | ? [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) != X454))) & (! [X287 : subst > term > subst > $o,X288 : term] : (($true = (X287 @ id @ X288 @ id)) | ? [X294 : term] : (($true = (var @ (sub @ X294 @ id))) & ($true != (X287 @ id @ X294 @ id))) | ? [X295 : subst,X296 : term,X297 : subst,X298 : subst] : (($true != (X287 @ (comp @ X298 @ X295) @ (sub @ X296 @ X295) @ X297)) & ($true = (X287 @ X298 @ X296 @ (comp @ X295 @ X297)))) | ? [X299 : term,X300 : term] : (($true = (X287 @ id @ X300 @ id)) & ($true != (X287 @ id @ (ap @ (sub @ X300 @ id) @ X299) @ id)) & ($true = (X287 @ id @ X299 @ id))) | ? [X301 : subst,X302 : subst,X303 : subst,X304 : term] : (((X287 @ (comp @ X301 @ X303) @ (sub @ X304 @ X303) @ X302) = $true) & ($true != (X287 @ X301 @ X304 @ (comp @ X303 @ X302)))) | ? [X289 : subst > term > term] : (! [X290 : subst,X291 : term,X292 : subst] : ((sub @ (X289 @ X290 @ X291) @ X292) = (X289 @ (comp @ X290 @ X292) @ (sub @ X291 @ X292))) & ($true != (X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) & ! [X293 : term] : (((X287 @ id @ (X289 @ id @ X293) @ id) = $true) | ($true != (X287 @ id @ X293 @ id))))) <=> (hoasinduction = $true)) & (hoaslamnotvar_lthm = $true) & ((shinj = $true) <=> ! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X526 : term] : ? [X527 : subst > term > term] : ((X527 @ sh @ one) = (sub @ X526 @ (push @ one @ sh)))) & ((axidr = $true) <=> ! [X529 : subst] : ((comp @ X529 @ id) = X529)) & ((hoasinduction_lem3aaa = $true) <=> ! [X52 : term,X53 : subst > term > subst > $o] : (? [X63 : term] : (((X53 @ id @ (sub @ X52 @ (push @ X63 @ id)) @ id) != $true) & ((X53 @ id @ X63 @ id) = $true)) | ? [X54 : term,X55 : subst > term > term] : (($true != (X53 @ id @ (lam @ (X55 @ sh @ one)) @ id)) & ! [X59 : term] : (((X53 @ id @ X59 @ id) != $true) | ((X53 @ id @ (X55 @ id @ X59) @ id) = $true)) & ! [X60 : subst,X61 : subst,X62 : term] : ((sub @ (sub @ X54 @ (push @ X62 @ X61)) @ X60) = (sub @ (X55 @ X61 @ X62) @ X60)) & ! [X56 : subst,X57 : subst,X58 : term] : ((sub @ X54 @ (push @ (sub @ X58 @ X57) @ (comp @ X56 @ X57))) = (X55 @ (comp @ X56 @ X57) @ (sub @ X58 @ X57)))) | ($true = (X53 @ id @ (lam @ (sub @ X52 @ (push @ one @ sh))) @ id)))) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X368 : term,X369 : subst > term > subst > $o] : (($true = (X369 @ id @ (lam @ X368) @ id)) | ? [X371 : subst > term > term] : (($true != (X369 @ id @ (lam @ (X371 @ sh @ one)) @ id)) & ! [X375 : term] : (($true = (X369 @ id @ (X371 @ id @ X375) @ id)) | ($true != (X369 @ id @ X375 @ id))) & ! [X372 : subst,X373 : subst,X374 : term] : ((X371 @ (comp @ X373 @ X372) @ (sub @ X374 @ X372)) = (sub @ (X371 @ X373 @ X374) @ X372))) | ? [X370 : term] : (($true = (X369 @ id @ X370 @ id)) & ($true != (X369 @ id @ (sub @ X368 @ (push @ X370 @ id)) @ id)))) | ? [X359 : term] : ((sub @ X359 @ id) != X359) | ? [X360 : subst > term > subst > $o,X361 : term] : (($true != (X360 @ id @ (lam @ (sub @ X361 @ (push @ one @ sh))) @ id)) & ! [X362 : subst > term > term] : (($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | ? [X364 : subst,X365 : subst,X366 : term] : ((X362 @ (comp @ X364 @ X365) @ (sub @ X366 @ X365)) != (sub @ (X362 @ X364 @ X366) @ X365)) | ? [X363 : term] : (($true != (X360 @ id @ (X362 @ id @ X363) @ id)) & ((X360 @ id @ X363 @ id) = $true))) & ! [X367 : term] : (($true != (X360 @ id @ X367 @ id)) | ($true = (X360 @ id @ (sub @ X361 @ (push @ X367 @ id)) @ id)))))) & (! [X158 : term] : ? [X159 : subst > term > term] : ((X159 @ sh @ one) = (sub @ X158 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X64 : term,X65 : term > $o,X66 : subst > term > subst > $o] : (? [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (((X66 @ X74 @ X72 @ (comp @ X71 @ X73)) != $true) & ($true = (X66 @ (comp @ X74 @ X71) @ (sub @ X72 @ X71) @ X73))) | ($true = (X65 @ (lam @ X64))) | ? [X75 : subst > term > term] : (($true != (X66 @ id @ (lam @ (X75 @ sh @ one)) @ id)) & ! [X77 : subst,X78 : subst,X79 : term] : ((X75 @ (comp @ X77 @ X78) @ (sub @ X79 @ X78)) = (sub @ (X75 @ X77 @ X79) @ X78)) & ! [X76 : term] : (((X66 @ id @ (X75 @ id @ X76) @ id) = $true) | ($true != (X66 @ id @ X76 @ id)))) | ? [X67 : subst,X68 : term,X69 : subst,X70 : subst] : (((X66 @ (comp @ X70 @ X67) @ (sub @ X68 @ X67) @ X69) != $true) & ($true = (X66 @ X70 @ X68 @ (comp @ X67 @ X69)))) | ? [X80 : term] : (($true != (X65 @ (sub @ X64 @ (push @ X80 @ id)))) & ($true = (X65 @ X80))) | ? [X81 : term] : ((X66 @ id @ X81 @ id) != (X65 @ X81))) <=> (hoasinduction_lem3v2 = $true)) & ((termmset_lthm = $true) <=> (? [X480 : term] : ((sub @ X480 @ id) != X480) | ! [X481 : term] : ((sub @ X481 @ id) = X481))) & (termmset_gthm = $true) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) <=> (hoasapinj2 = $true)) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lthm = $true) <=> (? [X396 : subst > term > subst > $o,X397 : term] : (! [X403 : subst,X404 : term,X405 : subst,X406 : subst] : (((X396 @ (comp @ X403 @ X406) @ (sub @ X404 @ X406) @ X405) = $true) | ((X396 @ X403 @ X404 @ (comp @ X406 @ X405)) != $true)) & ! [X407 : subst > term > term] : (? [X408 : subst,X409 : term,X410 : subst] : ((sub @ (X407 @ X410 @ X409) @ X408) != (X407 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408))) | ? [X411 : term] : (($true = (X396 @ id @ X411 @ id)) & ($true != (X396 @ id @ (X407 @ id @ X411) @ id))) | ((X396 @ id @ (lam @ (X407 @ sh @ one)) @ id) = $true)) & ! [X398 : term] : (($true != (X396 @ id @ X398 @ id)) | ($true = (X396 @ id @ (sub @ X397 @ (push @ X398 @ id)) @ id))) & ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X396 @ (comp @ X399 @ X401) @ (sub @ X402 @ X401) @ X400)) | ($true = (X396 @ X399 @ X402 @ (comp @ X401 @ X400)))) & ($true != (X396 @ id @ (lam @ X397) @ id))) | ? [X383 : term,X384 : term,X385 : subst > term > subst > $o] : (($true != (X385 @ id @ (ap @ X384 @ X383) @ id)) & ! [X386 : term,X387 : term] : (((X385 @ id @ (ap @ (sub @ X386 @ id) @ X387) @ id) = $true) | ($true != (X385 @ id @ X386 @ id)) | ((X385 @ id @ X387 @ id) != $true)) & ! [X388 : term,X389 : subst,X390 : subst,X391 : subst] : (($true = (X385 @ X391 @ X388 @ (comp @ X390 @ X389))) | ($true != (X385 @ (comp @ X391 @ X390) @ (sub @ X388 @ X390) @ X389))) & ($true = (X385 @ id @ X384 @ id)) & ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true != (X385 @ X393 @ X395 @ (comp @ X394 @ X392))) | ($true = (X385 @ (comp @ X393 @ X394) @ (sub @ X395 @ X394) @ X392))) & ($true = (X385 @ id @ X383 @ id))) | ! [X412 : term,X413 : subst > term > subst > $o] : (? [X421 : term,X422 : subst,X423 : subst,X424 : subst] : (($true = (X413 @ X422 @ X421 @ (comp @ X424 @ X423))) & ((X413 @ (comp @ X422 @ X424) @ (sub @ X421 @ X424) @ X423) != $true)) | ? [X420 : term] : (($true != (X413 @ id @ X420 @ id)) & ($true = (var @ (sub @ X420 @ id)))) | ? [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (($true != (X413 @ X415 @ X414 @ (comp @ X417 @ X416))) & ($true = (X413 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416))) | ? [X418 : term,X419 : term] : (($true = (X413 @ id @ X419 @ id)) & ($true = (X413 @ id @ X418 @ id)) & ($true != (X413 @ id @ (ap @ (sub @ X419 @ id) @ X418) @ id))) | ((X413 @ id @ X412 @ id) = $true) | ? [X425 : subst > term > term] : (! [X426 : term] : (((X413 @ id @ X426 @ id) != $true) | ($true = (X413 @ id @ (X425 @ id @ X426) @ id))) & ($true != (X413 @ id @ (lam @ (X425 @ sh @ one)) @ id)) & ! [X427 : term,X428 : subst,X429 : subst] : ((sub @ (X425 @ X428 @ X427) @ X429) = (X425 @ (comp @ X428 @ X429) @ (sub @ X427 @ X429))))) | ? [X376 : term,X377 : term > $o] : (! [X379 : term] : (? [X380 : term] : (($true != (X377 @ (sub @ X379 @ (push @ X380 @ id)))) & ($true = (X377 @ X380))) | ($true = (X377 @ (lam @ X379)))) & ! [X381 : term,X382 : term] : (((X377 @ X381) != $true) | ($true = (X377 @ (ap @ X382 @ X381))) | ($true != (X377 @ X382))) & ! [X378 : term] : (($true = (X377 @ X378)) | ($true != (var @ X378))) & ((X377 @ X376) != $true)))) & (lamnotap != $true) & (pushprop_lem3v2_lthm = $true) & ((? [X42 : subst] : ((comp @ X42 @ id) != X42) | (! [X43 : subst] : ((comp @ id @ X43) = X43) & ! [X44 : subst] : ((comp @ X44 @ id) = X44)) | ? [X41 : subst] : ((comp @ id @ X41) != X41)) <=> (substmonoid_lthm = $true)) & (hoasapinj2_gthm = $true) & (! [X446 : subst,X447 : term,X448 : term > $o] : ? [X449 : term > $o] : ! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446)))) <=> (pushprop_lem0_lthm = $true)) & ((axidl = $true) <=> ! [X528 : subst] : ((comp @ id @ X528) = X528)) & (! [X227 : subst > term > subst > $o,X228 : term] : (? [X234 : term] : (($true != (X227 @ id @ (sub @ X228 @ (push @ X234 @ id)) @ id)) & ($true = (X227 @ id @ X234 @ id))) | ? [X229 : subst > term > term] : (((X227 @ id @ (lam @ (X229 @ sh @ one)) @ id) != $true) & ! [X233 : term] : (($true = (X227 @ id @ (X229 @ id @ X233) @ id)) | ($true != (X227 @ id @ X233 @ id))) & ! [X230 : term,X231 : subst,X232 : subst] : ((sub @ (X229 @ X231 @ X230) @ X232) = (X229 @ (comp @ X231 @ X232) @ (sub @ X230 @ X232)))) | ((X227 @ id @ (lam @ (sub @ X228 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & ((hoasapinj2_lthm = $true) <=> (? [X30 : term,X31 : term,X32 : term,X33 : term] : ((X31 != X33) & ((ap @ X32 @ X33) = (ap @ X30 @ X31))) | ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37)))) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) <=> (substmonoid = $true)) & (axapp = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) != (d2subst @ X483)) | (X482 = X483)) & ! [X38 : d_term] : (d_one = X38) & ((induction2_lthm = $true) <=> (! [X96 : term > $o,X97 : term] : (((X96 @ X97) = $true) | ? [X102 : term] : (($true != (X96 @ X102)) & ($true = (var @ X102))) | ? [X98 : term] : (! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ((X96 @ X99) != $true)) & ((X96 @ (lam @ X98)) != $true)) | ? [X100 : term,X101 : term] : (($true != (X96 @ (ap @ X100 @ X101))) & ((X96 @ X100) = $true) & ($true = (X96 @ X101)))) | ? [X88 : term,X89 : term > $o,X90 : subst] : (! [X93 : term] : (($true = (X89 @ (sub @ X93 @ X90))) | ($true != (var @ X93))) & ! [X94 : term,X95 : term] : (($true = (X89 @ (ap @ X94 @ X95))) | ($true != (X89 @ X94)) | ($true != (X89 @ X95))) & ! [X91 : term] : (($true = (X89 @ (lam @ X91))) | ? [X92 : term] : (($true = (X89 @ X92)) & ($true != (X89 @ (sub @ X91 @ (push @ X92 @ id)))))) & ($true != (X89 @ (sub @ X88 @ X90)))) | ? [X87 : term] : ((sub @ X87 @ id) != X87))) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((laminj = $true) <=> ! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531))) & ((hoasapinj1 = $true) <=> ! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525))) & ! [X84 : d_term,X85 : d_term] : ((X84 = X85) | ((d2term @ X85) != (d2term @ X84))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X461 : subst > term > subst > $o] : ? [X462 : term > $o] : ! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X509 : term] : ? [X510 : subst > term > term] : ! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511))) & ((d2subst @ d_id) = id) & ((induction2lem = $true) <=> ! [X279 : term > $o,X280 : term,X281 : subst] : (? [X282 : term] : (((X279 @ (sub @ X282 @ X281)) != $true) & ($true = (var @ X282))) | ? [X285 : term,X286 : term] : (((X279 @ X285) = $true) & ($true = (X279 @ X286)) & ($true != (X279 @ (ap @ X286 @ X285)))) | ? [X283 : term] : (! [X284 : term] : (($true = (X279 @ (sub @ X283 @ (push @ X284 @ id)))) | ($true != (X279 @ X284))) & ($true != (X279 @ (lam @ X283)))) | ($true = (X279 @ (sub @ X280 @ X281))))) & (pushprop_lem0_gthm = $true) & ((axshiftcons = $true) <=> ! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (lamnotvar = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) <=> (apinj2 = $true)) & (! [X204 : subst > term > subst > $o,X205 : term] : (($true = (X204 @ id @ (lam @ (sub @ X205 @ (push @ one @ sh))) @ id)) | ? [X206 : subst > term > term] : (! [X207 : term] : (($true != (X204 @ id @ X207 @ id)) | ($true = (X204 @ id @ (X206 @ id @ X207) @ id))) & ($true != (X204 @ id @ (lam @ (X206 @ sh @ one)) @ id)) & ! [X208 : term,X209 : subst,X210 : subst] : ((sub @ (X206 @ X209 @ X208) @ X210) = (X206 @ (comp @ X209 @ X210) @ (sub @ X208 @ X210)))) | ? [X211 : term] : (((X204 @ id @ (sub @ X205 @ (push @ X211 @ id)) @ id) != $true) & ($true = (X204 @ id @ X211 @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (pushprop_lthm_orig = $true) & (hoaslamnotap_lthm = $true) & (axclos = $true) & ! [X235 : d_subst] : (d_id = X235) & ((axvarcons = $true) <=> ! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) <=> ! [X212 : term,X213 : subst > term > subst > $o,X214 : term > $o,X215 : term] : (? [X220 : subst,X221 : term,X222 : subst,X223 : subst] : (($true = (X213 @ X223 @ X221 @ (comp @ X220 @ X222))) & ($true != (X213 @ (comp @ X223 @ X220) @ (sub @ X221 @ X220) @ X222))) | ? [X225 : term,X226 : term] : (($true = (X213 @ id @ X225 @ id)) & ($true != (X213 @ id @ (ap @ (sub @ X226 @ id) @ X225) @ id)) & ($true = (X213 @ id @ X226 @ id))) | ? [X224 : term] : ((X214 @ X224) != (X213 @ id @ X224 @ id)) | ($true != (X214 @ X215)) | ($true = (X214 @ (ap @ X212 @ X215))) | ($true != (X214 @ X212)) | ? [X216 : subst,X217 : subst,X218 : term,X219 : subst] : (($true = (X213 @ (comp @ X216 @ X219) @ (sub @ X218 @ X219) @ X217)) & ((X213 @ X216 @ X218 @ (comp @ X219 @ X217)) != $true)))) & (hoasinduction_lem1 = $true) & ((! [X470 : term,X471 : subst > term > term,X472 : subst,X473 : subst > term > term] : (? [X477 : subst,X478 : subst,X479 : term] : ((sub @ (X473 @ X478 @ X479) @ X477) != (X473 @ (comp @ X478 @ X477) @ (sub @ X479 @ X477))) | ((X471 @ X472 @ X470) = (X473 @ X472 @ X470)) | ((lam @ (X473 @ sh @ one)) != (lam @ (X471 @ sh @ one))) | ? [X474 : term,X475 : subst,X476 : subst] : ((X471 @ (comp @ X475 @ X476) @ (sub @ X474 @ X476)) != (sub @ (X471 @ X475 @ X474) @ X476))) | ? [X466 : subst,X467 : term] : ((comp @ sh @ (push @ X467 @ X466)) != X466) | ? [X468 : term,X469 : term] : ((X468 != X469) & ((lam @ X468) = (lam @ X469))) | ? [X464 : term,X465 : subst] : ((sub @ one @ (push @ X464 @ X465)) != X464)) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem1v2 = $true) & (! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true = (X7 @ one)) | ((X9 @ X10) != $true) | ? [X11 : term] : ((X7 @ X11) != (X9 @ (sub @ X11 @ (push @ X10 @ X8))))) <=> (pushprop_lem1v2 = $true)) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) <=> (apinj1 = $true)) & ((? [X139 : term] : ((sub @ X139 @ id) != X139) | ! [X140 : subst > term > subst > $o,X141 : term > $o,X142 : term] : (($true = (X141 @ (lam @ X142))) | ? [X152 : subst > term > term] : (((X140 @ id @ (lam @ (X152 @ sh @ one)) @ id) != $true) & ! [X153 : term,X154 : subst,X155 : subst] : ((sub @ (X152 @ X154 @ X153) @ X155) = (X152 @ (comp @ X154 @ X155) @ (sub @ X153 @ X155))) & ! [X156 : term] : (($true = (X140 @ id @ (X152 @ id @ X156) @ id)) | ($true != (X140 @ id @ X156 @ id)))) | ? [X143 : term] : ((X140 @ id @ X143 @ id) != (X141 @ X143)) | ? [X144 : subst,X145 : term,X146 : subst,X147 : subst] : (($true = (X140 @ (comp @ X147 @ X144) @ (sub @ X145 @ X144) @ X146)) & ($true != (X140 @ X147 @ X145 @ (comp @ X144 @ X146)))) | ? [X157 : term] : (($true = (X141 @ X157)) & ($true != (X141 @ (sub @ X142 @ (push @ X157 @ id))))) | ? [X148 : subst,X149 : subst,X150 : term,X151 : subst] : (($true = (X140 @ X151 @ X150 @ (comp @ X149 @ X148))) & ((X140 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149) @ X148) != $true)))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) <=> (pushprop_lem1 = $true)) & ((! [X493 : term,X494 : subst > term > subst > $o] : (((X494 @ id @ (lam @ X493) @ id) = $true) | ? [X500 : term,X501 : subst,X502 : subst,X503 : subst] : (($true = (X494 @ X503 @ X500 @ (comp @ X501 @ X502))) & ($true != (X494 @ (comp @ X503 @ X501) @ (sub @ X500 @ X501) @ X502))) | ? [X499 : term] : (($true != (X494 @ id @ (sub @ X493 @ (push @ X499 @ id)) @ id)) & ($true = (X494 @ id @ X499 @ id))) | ? [X495 : term,X496 : subst,X497 : subst,X498 : subst] : (($true != (X494 @ X497 @ X495 @ (comp @ X496 @ X498))) & ($true = (X494 @ (comp @ X497 @ X496) @ (sub @ X495 @ X496) @ X498))) | ? [X504 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X504 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X504 @ X507 @ X508) @ X506)) & ($true != (X494 @ id @ (lam @ (X504 @ sh @ one)) @ id)) & ! [X505 : term] : (($true = (X494 @ id @ (X504 @ id @ X505) @ id)) | ((X494 @ id @ X505 @ id) != $true)))) | ? [X484 : term] : ((sub @ X484 @ id) != X484) | ? [X485 : subst > term > subst > $o,X486 : term] : (! [X487 : term] : (($true = (X485 @ id @ (sub @ X486 @ (push @ X487 @ id)) @ id)) | ($true != (X485 @ id @ X487 @ id))) & ($true != (X485 @ id @ (lam @ (sub @ X486 @ (push @ one @ sh))) @ id)) & ! [X488 : subst > term > term] : (? [X492 : term] : (($true = (X485 @ id @ X492 @ id)) & ($true != (X485 @ id @ (X488 @ id @ X492) @ id))) | ((X485 @ id @ (lam @ (X488 @ sh @ one)) @ id) = $true) | ? [X489 : subst,X490 : subst,X491 : term] : ((X488 @ (comp @ X489 @ X490) @ (sub @ X491 @ X490)) != (sub @ (X488 @ X489 @ X491) @ X490))))) <=> (hoasinduction_lem3_lthm = $true)) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (? [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) != (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ? [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) != (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & ((hoasinduction_lem0 = $true) <=> ! [X47 : subst > term > subst > $o] : ? [X48 : term > $o] : ! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id))) & (! [X0 : term,X1 : term > $o] : (? [X4 : term] : (! [X5 : term] : (($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))) | ($true != (X1 @ X5))) & ($true != (X1 @ (lam @ X4)))) | ((X1 @ X0) = $true) | ? [X6 : term] : (($true != (X1 @ X6)) & ((var @ X6) = $true)) | ? [X2 : term,X3 : term] : (($true = (X1 @ X3)) & ((X1 @ X2) = $true) & ((X1 @ (ap @ X3 @ X2)) != $true))) <=> (induction2 = $true)) & (substmonoid_gthm = $true) & ((hoasinduction_no_psi_cond = $true) <=> ! [X270 : subst > term > subst > $o,X271 : term] : (? [X277 : term,X278 : term] : (((X270 @ id @ (ap @ (sub @ X278 @ id) @ X277) @ id) != $true) & ($true = (X270 @ id @ X278 @ id)) & ($true = (X270 @ id @ X277 @ id))) | ? [X272 : subst > term > term] : (! [X273 : term] : (($true = (X270 @ id @ (X272 @ id @ X273) @ id)) | ($true != (X270 @ id @ X273 @ id))) & ! [X274 : subst,X275 : subst,X276 : term] : ((X272 @ (comp @ X274 @ X275) @ (sub @ X276 @ X275)) = (sub @ (X272 @ X274 @ X276) @ X275)) & ($true != (X270 @ id @ (lam @ (X272 @ sh @ one)) @ id))) | ($true = (X270 @ id @ X271 @ id)))) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & ((pushprop_lem1v2_lthm = $true) <=> (! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (? [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) != (X516 @ X519)) | ($true = (X516 @ one)) | ($true != (X517 @ X518))) | ? [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) != X514))) & (hoasinduction_lem2v2_gthm = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ? [X133 : term > $o] : ! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) <=> (pushprop_lem0 = $true)) & (pushprop_lem1v2_gthm = $true) & ((? [X305 : term] : ! [X306 : subst > term > term] : ? [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) != (X306 @ X307 @ X308)) | ? [X309 : term] : ((sub @ X309 @ id) != X309) | ! [X310 : subst > term > subst > $o,X311 : term,X312 : term > $o] : (((X312 @ (lam @ X311)) = $true) | ? [X313 : term] : (($true = (X312 @ X313)) & ($true != (X312 @ (sub @ X311 @ (push @ X313 @ id))))) | ? [X319 : term] : ((X312 @ X319) != (X310 @ id @ X319 @ id)) | ? [X314 : subst > term > term] : (((X310 @ id @ (lam @ (X314 @ sh @ one)) @ id) != $true) & ! [X316 : subst,X317 : subst,X318 : term] : ((X314 @ (comp @ X317 @ X316) @ (sub @ X318 @ X316)) = (sub @ (X314 @ X317 @ X318) @ X316)) & ! [X315 : term] : (($true = (X310 @ id @ (X314 @ id @ X315) @ id)) | ($true != (X310 @ id @ X315 @ id)))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (hoasapnotvar_gthm = $true) & (axassoc = $true) & ((hoaslamnotap = $true) <=> ! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ? [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) != (sub @ (X534 @ X537 @ X539) @ X538)))) & (pushprop_lem1_gthm = $true) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (ulamvarind = $true) & ((hoasapinj1_lthm = $true) <=> (? [X260 : term] : ((sub @ X260 @ id) != X260) | ? [X261 : term,X262 : term,X263 : term,X264 : term] : ((X261 != X264) & ((ap @ X264 @ X262) = (ap @ X261 @ X263))) | ! [X265 : term,X266 : term,X267 : term,X268 : term] : ((X266 = X267) | ((ap @ (sub @ X267 @ id) @ X265) != (ap @ (sub @ X266 @ id) @ X268))))) & ((hoasinduction_lem3v2a = $true) <=> ! [X164 : subst > term > subst > $o,X165 : term > $o,X166 : term] : (? [X167 : term] : (($true = (X165 @ X167)) & ($true != (X165 @ (sub @ X166 @ (push @ X167 @ id))))) | ? [X173 : term] : ((X165 @ X173) != (X164 @ id @ X173 @ id)) | ($true = (X165 @ (lam @ X166))) | ? [X168 : subst > term > term] : (! [X170 : subst,X171 : term,X172 : subst] : ((sub @ (X168 @ X172 @ X171) @ X170) = (X168 @ (comp @ X172 @ X170) @ (sub @ X171 @ X170))) & ! [X169 : term] : (((X164 @ id @ X169 @ id) != $true) | ((X164 @ id @ (X168 @ id @ X169) @ id) = $true)) & ($true != (X164 @ id @ (lam @ (X168 @ sh @ one)) @ id))))) & (! [X103 : term] : ? [X104 : subst > term > term] : ! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (hoasapnotvar = $true) & (axmap = $true) & ((axvarid = $true) <=> ! [X460 : term] : ((sub @ X460 @ id) = X460)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X430 : subst > term > subst > $o,X431 : term] : (? [X432 : subst,X433 : subst,X434 : subst,X435 : term] : (($true != (X430 @ (comp @ X432 @ X434) @ (sub @ X435 @ X434) @ X433)) & ($true = (X430 @ X432 @ X435 @ (comp @ X434 @ X433)))) | ? [X437 : term,X438 : subst,X439 : subst,X440 : subst] : (($true != (X430 @ X440 @ X437 @ (comp @ X439 @ X438))) & ($true = (X430 @ (comp @ X440 @ X439) @ (sub @ X437 @ X439) @ X438))) | ? [X436 : term] : (((X430 @ id @ (sub @ X431 @ (push @ X436 @ id)) @ id) != $true) & ((X430 @ id @ X436 @ id) = $true)) | ($true = (X430 @ id @ (lam @ X431) @ id)) | ? [X441 : subst > term > term] : (($true != (X430 @ id @ (lam @ (X441 @ sh @ one)) @ id)) & ! [X442 : subst,X443 : subst,X444 : term] : ((sub @ (X441 @ X443 @ X444) @ X442) = (X441 @ (comp @ X443 @ X442) @ (sub @ X444 @ X442))) & ! [X445 : term] : (($true = (X430 @ id @ (X441 @ id @ X445) @ id)) | ($true != (X430 @ id @ X445 @ id))))) <=> (hoasinduction_lem3 = $true)) & (hoaslamnotvar_gthm = $true) & (axabs = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X120 : term,X121 : term > $o] : (($true = (X121 @ X120)) | ? [X125 : term] : (((var @ X125) = $true) & ((X121 @ X125) != $true)) | ? [X122 : term,X123 : term] : (((X121 @ X122) = $true) & ($true != (X121 @ (ap @ X123 @ X122))) & ($true = (X121 @ X123))) | ? [X124 : term] : (($true != (X121 @ (lam @ X124))) & ((X121 @ X124) = $true))) <=> (induction = $true)) & ((? [X331 : subst > term > subst > $o,X332 : term,X333 : term > $o] : (((X333 @ (lam @ X332)) != $true) & ! [X340 : term] : ((X333 @ X340) = (X331 @ id @ X340 @ id)) & ! [X334 : term] : (($true != (X333 @ X334)) | ($true = (X333 @ (sub @ X332 @ (push @ X334 @ id))))) & ! [X335 : subst > term > term] : (((X331 @ id @ (lam @ (X335 @ sh @ one)) @ id) = $true) | ? [X339 : term] : (((X331 @ id @ X339 @ id) = $true) & ($true != (X331 @ id @ (X335 @ id @ X339) @ id))) | ? [X336 : subst,X337 : term,X338 : subst] : ((sub @ (X335 @ X338 @ X337) @ X336) != (X335 @ (comp @ X338 @ X336) @ (sub @ X337 @ X336))))) | ? [X330 : term] : ((sub @ X330 @ id) != X330) | ? [X323 : term > $o,X324 : term] : (! [X327 : term,X328 : term] : (($true != (X323 @ X327)) | ($true != (X323 @ X328)) | ($true = (X323 @ (ap @ X328 @ X327)))) & ! [X325 : term] : (? [X326 : term] : (($true = (X323 @ X326)) & ($true != (X323 @ (sub @ X325 @ (push @ X326 @ id))))) | ($true = (X323 @ (lam @ X325)))) & ! [X329 : term] : (($true != (var @ X329)) | ((X323 @ X329) = $true)) & ($true != (X323 @ X324))) | ! [X341 : subst > term > subst > $o,X342 : term] : (($true = (X341 @ id @ X342 @ id)) | ? [X343 : subst,X344 : subst,X345 : subst,X346 : term] : (($true != (X341 @ (comp @ X343 @ X344) @ (sub @ X346 @ X344) @ X345)) & ($true = (X341 @ X343 @ X346 @ (comp @ X344 @ X345)))) | ? [X355 : subst,X356 : subst,X357 : term,X358 : subst] : (((X341 @ X355 @ X357 @ (comp @ X358 @ X356)) != $true) & ((X341 @ (comp @ X355 @ X358) @ (sub @ X357 @ X358) @ X356) = $true)) | ? [X349 : term] : (((X341 @ id @ X349 @ id) != $true) & ($true = (var @ (sub @ X349 @ id)))) | ? [X350 : subst > term > term] : (! [X352 : subst,X353 : term,X354 : subst] : ((X350 @ (comp @ X354 @ X352) @ (sub @ X353 @ X352)) = (sub @ (X350 @ X354 @ X353) @ X352)) & ! [X351 : term] : (($true = (X341 @ id @ (X350 @ id @ X351) @ id)) | ($true != (X341 @ id @ X351 @ id))) & ($true != (X341 @ id @ (lam @ (X350 @ sh @ one)) @ id))) | ? [X347 : term,X348 : term] : (($true != (X341 @ id @ (ap @ (sub @ X348 @ id) @ X347) @ id)) & ($true = (X341 @ id @ X348 @ id)) & ($true = (X341 @ id @ X347 @ id)))) | ? [X320 : subst > term > subst > $o] : ! [X321 : term > $o] : ? [X322 : term] : ((X320 @ id @ X322 @ id) != (X321 @ X322))) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lem2v2_gthm = $true) & (induction2lem_gthm = $true) & (induction2_gthm = $true) & (one = (d2term @ d_one)) & (! [X269 : term] : ((sub @ X269 @ id) = X269) <=> (termmset = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(flattening,[status(thm)],[f13])).
% 2.63/1.98  thf(f13,plain,(
% 2.63/1.98    (hoaslamnotap_lthm = $true) & (pushprop_lem1v2_gthm = $true) & (! [X204 : subst > term > subst > $o,X205 : term] : (($true = (X204 @ id @ (lam @ (sub @ X205 @ (push @ one @ sh))) @ id)) | ? [X206 : subst > term > term] : (! [X207 : term] : (($true != (X204 @ id @ X207 @ id)) | ($true = (X204 @ id @ (X206 @ id @ X207) @ id))) & ($true != (X204 @ id @ (lam @ (X206 @ sh @ one)) @ id)) & ! [X208 : term,X209 : subst,X210 : subst] : ((sub @ (X206 @ X209 @ X208) @ X210) = (X206 @ (comp @ X209 @ X210) @ (sub @ X208 @ X210)))) | ? [X211 : term] : (((X204 @ id @ (sub @ X205 @ (push @ X211 @ id)) @ id) != $true) & ($true = (X204 @ id @ X211 @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & (axapp = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X509 : term] : ? [X510 : subst > term > term] : ! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511))) & (! [X120 : term,X121 : term > $o] : (($true = (X121 @ X120)) | ? [X125 : term] : (((var @ X125) = $true) & ((X121 @ X125) != $true)) | ? [X122 : term,X123 : term] : (((X121 @ X122) = $true) & ($true != (X121 @ (ap @ X123 @ X122))) & ($true = (X121 @ X123))) | ? [X124 : term] : (($true != (X121 @ (lam @ X124))) & ((X121 @ X124) = $true))) <=> (induction = $true)) & ((pushprop_lem1_lthm = $true) <=> ((! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456))))) | ? [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) != X454)) | ? [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) != X452))) & (pushprop_lem1_gthm = $true) & ! [X38 : d_term] : (d_one = X38) & ((((! [X412 : term,X413 : subst > term > subst > $o] : (? [X421 : term,X422 : subst,X423 : subst,X424 : subst] : (($true = (X413 @ X422 @ X421 @ (comp @ X424 @ X423))) & ((X413 @ (comp @ X422 @ X424) @ (sub @ X421 @ X424) @ X423) != $true)) | ? [X420 : term] : (($true != (X413 @ id @ X420 @ id)) & ($true = (var @ (sub @ X420 @ id)))) | ? [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (($true != (X413 @ X415 @ X414 @ (comp @ X417 @ X416))) & ($true = (X413 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416))) | ? [X418 : term,X419 : term] : (($true = (X413 @ id @ X419 @ id)) & ($true = (X413 @ id @ X418 @ id)) & ($true != (X413 @ id @ (ap @ (sub @ X419 @ id) @ X418) @ id))) | ((X413 @ id @ X412 @ id) = $true) | ? [X425 : subst > term > term] : (! [X426 : term] : (((X413 @ id @ X426 @ id) != $true) | ($true = (X413 @ id @ (X425 @ id @ X426) @ id))) & ($true != (X413 @ id @ (lam @ (X425 @ sh @ one)) @ id)) & ! [X427 : term,X428 : subst,X429 : subst] : ((sub @ (X425 @ X428 @ X427) @ X429) = (X425 @ (comp @ X428 @ X429) @ (sub @ X427 @ X429))))) | ? [X396 : subst > term > subst > $o,X397 : term] : (! [X403 : subst,X404 : term,X405 : subst,X406 : subst] : (((X396 @ (comp @ X403 @ X406) @ (sub @ X404 @ X406) @ X405) = $true) | ((X396 @ X403 @ X404 @ (comp @ X406 @ X405)) != $true)) & ! [X407 : subst > term > term] : (? [X408 : subst,X409 : term,X410 : subst] : ((sub @ (X407 @ X410 @ X409) @ X408) != (X407 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408))) | ? [X411 : term] : (($true = (X396 @ id @ X411 @ id)) & ($true != (X396 @ id @ (X407 @ id @ X411) @ id))) | ((X396 @ id @ (lam @ (X407 @ sh @ one)) @ id) = $true)) & ! [X398 : term] : (($true != (X396 @ id @ X398 @ id)) | ($true = (X396 @ id @ (sub @ X397 @ (push @ X398 @ id)) @ id))) & ! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X396 @ (comp @ X399 @ X401) @ (sub @ X402 @ X401) @ X400)) | ($true = (X396 @ X399 @ X402 @ (comp @ X401 @ X400)))) & ($true != (X396 @ id @ (lam @ X397) @ id)))) | ? [X383 : term,X384 : term,X385 : subst > term > subst > $o] : (($true != (X385 @ id @ (ap @ X384 @ X383) @ id)) & ! [X386 : term,X387 : term] : (((X385 @ id @ (ap @ (sub @ X386 @ id) @ X387) @ id) = $true) | ($true != (X385 @ id @ X386 @ id)) | ((X385 @ id @ X387 @ id) != $true)) & ! [X388 : term,X389 : subst,X390 : subst,X391 : subst] : (($true = (X385 @ X391 @ X388 @ (comp @ X390 @ X389))) | ($true != (X385 @ (comp @ X391 @ X390) @ (sub @ X388 @ X390) @ X389))) & ($true = (X385 @ id @ X384 @ id)) & ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true != (X385 @ X393 @ X395 @ (comp @ X394 @ X392))) | ($true = (X385 @ (comp @ X393 @ X394) @ (sub @ X395 @ X394) @ X392))) & ($true = (X385 @ id @ X383 @ id)))) | ? [X376 : term,X377 : term > $o] : (! [X379 : term] : (? [X380 : term] : (($true != (X377 @ (sub @ X379 @ (push @ X380 @ id)))) & ($true = (X377 @ X380))) | ($true = (X377 @ (lam @ X379)))) & ! [X381 : term,X382 : term] : (((X377 @ X381) != $true) | ($true = (X377 @ (ap @ X382 @ X381))) | ($true != (X377 @ X382))) & ! [X378 : term] : (($true = (X377 @ X378)) | ($true != (var @ X378))) & ((X377 @ X376) != $true))) <=> (hoasinduction_lthm = $true)) & (pushprop = $true) & (((! [X96 : term > $o,X97 : term] : (((X96 @ X97) = $true) | ? [X102 : term] : (($true != (X96 @ X102)) & ($true = (var @ X102))) | ? [X98 : term] : (! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ((X96 @ X99) != $true)) & ((X96 @ (lam @ X98)) != $true)) | ? [X100 : term,X101 : term] : (($true != (X96 @ (ap @ X100 @ X101))) & ((X96 @ X100) = $true) & ($true = (X96 @ X101)))) | ? [X88 : term,X89 : term > $o,X90 : subst] : (! [X93 : term] : (($true = (X89 @ (sub @ X93 @ X90))) | ($true != (var @ X93))) & ! [X94 : term,X95 : term] : (($true = (X89 @ (ap @ X94 @ X95))) | ($true != (X89 @ X94)) | ($true != (X89 @ X95))) & ! [X91 : term] : (($true = (X89 @ (lam @ X91))) | ? [X92 : term] : (($true = (X89 @ X92)) & ($true != (X89 @ (sub @ X91 @ (push @ X92 @ id)))))) & ($true != (X89 @ (sub @ X88 @ X90))))) | ? [X87 : term] : ((sub @ X87 @ id) != X87)) <=> (induction2_lthm = $true)) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) <=> (substmonoid = $true)) & ((shinj = $true) <=> ! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51))) & ((axvarid = $true) <=> ! [X460 : term] : ((sub @ X460 @ id) = X460)) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) <=> (apinj2 = $true)) & ((hoasapinj2_lthm = $true) <=> (? [X30 : term,X31 : term,X32 : term,X33 : term] : ((X31 != X33) & ((ap @ X32 @ X33) = (ap @ X30 @ X31))) | ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37)))) & (induction2lem_gthm = $true) & (pushprop_lem2v2 = $true) & (pushprop_lthm_orig = $true) & (! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (($true = (X7 @ one)) | ((X9 @ X10) != $true) | ? [X11 : term] : ((X7 @ X11) != (X9 @ (sub @ X11 @ (push @ X10 @ X8))))) <=> (pushprop_lem1v2 = $true)) & (! [X22 : subst > term > subst > $o,X23 : term] : (? [X25 : subst > term > term] : (! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) & ! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ($true != (X22 @ id @ X29 @ id))) & ($true != (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id))) | ($true = (X22 @ id @ (lam @ X23) @ id)) | ? [X24 : term] : (((X22 @ id @ X24 @ id) = $true) & ($true != (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id)))) <=> (hoasinduction_lem3a = $true)) & (hoasinduction_lem1 = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) != (d2subst @ X483)) | (X482 = X483)) & ((hoasinduction_lem3a_lthm = $true) <=> ((! [X368 : term,X369 : subst > term > subst > $o] : (($true = (X369 @ id @ (lam @ X368) @ id)) | ? [X371 : subst > term > term] : (($true != (X369 @ id @ (lam @ (X371 @ sh @ one)) @ id)) & ! [X375 : term] : (($true = (X369 @ id @ (X371 @ id @ X375) @ id)) | ($true != (X369 @ id @ X375 @ id))) & ! [X372 : subst,X373 : subst,X374 : term] : ((X371 @ (comp @ X373 @ X372) @ (sub @ X374 @ X372)) = (sub @ (X371 @ X373 @ X374) @ X372))) | ? [X370 : term] : (($true = (X369 @ id @ X370 @ id)) & ($true != (X369 @ id @ (sub @ X368 @ (push @ X370 @ id)) @ id)))) | ? [X360 : subst > term > subst > $o,X361 : term] : (($true != (X360 @ id @ (lam @ (sub @ X361 @ (push @ one @ sh))) @ id)) & ! [X362 : subst > term > term] : (($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | ? [X364 : subst,X365 : subst,X366 : term] : ((X362 @ (comp @ X364 @ X365) @ (sub @ X366 @ X365)) != (sub @ (X362 @ X364 @ X366) @ X365)) | ? [X363 : term] : (($true != (X360 @ id @ (X362 @ id @ X363) @ id)) & ((X360 @ id @ X363 @ id) = $true))) & ! [X367 : term] : (($true != (X360 @ id @ X367 @ id)) | ($true = (X360 @ id @ (sub @ X361 @ (push @ X367 @ id)) @ id))))) | ? [X359 : term] : ((sub @ X359 @ id) != X359))) & (hoasinduction_lem1v2 = $true) & (! [X0 : term,X1 : term > $o] : (? [X4 : term] : (! [X5 : term] : (($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))) | ($true != (X1 @ X5))) & ($true != (X1 @ (lam @ X4)))) | ((X1 @ X0) = $true) | ? [X6 : term] : (($true != (X1 @ X6)) & ((var @ X6) = $true)) | ? [X2 : term,X3 : term] : (($true = (X1 @ X3)) & ((X1 @ X2) = $true) & ((X1 @ (ap @ X3 @ X2)) != $true))) <=> (induction2 = $true)) & (axclos = $true) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem2v2 = $true) <=> ! [X212 : term,X213 : subst > term > subst > $o,X214 : term > $o,X215 : term] : (? [X220 : subst,X221 : term,X222 : subst,X223 : subst] : (($true = (X213 @ X223 @ X221 @ (comp @ X220 @ X222))) & ($true != (X213 @ (comp @ X223 @ X220) @ (sub @ X221 @ X220) @ X222))) | ? [X225 : term,X226 : term] : (($true = (X213 @ id @ X225 @ id)) & ($true != (X213 @ id @ (ap @ (sub @ X226 @ id) @ X225) @ id)) & ($true = (X213 @ id @ X226 @ id))) | ? [X224 : term] : ((X214 @ X224) != (X213 @ id @ X224 @ id)) | ($true != (X214 @ X215)) | ($true = (X214 @ (ap @ X212 @ X215))) | ($true != (X214 @ X212)) | ? [X216 : subst,X217 : subst,X218 : term,X219 : subst] : (($true = (X213 @ (comp @ X216 @ X219) @ (sub @ X218 @ X219) @ X217)) & ((X213 @ X216 @ X218 @ (comp @ X219 @ X217)) != $true)))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoaslamnotap = $true) <=> ! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ? [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) != (sub @ (X534 @ X537 @ X539) @ X538)))) & (! [X103 : term] : ? [X104 : subst > term > term] : ! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (axmap = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X526 : term] : ? [X527 : subst > term > term] : ((X527 @ sh @ one) = (sub @ X526 @ (push @ one @ sh)))) & (apnotvar = $true) & (axvarshift = $true) & (pushprop_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & ((hoasinduction_lem0 = $true) <=> ! [X47 : subst > term > subst > $o] : ? [X48 : term > $o] : ! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id))) & (! [X107 : term,X108 : subst > term > subst > $o,X109 : term] : (? [X110 : subst,X111 : subst,X112 : subst,X113 : term] : (((X108 @ X112 @ X113 @ (comp @ X111 @ X110)) = $true) & ($true != (X108 @ (comp @ X112 @ X111) @ (sub @ X113 @ X111) @ X110))) | ($true != (X108 @ id @ X107 @ id)) | ($true = (X108 @ id @ (ap @ X109 @ X107) @ id)) | ? [X116 : subst,X117 : subst,X118 : subst,X119 : term] : (((X108 @ X117 @ X119 @ (comp @ X116 @ X118)) != $true) & ($true = (X108 @ (comp @ X117 @ X116) @ (sub @ X119 @ X116) @ X118))) | ? [X114 : term,X115 : term] : (($true != (X108 @ id @ (ap @ (sub @ X114 @ id) @ X115) @ id)) & ((X108 @ id @ X115 @ id) = $true) & ($true = (X108 @ id @ X114 @ id))) | ((X108 @ id @ X109 @ id) != $true)) <=> (hoasinduction_lem2 = $true)) & ! [X84 : d_term,X85 : d_term] : ((X84 = X85) | ((d2term @ X85) != (d2term @ X84))) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & (! [X287 : subst > term > subst > $o,X288 : term] : (($true = (X287 @ id @ X288 @ id)) | ? [X294 : term] : (($true = (var @ (sub @ X294 @ id))) & ($true != (X287 @ id @ X294 @ id))) | ? [X295 : subst,X296 : term,X297 : subst,X298 : subst] : (($true != (X287 @ (comp @ X298 @ X295) @ (sub @ X296 @ X295) @ X297)) & ($true = (X287 @ X298 @ X296 @ (comp @ X295 @ X297)))) | ? [X299 : term,X300 : term] : (($true = (X287 @ id @ X300 @ id)) & ($true != (X287 @ id @ (ap @ (sub @ X300 @ id) @ X299) @ id)) & ($true = (X287 @ id @ X299 @ id))) | ? [X301 : subst,X302 : subst,X303 : subst,X304 : term] : (((X287 @ (comp @ X301 @ X303) @ (sub @ X304 @ X303) @ X302) = $true) & ($true != (X287 @ X301 @ X304 @ (comp @ X303 @ X302)))) | ? [X289 : subst > term > term] : (! [X290 : subst,X291 : term,X292 : subst] : ((sub @ (X289 @ X290 @ X291) @ X292) = (X289 @ (comp @ X290 @ X292) @ (sub @ X291 @ X292))) & ($true != (X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) & ! [X293 : term] : (((X287 @ id @ (X289 @ id @ X293) @ id) = $true) | ($true != (X287 @ id @ X293 @ id))))) <=> (hoasinduction = $true)) & (hoasapinj2_gthm = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((axidr = $true) <=> ! [X529 : subst] : ((comp @ X529 @ id) = X529)) & (pushprop_lem2v2_gthm = $true) & (axassoc = $true) & (hoaslamnotvar_gthm = $true) & ((substmonoid_lthm = $true) <=> (((! [X43 : subst] : ((comp @ id @ X43) = X43) & ! [X44 : subst] : ((comp @ X44 @ id) = X44)) | ? [X42 : subst] : ((comp @ X42 @ id) != X42)) | ? [X41 : subst] : ((comp @ id @ X41) != X41))) & ((axvarcons = $true) <=> ! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533)) & ((? [X139 : term] : ((sub @ X139 @ id) != X139) | ! [X140 : subst > term > subst > $o,X141 : term > $o,X142 : term] : (($true = (X141 @ (lam @ X142))) | ? [X152 : subst > term > term] : (((X140 @ id @ (lam @ (X152 @ sh @ one)) @ id) != $true) & ! [X153 : term,X154 : subst,X155 : subst] : ((sub @ (X152 @ X154 @ X153) @ X155) = (X152 @ (comp @ X154 @ X155) @ (sub @ X153 @ X155))) & ! [X156 : term] : (($true = (X140 @ id @ (X152 @ id @ X156) @ id)) | ($true != (X140 @ id @ X156 @ id)))) | ? [X143 : term] : ((X140 @ id @ X143 @ id) != (X141 @ X143)) | ? [X144 : subst,X145 : term,X146 : subst,X147 : subst] : (($true = (X140 @ (comp @ X147 @ X144) @ (sub @ X145 @ X144) @ X146)) & ($true != (X140 @ X147 @ X145 @ (comp @ X144 @ X146)))) | ? [X157 : term] : (($true = (X141 @ X157)) & ($true != (X141 @ (sub @ X142 @ (push @ X157 @ id))))) | ? [X148 : subst,X149 : subst,X150 : term,X151 : subst] : (($true = (X140 @ X151 @ X150 @ (comp @ X149 @ X148))) & ((X140 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149) @ X148) != $true)))) <=> (hoasinduction_lem3v2_lthm = $true)) & (((! [X493 : term,X494 : subst > term > subst > $o] : (((X494 @ id @ (lam @ X493) @ id) = $true) | ? [X500 : term,X501 : subst,X502 : subst,X503 : subst] : (($true = (X494 @ X503 @ X500 @ (comp @ X501 @ X502))) & ($true != (X494 @ (comp @ X503 @ X501) @ (sub @ X500 @ X501) @ X502))) | ? [X499 : term] : (($true != (X494 @ id @ (sub @ X493 @ (push @ X499 @ id)) @ id)) & ($true = (X494 @ id @ X499 @ id))) | ? [X495 : term,X496 : subst,X497 : subst,X498 : subst] : (($true != (X494 @ X497 @ X495 @ (comp @ X496 @ X498))) & ($true = (X494 @ (comp @ X497 @ X496) @ (sub @ X495 @ X496) @ X498))) | ? [X504 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X504 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X504 @ X507 @ X508) @ X506)) & ($true != (X494 @ id @ (lam @ (X504 @ sh @ one)) @ id)) & ! [X505 : term] : (($true = (X494 @ id @ (X504 @ id @ X505) @ id)) | ((X494 @ id @ X505 @ id) != $true)))) | ? [X485 : subst > term > subst > $o,X486 : term] : (! [X487 : term] : (($true = (X485 @ id @ (sub @ X486 @ (push @ X487 @ id)) @ id)) | ($true != (X485 @ id @ X487 @ id))) & ($true != (X485 @ id @ (lam @ (sub @ X486 @ (push @ one @ sh))) @ id)) & ! [X488 : subst > term > term] : (? [X492 : term] : (($true = (X485 @ id @ X492 @ id)) & ($true != (X485 @ id @ (X488 @ id @ X492) @ id))) | ((X485 @ id @ (lam @ (X488 @ sh @ one)) @ id) = $true) | ? [X489 : subst,X490 : subst,X491 : term] : ((X488 @ (comp @ X489 @ X490) @ (sub @ X491 @ X490)) != (sub @ (X488 @ X489 @ X491) @ X490))))) | ? [X484 : term] : ((sub @ X484 @ id) != X484)) <=> (hoasinduction_lem3_lthm = $true)) & ! [X235 : d_subst] : (d_id = X235) & (hoasinduction_lem2_lthm = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ? [X133 : term > $o] : ! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) <=> (pushprop_lem0 = $true)) & (one = (d2term @ d_one)) & ((hoaslaminj_lthm = $true) <=> (((! [X470 : term,X471 : subst > term > term,X472 : subst,X473 : subst > term > term] : (? [X477 : subst,X478 : subst,X479 : term] : ((sub @ (X473 @ X478 @ X479) @ X477) != (X473 @ (comp @ X478 @ X477) @ (sub @ X479 @ X477))) | ((X471 @ X472 @ X470) = (X473 @ X472 @ X470)) | ((lam @ (X473 @ sh @ one)) != (lam @ (X471 @ sh @ one))) | ? [X474 : term,X475 : subst,X476 : subst] : ((X471 @ (comp @ X475 @ X476) @ (sub @ X474 @ X476)) != (sub @ (X471 @ X475 @ X474) @ X476))) | ? [X468 : term,X469 : term] : ((X468 != X469) & ((lam @ X468) = (lam @ X469)))) | ? [X466 : subst,X467 : term] : ((comp @ sh @ (push @ X467 @ X466)) != X466)) | ? [X464 : term,X465 : subst] : ((sub @ one @ (push @ X464 @ X465)) != X464))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((axidl = $true) <=> ! [X528 : subst] : ((comp @ id @ X528) = X528)) & (! [X158 : term] : ? [X159 : subst > term > term] : ((X159 @ sh @ one) = (sub @ X158 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (hoasapnotvar_lthm = $true) & (axabs = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem3v2_lthm = $true) & (pushprop_lem2v2_lthm = $true) & ((induction2lem_lthm = $true) <=> ((((! [X247 : subst,X248 : term > $o,X249 : term] : (? [X250 : term] : (($true != (X248 @ (lam @ X250))) & ! [X251 : term] : (($true = (X248 @ (sub @ X250 @ (push @ X251 @ id)))) | ($true != (X248 @ X251)))) | ? [X254 : term] : (($true != (X248 @ (sub @ X254 @ X247))) & ($true = (var @ X254))) | ? [X252 : term,X253 : term] : (($true = (X248 @ X252)) & ($true = (X248 @ X253)) & ($true != (X248 @ (ap @ X253 @ X252)))) | ($true = (X248 @ (sub @ X249 @ X247)))) | ? [X241 : term,X242 : term > $o] : (($true != (X242 @ X241)) & ! [X246 : term] : (($true = (X242 @ (lam @ X246))) | ($true != (X242 @ X246))) & ! [X244 : term,X245 : term] : (($true != (X242 @ X244)) | ($true != (X242 @ X245)) | ((X242 @ (ap @ X244 @ X245)) = $true)) & ! [X243 : term] : (((X242 @ X243) = $true) | ($true != (var @ X243))))) | ? [X240 : subst] : ((comp @ X240 @ id) != X240)) | ? [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) != X239)) | ? [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) != X236))) & ((hoasinduction_no_psi_cond_lthm = $true) <=> ((((! [X195 : term,X196 : subst > term > subst > $o] : (? [X199 : subst > term > term] : (! [X200 : subst,X201 : subst,X202 : term] : ((sub @ (X199 @ X201 @ X202) @ X200) = (X199 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200))) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X203 : term] : (((X196 @ id @ (X199 @ id @ X203) @ id) = $true) | ($true != (X196 @ id @ X203 @ id)))) | ? [X197 : term,X198 : term] : (((X196 @ id @ X198 @ id) = $true) & ($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ((X196 @ id @ X197 @ id) = $true)) | ((X196 @ id @ X195 @ id) = $true)) | ? [X185 : term > $o,X186 : subst > term > subst > $o,X187 : term] : (! [X194 : term] : ((X186 @ id @ X194 @ id) = (X185 @ X194)) & ($true != (X185 @ (lam @ X187))) & ! [X188 : term] : (($true = (X185 @ (sub @ X187 @ (push @ X188 @ id)))) | ($true != (X185 @ X188))) & ! [X189 : subst > term > term] : (? [X190 : term,X191 : subst,X192 : subst] : ((sub @ (X189 @ X192 @ X190) @ X191) != (X189 @ (comp @ X192 @ X191) @ (sub @ X190 @ X191))) | ($true = (X186 @ id @ (lam @ (X189 @ sh @ one)) @ id)) | ? [X193 : term] : (((X186 @ id @ (X189 @ id @ X193) @ id) != $true) & ((X186 @ id @ X193 @ id) = $true))))) | ? [X184 : term] : ((sub @ X184 @ id) != X184)) | ? [X177 : term,X178 : term > $o] : (($true != (X178 @ X177)) & ! [X182 : term,X183 : term] : (($true != (X178 @ X183)) | ($true != (X178 @ X182)) | ($true = (X178 @ (ap @ X182 @ X183)))) & ! [X181 : term] : (($true = (X178 @ X181)) | ((var @ X181) != $true)) & ! [X179 : term] : (((X178 @ (lam @ X179)) = $true) | ? [X180 : term] : (($true != (X178 @ (sub @ X179 @ (push @ X180 @ id)))) & ((X178 @ X180) = $true))))) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)))) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) <=> (pushprop_lem1 = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X164 : subst > term > subst > $o,X165 : term > $o,X166 : term] : (? [X167 : term] : (($true = (X165 @ X167)) & ($true != (X165 @ (sub @ X166 @ (push @ X167 @ id))))) | ? [X173 : term] : ((X165 @ X173) != (X164 @ id @ X173 @ id)) | ($true = (X165 @ (lam @ X166))) | ? [X168 : subst > term > term] : (! [X170 : subst,X171 : term,X172 : subst] : ((sub @ (X168 @ X172 @ X171) @ X170) = (X168 @ (comp @ X172 @ X170) @ (sub @ X171 @ X170))) & ! [X169 : term] : (((X164 @ id @ X169 @ id) != $true) | ((X164 @ id @ (X168 @ id @ X169) @ id) = $true)) & ($true != (X164 @ id @ (lam @ (X168 @ sh @ one)) @ id))))) & (hoasinduction_gthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem2v2_gthm = $true) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (? [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) != (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ? [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) != (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & (hoasapnotvar = $true) & (lamnotvar = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasapinj1 = $true) <=> ! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) <=> (apinj1 = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X52 : term,X53 : subst > term > subst > $o] : (? [X63 : term] : (((X53 @ id @ (sub @ X52 @ (push @ X63 @ id)) @ id) != $true) & ((X53 @ id @ X63 @ id) = $true)) | ? [X54 : term,X55 : subst > term > term] : (($true != (X53 @ id @ (lam @ (X55 @ sh @ one)) @ id)) & ! [X59 : term] : (((X53 @ id @ X59 @ id) != $true) | ((X53 @ id @ (X55 @ id @ X59) @ id) = $true)) & ! [X60 : subst,X61 : subst,X62 : term] : ((sub @ (sub @ X54 @ (push @ X62 @ X61)) @ X60) = (sub @ (X55 @ X61 @ X62) @ X60)) & ! [X56 : subst,X57 : subst,X58 : term] : ((sub @ X54 @ (push @ (sub @ X58 @ X57) @ (comp @ X56 @ X57))) = (X55 @ (comp @ X56 @ X57) @ (sub @ X58 @ X57)))) | ($true = (X53 @ id @ (lam @ (sub @ X52 @ (push @ one @ sh))) @ id)))) & (pushprop_lthm = $true) & (hoasinduction_lem1_gthm = $true) & ((induction2lem = $true) <=> ! [X279 : term > $o,X280 : term,X281 : subst] : (? [X282 : term] : (((X279 @ (sub @ X282 @ X281)) != $true) & ($true = (var @ X282))) | ? [X285 : term,X286 : term] : (((X279 @ X285) = $true) & ($true = (X279 @ X286)) & ($true != (X279 @ (ap @ X286 @ X285)))) | ? [X283 : term] : (! [X284 : term] : (($true = (X279 @ (sub @ X283 @ (push @ X284 @ id)))) | ($true != (X279 @ X284))) & ($true != (X279 @ (lam @ X283)))) | ($true = (X279 @ (sub @ X280 @ X281))))) & (ulamvarind = $true) & (((! [X265 : term,X266 : term,X267 : term,X268 : term] : ((X266 = X267) | ((ap @ (sub @ X267 @ id) @ X265) != (ap @ (sub @ X266 @ id) @ X268))) | ? [X261 : term,X262 : term,X263 : term,X264 : term] : ((X261 != X264) & ((ap @ X264 @ X262) = (ap @ X261 @ X263)))) | ? [X260 : term] : ((sub @ X260 @ id) != X260)) <=> (hoasapinj1_lthm = $true)) & (hoasapinj1_gthm = $true) & ((axshiftcons = $true) <=> ! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45)) & ((axscons = $true) <=> ! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (? [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) != (X516 @ X519)) | ($true = (X516 @ one)) | ($true != (X517 @ X518))) | ? [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) != X514))) & (hoasinduction_lem3b_gthm = $true) & ((termmset_lthm = $true) <=> (? [X480 : term] : ((sub @ X480 @ id) != X480) | ! [X481 : term] : ((sub @ X481 @ id) = X481))) & (substmonoid_gthm = $true) & (! [X430 : subst > term > subst > $o,X431 : term] : (? [X432 : subst,X433 : subst,X434 : subst,X435 : term] : (($true != (X430 @ (comp @ X432 @ X434) @ (sub @ X435 @ X434) @ X433)) & ($true = (X430 @ X432 @ X435 @ (comp @ X434 @ X433)))) | ? [X437 : term,X438 : subst,X439 : subst,X440 : subst] : (($true != (X430 @ X440 @ X437 @ (comp @ X439 @ X438))) & ($true = (X430 @ (comp @ X440 @ X439) @ (sub @ X437 @ X439) @ X438))) | ? [X436 : term] : (((X430 @ id @ (sub @ X431 @ (push @ X436 @ id)) @ id) != $true) & ((X430 @ id @ X436 @ id) = $true)) | ($true = (X430 @ id @ (lam @ X431) @ id)) | ? [X441 : subst > term > term] : (($true != (X430 @ id @ (lam @ (X441 @ sh @ one)) @ id)) & ! [X442 : subst,X443 : subst,X444 : term] : ((sub @ (X441 @ X443 @ X444) @ X442) = (X441 @ (comp @ X443 @ X442) @ (sub @ X444 @ X442))) & ! [X445 : term] : (($true = (X430 @ id @ (X441 @ id @ X445) @ id)) | ($true != (X430 @ id @ X445 @ id))))) <=> (hoasinduction_lem3 = $true)) & (((((! [X341 : subst > term > subst > $o,X342 : term] : (($true = (X341 @ id @ X342 @ id)) | ? [X343 : subst,X344 : subst,X345 : subst,X346 : term] : (($true != (X341 @ (comp @ X343 @ X344) @ (sub @ X346 @ X344) @ X345)) & ($true = (X341 @ X343 @ X346 @ (comp @ X344 @ X345)))) | ? [X355 : subst,X356 : subst,X357 : term,X358 : subst] : (((X341 @ X355 @ X357 @ (comp @ X358 @ X356)) != $true) & ((X341 @ (comp @ X355 @ X358) @ (sub @ X357 @ X358) @ X356) = $true)) | ? [X349 : term] : (((X341 @ id @ X349 @ id) != $true) & ($true = (var @ (sub @ X349 @ id)))) | ? [X350 : subst > term > term] : (! [X352 : subst,X353 : term,X354 : subst] : ((X350 @ (comp @ X354 @ X352) @ (sub @ X353 @ X352)) = (sub @ (X350 @ X354 @ X353) @ X352)) & ! [X351 : term] : (($true = (X341 @ id @ (X350 @ id @ X351) @ id)) | ($true != (X341 @ id @ X351 @ id))) & ($true != (X341 @ id @ (lam @ (X350 @ sh @ one)) @ id))) | ? [X347 : term,X348 : term] : (($true != (X341 @ id @ (ap @ (sub @ X348 @ id) @ X347) @ id)) & ($true = (X341 @ id @ X348 @ id)) & ($true = (X341 @ id @ X347 @ id)))) | ? [X331 : subst > term > subst > $o,X332 : term,X333 : term > $o] : (((X333 @ (lam @ X332)) != $true) & ! [X340 : term] : ((X333 @ X340) = (X331 @ id @ X340 @ id)) & ! [X334 : term] : (($true != (X333 @ X334)) | ($true = (X333 @ (sub @ X332 @ (push @ X334 @ id))))) & ! [X335 : subst > term > term] : (((X331 @ id @ (lam @ (X335 @ sh @ one)) @ id) = $true) | ? [X339 : term] : (((X331 @ id @ X339 @ id) = $true) & ($true != (X331 @ id @ (X335 @ id @ X339) @ id))) | ? [X336 : subst,X337 : term,X338 : subst] : ((sub @ (X335 @ X338 @ X337) @ X336) != (X335 @ (comp @ X338 @ X336) @ (sub @ X337 @ X336)))))) | ? [X330 : term] : ((sub @ X330 @ id) != X330)) | ? [X323 : term > $o,X324 : term] : (! [X327 : term,X328 : term] : (($true != (X323 @ X327)) | ($true != (X323 @ X328)) | ($true = (X323 @ (ap @ X328 @ X327)))) & ! [X325 : term] : (? [X326 : term] : (($true = (X323 @ X326)) & ($true != (X323 @ (sub @ X325 @ (push @ X326 @ id))))) | ($true = (X323 @ (lam @ X325)))) & ! [X329 : term] : (($true != (var @ X329)) | ((X323 @ X329) = $true)) & ($true != (X323 @ X324)))) | ? [X320 : subst > term > subst > $o] : ! [X321 : term > $o] : ? [X322 : term] : ((X320 @ id @ X322 @ id) != (X321 @ X322))) <=> (hoasinduction_lthm_3 = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X461 : subst > term > subst > $o] : ? [X462 : term > $o] : ! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463))) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & (! [X446 : subst,X447 : term,X448 : term > $o] : ? [X449 : term > $o] : ! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446)))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (hoaslamnotvar_lthm = $true) & (! [X227 : subst > term > subst > $o,X228 : term] : (? [X234 : term] : (($true != (X227 @ id @ (sub @ X228 @ (push @ X234 @ id)) @ id)) & ($true = (X227 @ id @ X234 @ id))) | ? [X229 : subst > term > term] : (((X227 @ id @ (lam @ (X229 @ sh @ one)) @ id) != $true) & ! [X233 : term] : (($true = (X227 @ id @ (X229 @ id @ X233) @ id)) | ($true != (X227 @ id @ X233 @ id))) & ! [X230 : term,X231 : subst,X232 : subst] : ((sub @ (X229 @ X231 @ X230) @ X232) = (X229 @ (comp @ X231 @ X232) @ (sub @ X230 @ X232)))) | ((X227 @ id @ (lam @ (sub @ X228 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X270 : subst > term > subst > $o,X271 : term] : (? [X277 : term,X278 : term] : (((X270 @ id @ (ap @ (sub @ X278 @ id) @ X277) @ id) != $true) & ($true = (X270 @ id @ X278 @ id)) & ($true = (X270 @ id @ X277 @ id))) | ? [X272 : subst > term > term] : (! [X273 : term] : (($true = (X270 @ id @ (X272 @ id @ X273) @ id)) | ($true != (X270 @ id @ X273 @ id))) & ! [X274 : subst,X275 : subst,X276 : term] : ((X272 @ (comp @ X274 @ X275) @ (sub @ X276 @ X275)) = (sub @ (X272 @ X274 @ X276) @ X275)) & ($true != (X270 @ id @ (lam @ (X272 @ sh @ one)) @ id))) | ($true = (X270 @ id @ X271 @ id)))) & (ulamvarsh = $true) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) <=> (hoasapinj2 = $true)) & (hoaslaminj_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) <=> ((! [X310 : subst > term > subst > $o,X311 : term,X312 : term > $o] : (((X312 @ (lam @ X311)) = $true) | ? [X313 : term] : (($true = (X312 @ X313)) & ($true != (X312 @ (sub @ X311 @ (push @ X313 @ id))))) | ? [X319 : term] : ((X312 @ X319) != (X310 @ id @ X319 @ id)) | ? [X314 : subst > term > term] : (((X310 @ id @ (lam @ (X314 @ sh @ one)) @ id) != $true) & ! [X316 : subst,X317 : subst,X318 : term] : ((X314 @ (comp @ X317 @ X316) @ (sub @ X318 @ X316)) = (sub @ (X314 @ X317 @ X318) @ X316)) & ! [X315 : term] : (($true = (X310 @ id @ (X314 @ id @ X315) @ id)) | ($true != (X310 @ id @ X315 @ id))))) | ? [X309 : term] : ((sub @ X309 @ id) != X309)) | ? [X305 : term] : ! [X306 : subst > term > term] : ? [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) != (X306 @ X307 @ X308)))) & (lamnotap != $true) & ((laminj = $true) <=> ! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531))) & (termmset_gthm = $true) & ((d2subst @ d_id) = id) & (hoaslamnotap_gthm = $true) & ((d2subst @ d_id) = sh) & (! [X269 : term] : ((sub @ X269 @ id) = X269) <=> (termmset = $true)) & (! [X64 : term,X65 : term > $o,X66 : subst > term > subst > $o] : (? [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (((X66 @ X74 @ X72 @ (comp @ X71 @ X73)) != $true) & ($true = (X66 @ (comp @ X74 @ X71) @ (sub @ X72 @ X71) @ X73))) | ($true = (X65 @ (lam @ X64))) | ? [X75 : subst > term > term] : (($true != (X66 @ id @ (lam @ (X75 @ sh @ one)) @ id)) & ! [X77 : subst,X78 : subst,X79 : term] : ((X75 @ (comp @ X77 @ X78) @ (sub @ X79 @ X78)) = (sub @ (X75 @ X77 @ X79) @ X78)) & ! [X76 : term] : (((X66 @ id @ (X75 @ id @ X76) @ id) = $true) | ($true != (X66 @ id @ X76 @ id)))) | ? [X67 : subst,X68 : term,X69 : subst,X70 : subst] : (((X66 @ (comp @ X70 @ X67) @ (sub @ X68 @ X67) @ X69) != $true) & ($true = (X66 @ X70 @ X68 @ (comp @ X67 @ X69)))) | ? [X80 : term] : (($true != (X65 @ (sub @ X64 @ (push @ X80 @ id)))) & ($true = (X65 @ X80))) | ? [X81 : term] : ((X66 @ id @ X81 @ id) != (X65 @ X81))) <=> (hoasinduction_lem3v2 = $true)) & (induction2_gthm = $true)),
% 2.63/1.98    inference(ennf_transformation,[status(thm)],[f10])).
% 2.63/1.98  thf(f10,plain,(
% 2.63/1.98    (hoaslamnotap_lthm = $true) & (pushprop_lem1v2_gthm = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X204 : subst > term > subst > $o,X205 : term] : (($true = (X204 @ id @ (lam @ (sub @ X205 @ (push @ one @ sh))) @ id)) | ~! [X206 : subst > term > term] : (($true = (X204 @ id @ (lam @ (X206 @ sh @ one)) @ id)) | ~! [X208 : term,X209 : subst,X210 : subst] : ((sub @ (X206 @ X209 @ X208) @ X210) = (X206 @ (comp @ X209 @ X210) @ (sub @ X208 @ X210))) | ~! [X207 : term] : (($true != (X204 @ id @ X207 @ id)) | ($true = (X204 @ id @ (X206 @ id @ X207) @ id)))) | ~! [X211 : term] : (($true != (X204 @ id @ X211 @ id)) | ((X204 @ id @ (sub @ X205 @ (push @ X211 @ id)) @ id) = $true)))) & (axapp = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X509 : term] : ~! [X510 : subst > term > term] : ~! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511))) & (! [X120 : term,X121 : term > $o] : (~! [X125 : term] : (((var @ X125) != $true) | ((X121 @ X125) = $true)) | ~! [X124 : term] : (($true = (X121 @ (lam @ X124))) | ((X121 @ X124) != $true)) | ($true = (X121 @ X120)) | ~! [X122 : term,X123 : term] : (($true = (X121 @ (ap @ X123 @ X122))) | ((X121 @ X122) != $true) | ($true != (X121 @ X123)))) <=> (induction = $true)) & ((pushprop_lem1_lthm = $true) <=> (! [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) = X452) => (! [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) = X454) => ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true != (X455 @ X457)) | ($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456)))))))) & (pushprop_lem1_gthm = $true) & ! [X38 : d_term] : (d_one = X38) & ((! [X376 : term,X377 : term > $o] : (~! [X381 : term,X382 : term] : (((X377 @ X381) != $true) | ($true = (X377 @ (ap @ X382 @ X381))) | ($true != (X377 @ X382))) | ((X377 @ X376) = $true) | ~! [X378 : term] : (($true = (X377 @ X378)) | ($true != (var @ X378))) | ~! [X379 : term] : (($true = (X377 @ (lam @ X379))) | ~! [X380 : term] : (($true != (X377 @ X380)) | ($true = (X377 @ (sub @ X379 @ (push @ X380 @ id))))))) => (! [X383 : term,X384 : term,X385 : subst > term > subst > $o] : (($true = (X385 @ id @ (ap @ X384 @ X383) @ id)) | ($true != (X385 @ id @ X384 @ id)) | ~! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true != (X385 @ X393 @ X395 @ (comp @ X394 @ X392))) | ($true = (X385 @ (comp @ X393 @ X394) @ (sub @ X395 @ X394) @ X392))) | ~! [X386 : term,X387 : term] : (((X385 @ id @ (ap @ (sub @ X386 @ id) @ X387) @ id) = $true) | ($true != (X385 @ id @ X386 @ id)) | ((X385 @ id @ X387 @ id) != $true)) | ~! [X388 : term,X389 : subst,X390 : subst,X391 : subst] : (($true = (X385 @ X391 @ X388 @ (comp @ X390 @ X389))) | ($true != (X385 @ (comp @ X391 @ X390) @ (sub @ X388 @ X390) @ X389))) | ($true != (X385 @ id @ X383 @ id))) => (! [X396 : subst > term > subst > $o,X397 : term] : (~! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true != (X396 @ (comp @ X399 @ X401) @ (sub @ X402 @ X401) @ X400)) | ($true = (X396 @ X399 @ X402 @ (comp @ X401 @ X400)))) | ($true = (X396 @ id @ (lam @ X397) @ id)) | ~! [X403 : subst,X404 : term,X405 : subst,X406 : subst] : (((X396 @ (comp @ X403 @ X406) @ (sub @ X404 @ X406) @ X405) = $true) | ((X396 @ X403 @ X404 @ (comp @ X406 @ X405)) != $true)) | ~! [X407 : subst > term > term] : (~! [X408 : subst,X409 : term,X410 : subst] : ((sub @ (X407 @ X410 @ X409) @ X408) = (X407 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408))) | ((X396 @ id @ (lam @ (X407 @ sh @ one)) @ id) = $true) | ~! [X411 : term] : (($true = (X396 @ id @ (X407 @ id @ X411) @ id)) | ($true != (X396 @ id @ X411 @ id)))) | ~! [X398 : term] : (($true != (X396 @ id @ X398 @ id)) | ($true = (X396 @ id @ (sub @ X397 @ (push @ X398 @ id)) @ id)))) => ! [X412 : term,X413 : subst > term > subst > $o] : (~! [X425 : subst > term > term] : (~! [X426 : term] : (((X413 @ id @ X426 @ id) != $true) | ($true = (X413 @ id @ (X425 @ id @ X426) @ id))) | ~! [X427 : term,X428 : subst,X429 : subst] : ((sub @ (X425 @ X428 @ X427) @ X429) = (X425 @ (comp @ X428 @ X429) @ (sub @ X427 @ X429))) | ($true = (X413 @ id @ (lam @ (X425 @ sh @ one)) @ id))) | ~! [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (($true != (X413 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)) | ($true = (X413 @ X415 @ X414 @ (comp @ X417 @ X416)))) | ~! [X418 : term,X419 : term] : (($true != (X413 @ id @ X418 @ id)) | ($true = (X413 @ id @ (ap @ (sub @ X419 @ id) @ X418) @ id)) | ($true != (X413 @ id @ X419 @ id))) | ((X413 @ id @ X412 @ id) = $true) | ~! [X421 : term,X422 : subst,X423 : subst,X424 : subst] : (((X413 @ (comp @ X422 @ X424) @ (sub @ X421 @ X424) @ X423) = $true) | ($true != (X413 @ X422 @ X421 @ (comp @ X424 @ X423)))) | ~! [X420 : term] : (($true != (var @ (sub @ X420 @ id))) | ($true = (X413 @ id @ X420 @ id))))))) <=> (hoasinduction_lthm = $true)) & (pushprop = $true) & ((! [X87 : term] : ((sub @ X87 @ id) = X87) => (! [X88 : term,X89 : term > $o,X90 : subst] : (~! [X91 : term] : (~! [X92 : term] : (($true != (X89 @ X92)) | ($true = (X89 @ (sub @ X91 @ (push @ X92 @ id))))) | ($true = (X89 @ (lam @ X91)))) | ($true = (X89 @ (sub @ X88 @ X90))) | ~! [X93 : term] : (($true = (X89 @ (sub @ X93 @ X90))) | ($true != (var @ X93))) | ~! [X94 : term,X95 : term] : (($true = (X89 @ (ap @ X94 @ X95))) | ($true != (X89 @ X94)) | ($true != (X89 @ X95)))) => ! [X96 : term > $o,X97 : term] : (~! [X102 : term] : (($true != (var @ X102)) | ($true = (X96 @ X102))) | ~! [X98 : term] : (((X96 @ (lam @ X98)) = $true) | ~! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ((X96 @ X99) != $true))) | ((X96 @ X97) = $true) | ~! [X100 : term,X101 : term] : (($true != (X96 @ X101)) | ($true = (X96 @ (ap @ X100 @ X101))) | ((X96 @ X100) != $true))))) <=> (induction2_lthm = $true)) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) <=> (substmonoid = $true)) & ((shinj = $true) <=> ! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51))) & ((axvarid = $true) <=> ! [X460 : term] : ((sub @ X460 @ id) = X460)) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) <=> (apinj2 = $true)) & ((! [X30 : term,X31 : term,X32 : term,X33 : term] : (((ap @ X32 @ X33) != (ap @ X30 @ X31)) | (X31 = X33)) => ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37))) <=> (hoasapinj2_lthm = $true)) & (induction2lem_gthm = $true) & (pushprop_lem2v2 = $true) & (pushprop_lthm_orig = $true) & ((pushprop_lem1v2 = $true) <=> ! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (~! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8)))) | ($true = (X7 @ one)) | ((X9 @ X10) != $true))) & (! [X22 : subst > term > subst > $o,X23 : term] : (($true = (X22 @ id @ (lam @ X23) @ id)) | ~! [X24 : term] : (((X22 @ id @ X24 @ id) != $true) | ($true = (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id))) | ~! [X25 : subst > term > term] : (($true = (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id)) | ~! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) | ~! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ($true != (X22 @ id @ X29 @ id))))) <=> (hoasinduction_lem3a = $true)) & (hoasinduction_lem1 = $true) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) = (d2subst @ X483)) => (X482 = X483)) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X359 : term] : ((sub @ X359 @ id) = X359) => (! [X360 : subst > term > subst > $o,X361 : term] : (~! [X367 : term] : (($true != (X360 @ id @ X367 @ id)) | ($true = (X360 @ id @ (sub @ X361 @ (push @ X367 @ id)) @ id))) | ($true = (X360 @ id @ (lam @ (sub @ X361 @ (push @ one @ sh))) @ id)) | ~! [X362 : subst > term > term] : (($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | ~! [X363 : term] : (($true = (X360 @ id @ (X362 @ id @ X363) @ id)) | ((X360 @ id @ X363 @ id) != $true)) | ~! [X364 : subst,X365 : subst,X366 : term] : ((X362 @ (comp @ X364 @ X365) @ (sub @ X366 @ X365)) = (sub @ (X362 @ X364 @ X366) @ X365)))) => ! [X368 : term,X369 : subst > term > subst > $o] : (~! [X370 : term] : (($true = (X369 @ id @ (sub @ X368 @ (push @ X370 @ id)) @ id)) | ($true != (X369 @ id @ X370 @ id))) | ($true = (X369 @ id @ (lam @ X368) @ id)) | ~! [X371 : subst > term > term] : (~! [X372 : subst,X373 : subst,X374 : term] : ((X371 @ (comp @ X373 @ X372) @ (sub @ X374 @ X372)) = (sub @ (X371 @ X373 @ X374) @ X372)) | ($true = (X369 @ id @ (lam @ (X371 @ sh @ one)) @ id)) | ~! [X375 : term] : (($true = (X369 @ id @ (X371 @ id @ X375) @ id)) | ($true != (X369 @ id @ X375 @ id)))))))) & (hoasinduction_lem1v2 = $true) & ((induction2 = $true) <=> ! [X0 : term,X1 : term > $o] : (((X1 @ X0) = $true) | ~! [X4 : term] : (($true = (X1 @ (lam @ X4))) | ~! [X5 : term] : (($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))) | ($true != (X1 @ X5)))) | ~! [X2 : term,X3 : term] : (((X1 @ (ap @ X3 @ X2)) = $true) | ($true != (X1 @ X3)) | ((X1 @ X2) != $true)) | ~! [X6 : term] : (((var @ X6) != $true) | ($true = (X1 @ X6))))) & (axclos = $true) & (pushprop_lem3v2 = $true) & (! [X212 : term,X213 : subst > term > subst > $o,X214 : term > $o,X215 : term] : (($true != (X214 @ X215)) | ~! [X225 : term,X226 : term] : (($true != (X213 @ id @ X226 @ id)) | ($true != (X213 @ id @ X225 @ id)) | ($true = (X213 @ id @ (ap @ (sub @ X226 @ id) @ X225) @ id))) | ~! [X220 : subst,X221 : term,X222 : subst,X223 : subst] : (($true != (X213 @ X223 @ X221 @ (comp @ X220 @ X222))) | ($true = (X213 @ (comp @ X223 @ X220) @ (sub @ X221 @ X220) @ X222))) | ($true = (X214 @ (ap @ X212 @ X215))) | ~! [X216 : subst,X217 : subst,X218 : term,X219 : subst] : (((X213 @ X216 @ X218 @ (comp @ X219 @ X217)) = $true) | ($true != (X213 @ (comp @ X216 @ X219) @ (sub @ X218 @ X219) @ X217))) | ~! [X224 : term] : ((X214 @ X224) = (X213 @ id @ X224 @ id)) | ($true != (X214 @ X212))) <=> (hoasinduction_lem2v2 = $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoaslamnotap = $true) <=> ! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ~! [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) = (sub @ (X534 @ X537 @ X539) @ X538)))) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X103 : term] : ~! [X104 : subst > term > term] : ~! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106)))) & (axmap = $true) & (! [X526 : term] : ~! [X527 : subst > term > term] : ((X527 @ sh @ one) != (sub @ X526 @ (push @ one @ sh))) <=> (hoasinduction_lem3b_lthm = $true)) & (apnotvar = $true) & (axvarshift = $true) & (pushprop_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (! [X47 : subst > term > subst > $o] : ~! [X48 : term > $o] : ~! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id)) <=> (hoasinduction_lem0 = $true)) & ((hoasinduction_lem2 = $true) <=> ! [X107 : term,X108 : subst > term > subst > $o,X109 : term] : (($true != (X108 @ id @ X107 @ id)) | ~! [X114 : term,X115 : term] : (($true != (X108 @ id @ X114 @ id)) | ((X108 @ id @ X115 @ id) != $true) | ($true = (X108 @ id @ (ap @ (sub @ X114 @ id) @ X115) @ id))) | ((X108 @ id @ X109 @ id) != $true) | ~! [X116 : subst,X117 : subst,X118 : subst,X119 : term] : (((X108 @ X117 @ X119 @ (comp @ X116 @ X118)) = $true) | ($true != (X108 @ (comp @ X117 @ X116) @ (sub @ X119 @ X116) @ X118))) | ($true = (X108 @ id @ (ap @ X109 @ X107) @ id)) | ~! [X110 : subst,X111 : subst,X112 : subst,X113 : term] : (((X108 @ X112 @ X113 @ (comp @ X111 @ X110)) != $true) | ($true = (X108 @ (comp @ X112 @ X111) @ (sub @ X113 @ X111) @ X110))))) & ! [X84 : d_term,X85 : d_term] : (((d2term @ X85) = (d2term @ X84)) => (X84 = X85)) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction = $true) <=> ! [X287 : subst > term > subst > $o,X288 : term] : (($true = (X287 @ id @ X288 @ id)) | ~! [X294 : term] : (($true = (X287 @ id @ X294 @ id)) | ($true != (var @ (sub @ X294 @ id)))) | ~! [X301 : subst,X302 : subst,X303 : subst,X304 : term] : (((X287 @ (comp @ X301 @ X303) @ (sub @ X304 @ X303) @ X302) != $true) | ($true = (X287 @ X301 @ X304 @ (comp @ X303 @ X302)))) | ~! [X299 : term,X300 : term] : (($true != (X287 @ id @ X300 @ id)) | ($true = (X287 @ id @ (ap @ (sub @ X300 @ id) @ X299) @ id)) | ($true != (X287 @ id @ X299 @ id))) | ~! [X289 : subst > term > term] : (~! [X293 : term] : (((X287 @ id @ (X289 @ id @ X293) @ id) = $true) | ($true != (X287 @ id @ X293 @ id))) | ($true = (X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) | ~! [X290 : subst,X291 : term,X292 : subst] : ((sub @ (X289 @ X290 @ X291) @ X292) = (X289 @ (comp @ X290 @ X292) @ (sub @ X291 @ X292)))) | ~! [X295 : subst,X296 : term,X297 : subst,X298 : subst] : (($true != (X287 @ X298 @ X296 @ (comp @ X295 @ X297))) | ($true = (X287 @ (comp @ X298 @ X295) @ (sub @ X296 @ X295) @ X297))))) & (hoasapinj2_gthm = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((axidr = $true) <=> ! [X529 : subst] : ((comp @ X529 @ id) = X529)) & (pushprop_lem2v2_gthm = $true) & (axassoc = $true) & (hoaslamnotvar_gthm = $true) & ((substmonoid_lthm = $true) <=> (! [X41 : subst] : ((comp @ id @ X41) = X41) => (! [X42 : subst] : ((comp @ X42 @ id) = X42) => (! [X43 : subst] : ((comp @ id @ X43) = X43) & ! [X44 : subst] : ((comp @ X44 @ id) = X44))))) & ((axvarcons = $true) <=> ! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533)) & ((! [X139 : term] : ((sub @ X139 @ id) = X139) => ! [X140 : subst > term > subst > $o,X141 : term > $o,X142 : term] : (($true = (X141 @ (lam @ X142))) | ~! [X152 : subst > term > term] : (~! [X156 : term] : (($true = (X140 @ id @ (X152 @ id @ X156) @ id)) | ($true != (X140 @ id @ X156 @ id))) | ((X140 @ id @ (lam @ (X152 @ sh @ one)) @ id) = $true) | ~! [X153 : term,X154 : subst,X155 : subst] : ((sub @ (X152 @ X154 @ X153) @ X155) = (X152 @ (comp @ X154 @ X155) @ (sub @ X153 @ X155)))) | ~! [X157 : term] : (($true != (X141 @ X157)) | ($true = (X141 @ (sub @ X142 @ (push @ X157 @ id))))) | ~! [X143 : term] : ((X140 @ id @ X143 @ id) = (X141 @ X143)) | ~! [X144 : subst,X145 : term,X146 : subst,X147 : subst] : (($true != (X140 @ (comp @ X147 @ X144) @ (sub @ X145 @ X144) @ X146)) | ($true = (X140 @ X147 @ X145 @ (comp @ X144 @ X146)))) | ~! [X148 : subst,X149 : subst,X150 : term,X151 : subst] : (((X140 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149) @ X148) = $true) | ($true != (X140 @ X151 @ X150 @ (comp @ X149 @ X148)))))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((! [X484 : term] : ((sub @ X484 @ id) = X484) => (! [X485 : subst > term > subst > $o,X486 : term] : (($true = (X485 @ id @ (lam @ (sub @ X486 @ (push @ one @ sh))) @ id)) | ~! [X488 : subst > term > term] : (~! [X489 : subst,X490 : subst,X491 : term] : ((X488 @ (comp @ X489 @ X490) @ (sub @ X491 @ X490)) = (sub @ (X488 @ X489 @ X491) @ X490)) | ((X485 @ id @ (lam @ (X488 @ sh @ one)) @ id) = $true) | ~! [X492 : term] : (($true != (X485 @ id @ X492 @ id)) | ($true = (X485 @ id @ (X488 @ id @ X492) @ id)))) | ~! [X487 : term] : (($true = (X485 @ id @ (sub @ X486 @ (push @ X487 @ id)) @ id)) | ($true != (X485 @ id @ X487 @ id)))) => ! [X493 : term,X494 : subst > term > subst > $o] : (~! [X495 : term,X496 : subst,X497 : subst,X498 : subst] : (($true != (X494 @ (comp @ X497 @ X496) @ (sub @ X495 @ X496) @ X498)) | ($true = (X494 @ X497 @ X495 @ (comp @ X496 @ X498)))) | ~! [X500 : term,X501 : subst,X502 : subst,X503 : subst] : (($true = (X494 @ (comp @ X503 @ X501) @ (sub @ X500 @ X501) @ X502)) | ($true != (X494 @ X503 @ X500 @ (comp @ X501 @ X502)))) | ~! [X504 : subst > term > term] : (($true = (X494 @ id @ (lam @ (X504 @ sh @ one)) @ id)) | ~! [X505 : term] : (($true = (X494 @ id @ (X504 @ id @ X505) @ id)) | ((X494 @ id @ X505 @ id) != $true)) | ~! [X506 : subst,X507 : subst,X508 : term] : ((X504 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X504 @ X507 @ X508) @ X506))) | ~! [X499 : term] : (($true = (X494 @ id @ (sub @ X493 @ (push @ X499 @ id)) @ id)) | ($true != (X494 @ id @ X499 @ id))) | ((X494 @ id @ (lam @ X493) @ id) = $true)))) <=> (hoasinduction_lem3_lthm = $true)) & ! [X235 : d_subst] : (d_id = X235) & (hoasinduction_lem2_lthm = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ~! [X133 : term > $o] : ~! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) <=> (pushprop_lem0 = $true)) & (one = (d2term @ d_one)) & ((hoaslaminj_lthm = $true) <=> (! [X464 : term,X465 : subst] : ((sub @ one @ (push @ X464 @ X465)) = X464) => (! [X466 : subst,X467 : term] : ((comp @ sh @ (push @ X467 @ X466)) = X466) => (! [X468 : term,X469 : term] : (((lam @ X468) != (lam @ X469)) | (X468 = X469)) => ! [X470 : term,X471 : subst > term > term,X472 : subst,X473 : subst > term > term] : (((X471 @ X472 @ X470) = (X473 @ X472 @ X470)) | ((lam @ (X473 @ sh @ one)) != (lam @ (X471 @ sh @ one))) | ~! [X474 : term,X475 : subst,X476 : subst] : ((X471 @ (comp @ X475 @ X476) @ (sub @ X474 @ X476)) = (sub @ (X471 @ X475 @ X474) @ X476)) | ~! [X477 : subst,X478 : subst,X479 : term] : ((sub @ (X473 @ X478 @ X479) @ X477) = (X473 @ (comp @ X478 @ X477) @ (sub @ X479 @ X477)))))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((axidl = $true) <=> ! [X528 : subst] : ((comp @ id @ X528) = X528)) & ((hoasinduction_lem3b = $true) <=> ! [X158 : term] : ~! [X159 : subst > term > term] : ((X159 @ sh @ one) != (sub @ X158 @ (push @ one @ sh)))) & (hoasapnotvar_lthm = $true) & (axabs = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem3v2_lthm = $true) & (pushprop_lem2v2_lthm = $true) & ((induction2lem_lthm = $true) <=> (! [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) = X236) => (! [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) = X239) => (! [X240 : subst] : ((comp @ X240 @ id) = X240) => (! [X241 : term,X242 : term > $o] : (~! [X243 : term] : (((X242 @ X243) = $true) | ($true != (var @ X243))) | ~! [X244 : term,X245 : term] : (($true != (X242 @ X244)) | ($true != (X242 @ X245)) | ((X242 @ (ap @ X244 @ X245)) = $true)) | ~! [X246 : term] : (($true = (X242 @ (lam @ X246))) | ($true != (X242 @ X246))) | ($true = (X242 @ X241))) => ! [X247 : subst,X248 : term > $o,X249 : term] : (~! [X254 : term] : (($true != (var @ X254)) | ($true = (X248 @ (sub @ X254 @ X247)))) | ~! [X250 : term] : (($true = (X248 @ (lam @ X250))) | ~! [X251 : term] : (($true = (X248 @ (sub @ X250 @ (push @ X251 @ id)))) | ($true != (X248 @ X251)))) | ~! [X252 : term,X253 : term] : (($true != (X248 @ X252)) | ($true = (X248 @ (ap @ X253 @ X252))) | ($true != (X248 @ X253))) | ($true = (X248 @ (sub @ X249 @ X247))))))))) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X174 : subst > term > subst > $o] : ~! [X175 : term > $o] : ~! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) => (! [X177 : term,X178 : term > $o] : (~! [X182 : term,X183 : term] : (($true != (X178 @ X183)) | ($true != (X178 @ X182)) | ($true = (X178 @ (ap @ X182 @ X183)))) | ($true = (X178 @ X177)) | ~! [X181 : term] : (($true = (X178 @ X181)) | ((var @ X181) != $true)) | ~! [X179 : term] : (((X178 @ (lam @ X179)) = $true) | ~! [X180 : term] : (($true = (X178 @ (sub @ X179 @ (push @ X180 @ id)))) | ((X178 @ X180) != $true)))) => (! [X184 : term] : ((sub @ X184 @ id) = X184) => (! [X185 : term > $o,X186 : subst > term > subst > $o,X187 : term] : (~! [X194 : term] : ((X186 @ id @ X194 @ id) = (X185 @ X194)) | ~! [X188 : term] : (($true = (X185 @ (sub @ X187 @ (push @ X188 @ id)))) | ($true != (X185 @ X188))) | ($true = (X185 @ (lam @ X187))) | ~! [X189 : subst > term > term] : (~! [X190 : term,X191 : subst,X192 : subst] : ((sub @ (X189 @ X192 @ X190) @ X191) = (X189 @ (comp @ X192 @ X191) @ (sub @ X190 @ X191))) | ~! [X193 : term] : (((X186 @ id @ (X189 @ id @ X193) @ id) = $true) | ((X186 @ id @ X193 @ id) != $true)) | ($true = (X186 @ id @ (lam @ (X189 @ sh @ one)) @ id)))) => ! [X195 : term,X196 : subst > term > subst > $o] : (((X196 @ id @ X195 @ id) = $true) | ~! [X197 : term,X198 : term] : (((X196 @ id @ X197 @ id) != $true) | ($true = (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) | ((X196 @ id @ X198 @ id) != $true)) | ~! [X199 : subst > term > term] : (~! [X200 : subst,X201 : subst,X202 : term] : ((sub @ (X199 @ X201 @ X202) @ X200) = (X199 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200))) | ~! [X203 : term] : (((X196 @ id @ (X199 @ id @ X203) @ id) = $true) | ($true != (X196 @ id @ X203 @ id))) | ($true = (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id))))))))) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true != (X255 @ X258)) | ($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256))))) <=> (pushprop_lem1 = $true)) & (! [X164 : subst > term > subst > $o,X165 : term > $o,X166 : term] : (~! [X167 : term] : (($true != (X165 @ X167)) | ($true = (X165 @ (sub @ X166 @ (push @ X167 @ id))))) | ~! [X168 : subst > term > term] : (~! [X169 : term] : (((X164 @ id @ X169 @ id) != $true) | ((X164 @ id @ (X168 @ id @ X169) @ id) = $true)) | ~! [X170 : subst,X171 : term,X172 : subst] : ((sub @ (X168 @ X172 @ X171) @ X170) = (X168 @ (comp @ X172 @ X170) @ (sub @ X171 @ X170))) | ($true = (X164 @ id @ (lam @ (X168 @ sh @ one)) @ id))) | ($true = (X165 @ (lam @ X166))) | ~! [X173 : term] : ((X165 @ X173) = (X164 @ id @ X173 @ id))) <=> (hoasinduction_lem3v2a = $true)) & (hoasinduction_gthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem2v2_gthm = $true) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (~! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ~! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & (hoasapnotvar = $true) & (lamnotvar = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasapinj1 = $true) <=> ! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) <=> (apinj1 = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X52 : term,X53 : subst > term > subst > $o] : (~! [X54 : term,X55 : subst > term > term] : (~! [X56 : subst,X57 : subst,X58 : term] : ((sub @ X54 @ (push @ (sub @ X58 @ X57) @ (comp @ X56 @ X57))) = (X55 @ (comp @ X56 @ X57) @ (sub @ X58 @ X57))) | ($true = (X53 @ id @ (lam @ (X55 @ sh @ one)) @ id)) | ~! [X60 : subst,X61 : subst,X62 : term] : ((sub @ (sub @ X54 @ (push @ X62 @ X61)) @ X60) = (sub @ (X55 @ X61 @ X62) @ X60)) | ~! [X59 : term] : (((X53 @ id @ X59 @ id) != $true) | ((X53 @ id @ (X55 @ id @ X59) @ id) = $true))) | ~! [X63 : term] : (((X53 @ id @ X63 @ id) != $true) | ((X53 @ id @ (sub @ X52 @ (push @ X63 @ id)) @ id) = $true)) | ($true = (X53 @ id @ (lam @ (sub @ X52 @ (push @ one @ sh))) @ id)))) & (pushprop_lthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X279 : term > $o,X280 : term,X281 : subst] : (~! [X282 : term] : (((X279 @ (sub @ X282 @ X281)) = $true) | ($true != (var @ X282))) | ~! [X283 : term] : (($true = (X279 @ (lam @ X283))) | ~! [X284 : term] : (($true = (X279 @ (sub @ X283 @ (push @ X284 @ id)))) | ($true != (X279 @ X284)))) | ~! [X285 : term,X286 : term] : (($true != (X279 @ X286)) | ((X279 @ X285) != $true) | ($true = (X279 @ (ap @ X286 @ X285)))) | ($true = (X279 @ (sub @ X280 @ X281)))) <=> (induction2lem = $true)) & (ulamvarind = $true) & ((! [X260 : term] : ((sub @ X260 @ id) = X260) => (! [X261 : term,X262 : term,X263 : term,X264 : term] : ((X261 = X264) | ((ap @ X264 @ X262) != (ap @ X261 @ X263))) => ! [X265 : term,X266 : term,X267 : term,X268 : term] : ((X266 = X267) | ((ap @ (sub @ X267 @ id) @ X265) != (ap @ (sub @ X266 @ id) @ X268))))) <=> (hoasapinj1_lthm = $true)) & (hoasapinj1_gthm = $true) & ((axshiftcons = $true) <=> ! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45)) & ((axscons = $true) <=> ! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86)) & ((! [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) = X514) => ! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (($true = (X516 @ one)) | ~! [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) = (X516 @ X519)) | ($true != (X517 @ X518)))) <=> (pushprop_lem1v2_lthm = $true)) & (hoasinduction_lem3b_gthm = $true) & ((termmset_lthm = $true) <=> (! [X480 : term] : ((sub @ X480 @ id) = X480) => ! [X481 : term] : ((sub @ X481 @ id) = X481))) & (substmonoid_gthm = $true) & ((hoasinduction_lem3 = $true) <=> ! [X430 : subst > term > subst > $o,X431 : term] : (~! [X437 : term,X438 : subst,X439 : subst,X440 : subst] : (($true = (X430 @ X440 @ X437 @ (comp @ X439 @ X438))) | ($true != (X430 @ (comp @ X440 @ X439) @ (sub @ X437 @ X439) @ X438))) | ($true = (X430 @ id @ (lam @ X431) @ id)) | ~! [X432 : subst,X433 : subst,X434 : subst,X435 : term] : (($true = (X430 @ (comp @ X432 @ X434) @ (sub @ X435 @ X434) @ X433)) | ($true != (X430 @ X432 @ X435 @ (comp @ X434 @ X433)))) | ~! [X436 : term] : (((X430 @ id @ X436 @ id) != $true) | ((X430 @ id @ (sub @ X431 @ (push @ X436 @ id)) @ id) = $true)) | ~! [X441 : subst > term > term] : (~! [X445 : term] : (($true = (X430 @ id @ (X441 @ id @ X445) @ id)) | ($true != (X430 @ id @ X445 @ id))) | ($true = (X430 @ id @ (lam @ (X441 @ sh @ one)) @ id)) | ~! [X442 : subst,X443 : subst,X444 : term] : ((sub @ (X441 @ X443 @ X444) @ X442) = (X441 @ (comp @ X443 @ X442) @ (sub @ X444 @ X442)))))) & ((! [X320 : subst > term > subst > $o] : ~! [X321 : term > $o] : ~! [X322 : term] : ((X320 @ id @ X322 @ id) = (X321 @ X322)) => (! [X323 : term > $o,X324 : term] : (~! [X327 : term,X328 : term] : (($true != (X323 @ X327)) | ($true != (X323 @ X328)) | ($true = (X323 @ (ap @ X328 @ X327)))) | ($true = (X323 @ X324)) | ~! [X325 : term] : (~! [X326 : term] : (($true = (X323 @ (sub @ X325 @ (push @ X326 @ id)))) | ($true != (X323 @ X326))) | ($true = (X323 @ (lam @ X325)))) | ~! [X329 : term] : (($true != (var @ X329)) | ((X323 @ X329) = $true))) => (! [X330 : term] : ((sub @ X330 @ id) = X330) => (! [X331 : subst > term > subst > $o,X332 : term,X333 : term > $o] : (~! [X334 : term] : (($true != (X333 @ X334)) | ($true = (X333 @ (sub @ X332 @ (push @ X334 @ id))))) | ((X333 @ (lam @ X332)) = $true) | ~! [X335 : subst > term > term] : (~! [X339 : term] : (((X331 @ id @ X339 @ id) != $true) | ($true = (X331 @ id @ (X335 @ id @ X339) @ id))) | ((X331 @ id @ (lam @ (X335 @ sh @ one)) @ id) = $true) | ~! [X336 : subst,X337 : term,X338 : subst] : ((sub @ (X335 @ X338 @ X337) @ X336) = (X335 @ (comp @ X338 @ X336) @ (sub @ X337 @ X336)))) | ~! [X340 : term] : ((X333 @ X340) = (X331 @ id @ X340 @ id))) => ! [X341 : subst > term > subst > $o,X342 : term] : (($true = (X341 @ id @ X342 @ id)) | ~! [X349 : term] : (((X341 @ id @ X349 @ id) = $true) | ($true != (var @ (sub @ X349 @ id)))) | ~! [X343 : subst,X344 : subst,X345 : subst,X346 : term] : (($true = (X341 @ (comp @ X343 @ X344) @ (sub @ X346 @ X344) @ X345)) | ($true != (X341 @ X343 @ X346 @ (comp @ X344 @ X345)))) | ~! [X355 : subst,X356 : subst,X357 : term,X358 : subst] : (((X341 @ X355 @ X357 @ (comp @ X358 @ X356)) = $true) | ((X341 @ (comp @ X355 @ X358) @ (sub @ X357 @ X358) @ X356) != $true)) | ~! [X350 : subst > term > term] : (~! [X352 : subst,X353 : term,X354 : subst] : ((X350 @ (comp @ X354 @ X352) @ (sub @ X353 @ X352)) = (sub @ (X350 @ X354 @ X353) @ X352)) | ($true = (X341 @ id @ (lam @ (X350 @ sh @ one)) @ id)) | ~! [X351 : term] : (($true = (X341 @ id @ (X350 @ id @ X351) @ id)) | ($true != (X341 @ id @ X351 @ id)))) | ~! [X347 : term,X348 : term] : (($true = (X341 @ id @ (ap @ (sub @ X348 @ id) @ X347) @ id)) | ($true != (X341 @ id @ X348 @ id)) | ($true != (X341 @ id @ X347 @ id)))))))) <=> (hoasinduction_lthm_3 = $true)) & (! [X461 : subst > term > subst > $o] : ~! [X462 : term > $o] : ~! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463)) <=> (hoasinduction_lem0_lthm = $true)) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & ((pushprop_lem0_lthm = $true) <=> ! [X446 : subst,X447 : term,X448 : term > $o] : ~! [X449 : term > $o] : ~! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446))))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3aa = $true) <=> ! [X227 : subst > term > subst > $o,X228 : term] : (~! [X229 : subst > term > term] : (~! [X233 : term] : (($true = (X227 @ id @ (X229 @ id @ X233) @ id)) | ($true != (X227 @ id @ X233 @ id))) | ~! [X230 : term,X231 : subst,X232 : subst] : ((sub @ (X229 @ X231 @ X230) @ X232) = (X229 @ (comp @ X231 @ X232) @ (sub @ X230 @ X232))) | ((X227 @ id @ (lam @ (X229 @ sh @ one)) @ id) = $true)) | ~! [X234 : term] : (($true = (X227 @ id @ (sub @ X228 @ (push @ X234 @ id)) @ id)) | ($true != (X227 @ id @ X234 @ id))) | ((X227 @ id @ (lam @ (sub @ X228 @ (push @ one @ sh))) @ id) = $true))) & (! [X270 : subst > term > subst > $o,X271 : term] : (~! [X277 : term,X278 : term] : (((X270 @ id @ (ap @ (sub @ X278 @ id) @ X277) @ id) = $true) | ($true != (X270 @ id @ X277 @ id)) | ($true != (X270 @ id @ X278 @ id))) | ($true = (X270 @ id @ X271 @ id)) | ~! [X272 : subst > term > term] : (~! [X273 : term] : (($true = (X270 @ id @ (X272 @ id @ X273) @ id)) | ($true != (X270 @ id @ X273 @ id))) | ($true = (X270 @ id @ (lam @ (X272 @ sh @ one)) @ id)) | ~! [X274 : subst,X275 : subst,X276 : term] : ((X272 @ (comp @ X274 @ X275) @ (sub @ X276 @ X275)) = (sub @ (X272 @ X274 @ X276) @ X275)))) <=> (hoasinduction_no_psi_cond = $true)) & (ulamvarsh = $true) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) <=> (hoasapinj2 = $true)) & (hoaslaminj_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X305 : term] : ~! [X306 : subst > term > term] : ~! [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) = (X306 @ X307 @ X308)) => (! [X309 : term] : ((sub @ X309 @ id) = X309) => ! [X310 : subst > term > subst > $o,X311 : term,X312 : term > $o] : (~! [X314 : subst > term > term] : (~! [X316 : subst,X317 : subst,X318 : term] : ((X314 @ (comp @ X317 @ X316) @ (sub @ X318 @ X316)) = (sub @ (X314 @ X317 @ X318) @ X316)) | ~! [X315 : term] : (($true = (X310 @ id @ (X314 @ id @ X315) @ id)) | ($true != (X310 @ id @ X315 @ id))) | ((X310 @ id @ (lam @ (X314 @ sh @ one)) @ id) = $true)) | ((X312 @ (lam @ X311)) = $true) | ~! [X319 : term] : ((X312 @ X319) = (X310 @ id @ X319 @ id)) | ~! [X313 : term] : (($true = (X312 @ (sub @ X311 @ (push @ X313 @ id)))) | ($true != (X312 @ X313))))))) & (lamnotap != $true) & ((laminj = $true) <=> ! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531))) & (termmset_gthm = $true) & ((d2subst @ d_id) = id) & (hoaslamnotap_gthm = $true) & ((d2subst @ d_id) = sh) & (! [X269 : term] : ((sub @ X269 @ id) = X269) <=> (termmset = $true)) & ((hoasinduction_lem3v2 = $true) <=> ! [X64 : term,X65 : term > $o,X66 : subst > term > subst > $o] : (~! [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (((X66 @ X74 @ X72 @ (comp @ X71 @ X73)) = $true) | ($true != (X66 @ (comp @ X74 @ X71) @ (sub @ X72 @ X71) @ X73))) | ($true = (X65 @ (lam @ X64))) | ~! [X81 : term] : ((X66 @ id @ X81 @ id) = (X65 @ X81)) | ~! [X67 : subst,X68 : term,X69 : subst,X70 : subst] : (((X66 @ (comp @ X70 @ X67) @ (sub @ X68 @ X67) @ X69) = $true) | ($true != (X66 @ X70 @ X68 @ (comp @ X67 @ X69)))) | ~! [X80 : term] : (($true = (X65 @ (sub @ X64 @ (push @ X80 @ id)))) | ($true != (X65 @ X80))) | ~! [X75 : subst > term > term] : (($true = (X66 @ id @ (lam @ (X75 @ sh @ one)) @ id)) | ~! [X77 : subst,X78 : subst,X79 : term] : ((X75 @ (comp @ X77 @ X78) @ (sub @ X79 @ X78)) = (sub @ (X75 @ X77 @ X79) @ X78)) | ~! [X76 : term] : (((X66 @ id @ (X75 @ id @ X76) @ id) = $true) | ($true != (X66 @ id @ X76 @ id)))))) & (induction2_gthm = $true)),
% 2.63/1.98    inference(flattening,[status(thm)],[f9])).
% 2.63/1.98  thf(f9,plain,(
% 2.63/1.98    (! [X0 : term,X1 : term > $o] : (((X1 @ X0) = $true) | ~! [X2 : term,X3 : term] : (~($true = (X1 @ X3)) | ~((X1 @ X2) = $true) | ((X1 @ (ap @ X3 @ X2)) = $true)) | ~! [X4 : term] : (($true = (X1 @ (lam @ X4))) | ~! [X5 : term] : (~($true = (X1 @ X5)) | ($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))))) | ~! [X6 : term] : (~((var @ X6) = $true) | ($true = (X1 @ X6)))) <=> (induction2 = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (~((X9 @ X10) = $true) | ~! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8)))) | ($true = (X7 @ one)))) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (~! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ~! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & (axclos = $true) & (! [X22 : subst > term > subst > $o,X23 : term] : (($true = (X22 @ id @ (lam @ X23) @ id)) | ~! [X24 : term] : (~((X22 @ id @ X24 @ id) = $true) | ($true = (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id))) | ~! [X25 : subst > term > term] : (~! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) | ($true = (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id)) | ~! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ~($true = (X22 @ id @ X29 @ id))))) <=> (hoasinduction_lem3a = $true)) & ((! [X30 : term,X31 : term,X32 : term,X33 : term] : (((ap @ X32 @ X33) != (ap @ X30 @ X31)) | (X31 = X33)) => ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37))) <=> (hoasapinj2_lthm = $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (hoaslamnotvar_gthm = $true) & ! [X38 : d_term] : (d_one = X38) & (hoasinduction_lem1_gthm = $true) & ! [X39 : term] : ? [X40 : d_term] : ((d2term @ X40) = X39) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((substmonoid_lthm = $true) <=> (! [X41 : subst] : ((comp @ id @ X41) = X41) => (! [X42 : subst] : ((comp @ X42 @ id) = X42) => (! [X43 : subst] : ((comp @ id @ X43) = X43) & ! [X44 : subst] : ((comp @ X44 @ id) = X44))))) & (hoasinduction_lem1_lthm = $true) & (axabs = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (termmset_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ((axshiftcons = $true) <=> ! [X45 : subst,X46 : term] : ((comp @ sh @ (push @ X46 @ X45)) = X45)) & (! [X47 : subst > term > subst > $o] : ~! [X48 : term > $o] : ~! [X49 : term] : ((X48 @ X49) = (X47 @ id @ X49 @ id)) <=> (hoasinduction_lem0 = $true)) & (pushprop_lthm = $true) & ((shinj = $true) <=> ! [X50 : term,X51 : term] : (((sub @ X51 @ sh) != (sub @ X50 @ sh)) | (X50 = X51))) & ((hoasinduction_lem3aaa = $true) <=> ! [X52 : term,X53 : subst > term > subst > $o] : (($true = (X53 @ id @ (lam @ (sub @ X52 @ (push @ one @ sh))) @ id)) | ~! [X54 : term,X55 : subst > term > term] : (~! [X56 : subst,X57 : subst,X58 : term] : ((sub @ X54 @ (push @ (sub @ X58 @ X57) @ (comp @ X56 @ X57))) = (X55 @ (comp @ X56 @ X57) @ (sub @ X58 @ X57))) | ~! [X59 : term] : (~((X53 @ id @ X59 @ id) = $true) | ((X53 @ id @ (X55 @ id @ X59) @ id) = $true)) | ($true = (X53 @ id @ (lam @ (X55 @ sh @ one)) @ id)) | ~! [X60 : subst,X61 : subst,X62 : term] : ((sub @ (sub @ X54 @ (push @ X62 @ X61)) @ X60) = (sub @ (X55 @ X61 @ X62) @ X60))) | ~! [X63 : term] : (~((X53 @ id @ X63 @ id) = $true) | ((X53 @ id @ (sub @ X52 @ (push @ X63 @ id)) @ id) = $true)))) & (pushprop_lem2v2 = $true) & (lamnotvar = $true) & (! [X64 : term,X65 : term > $o,X66 : subst > term > subst > $o] : (~! [X67 : subst,X68 : term,X69 : subst,X70 : subst] : (((X66 @ (comp @ X70 @ X67) @ (sub @ X68 @ X67) @ X69) = $true) | ~($true = (X66 @ X70 @ X68 @ (comp @ X67 @ X69)))) | ~! [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (((X66 @ X74 @ X72 @ (comp @ X71 @ X73)) = $true) | ~($true = (X66 @ (comp @ X74 @ X71) @ (sub @ X72 @ X71) @ X73))) | ~! [X75 : subst > term > term] : (~! [X76 : term] : (((X66 @ id @ (X75 @ id @ X76) @ id) = $true) | ~($true = (X66 @ id @ X76 @ id))) | ($true = (X66 @ id @ (lam @ (X75 @ sh @ one)) @ id)) | ~! [X77 : subst,X78 : subst,X79 : term] : ((X75 @ (comp @ X77 @ X78) @ (sub @ X79 @ X78)) = (sub @ (X75 @ X77 @ X79) @ X78))) | ~! [X80 : term] : (~($true = (X65 @ X80)) | ($true = (X65 @ (sub @ X64 @ (push @ X80 @ id))))) | ($true = (X65 @ (lam @ X64))) | ~! [X81 : term] : ((X66 @ id @ X81 @ id) = (X65 @ X81))) <=> (hoasinduction_lem3v2 = $true)) & ((! [X82 : subst] : ((comp @ id @ X82) = X82) & ! [X83 : subst] : ((comp @ X83 @ id) = X83)) <=> (substmonoid = $true)) & ! [X84 : d_term,X85 : d_term] : (((d2term @ X85) = (d2term @ X84)) => (X84 = X85)) & ((d2subst @ d_id) = id) & (hoasinduction_lem3v2_gthm = $true) & (ulamvarind = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((axscons = $true) <=> ! [X86 : subst] : ((push @ (sub @ one @ X86) @ (comp @ sh @ X86)) = X86)) & (ulamvarsh = $true) & ((! [X87 : term] : ((sub @ X87 @ id) = X87) => (! [X88 : term,X89 : term > $o,X90 : subst] : (~! [X91 : term] : (~! [X92 : term] : (($true = (X89 @ (sub @ X91 @ (push @ X92 @ id)))) | ~($true = (X89 @ X92))) | ($true = (X89 @ (lam @ X91)))) | ($true = (X89 @ (sub @ X88 @ X90))) | ~! [X93 : term] : (~($true = (var @ X93)) | ($true = (X89 @ (sub @ X93 @ X90)))) | ~! [X94 : term,X95 : term] : (~($true = (X89 @ X94)) | ~($true = (X89 @ X95)) | ($true = (X89 @ (ap @ X94 @ X95))))) => ! [X96 : term > $o,X97 : term] : (~! [X98 : term] : (((X96 @ (lam @ X98)) = $true) | ~! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ~((X96 @ X99) = $true))) | ~! [X100 : term,X101 : term] : (($true = (X96 @ (ap @ X100 @ X101))) | ~($true = (X96 @ X101)) | ~((X96 @ X100) = $true)) | ((X96 @ X97) = $true) | ~! [X102 : term] : (~($true = (var @ X102)) | ($true = (X96 @ X102)))))) <=> (induction2_lthm = $true)) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X103 : term] : ~! [X104 : subst > term > term] : ~! [X105 : term,X106 : subst] : ((X104 @ X106 @ X105) = (sub @ X103 @ (push @ X105 @ X106)))) & ((hoasinduction_lem2 = $true) <=> ! [X107 : term,X108 : subst > term > subst > $o,X109 : term] : (~! [X110 : subst,X111 : subst,X112 : subst,X113 : term] : (($true = (X108 @ (comp @ X112 @ X111) @ (sub @ X113 @ X111) @ X110)) | ~((X108 @ X112 @ X113 @ (comp @ X111 @ X110)) = $true)) | ~! [X114 : term,X115 : term] : (~($true = (X108 @ id @ X114 @ id)) | ($true = (X108 @ id @ (ap @ (sub @ X114 @ id) @ X115) @ id)) | ~((X108 @ id @ X115 @ id) = $true)) | ~($true = (X108 @ id @ X107 @ id)) | ~((X108 @ id @ X109 @ id) = $true) | ~! [X116 : subst,X117 : subst,X118 : subst,X119 : term] : (~($true = (X108 @ (comp @ X117 @ X116) @ (sub @ X119 @ X116) @ X118)) | ((X108 @ X117 @ X119 @ (comp @ X116 @ X118)) = $true)) | ($true = (X108 @ id @ (ap @ X109 @ X107) @ id)))) & (! [X120 : term,X121 : term > $o] : (~! [X122 : term,X123 : term] : (~((X121 @ X122) = $true) | ($true = (X121 @ (ap @ X123 @ X122))) | ~($true = (X121 @ X123))) | ($true = (X121 @ X120)) | ~! [X124 : term] : (~((X121 @ X124) = $true) | ($true = (X121 @ (lam @ X124)))) | ~! [X125 : term] : (~((var @ X125) = $true) | ((X121 @ X125) = $true))) <=> (induction = $true)) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (! [X126 : term,X127 : term,X128 : term,X129 : term] : ((X128 = X129) | ((ap @ X128 @ X126) != (ap @ X129 @ X127))) <=> (apinj1 = $true)) & (hoasinduction_lem1v2 = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem1 = $true) & (! [X130 : term,X131 : subst,X132 : term > $o] : ~! [X133 : term > $o] : ~! [X134 : term] : ((X133 @ X134) = (X132 @ (sub @ X134 @ (push @ X130 @ X131)))) <=> (pushprop_lem0 = $true)) & (! [X135 : term,X136 : term,X137 : term,X138 : term] : ((X137 = X138) | ((ap @ X136 @ X138) != (ap @ X135 @ X137))) <=> (apinj2 = $true)) & ((! [X139 : term] : ((sub @ X139 @ id) = X139) => ! [X140 : subst > term > subst > $o,X141 : term > $o,X142 : term] : (~! [X143 : term] : ((X140 @ id @ X143 @ id) = (X141 @ X143)) | ~! [X144 : subst,X145 : term,X146 : subst,X147 : subst] : (~($true = (X140 @ (comp @ X147 @ X144) @ (sub @ X145 @ X144) @ X146)) | ($true = (X140 @ X147 @ X145 @ (comp @ X144 @ X146)))) | ~! [X148 : subst,X149 : subst,X150 : term,X151 : subst] : (((X140 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149) @ X148) = $true) | ~($true = (X140 @ X151 @ X150 @ (comp @ X149 @ X148)))) | ~! [X152 : subst > term > term] : (((X140 @ id @ (lam @ (X152 @ sh @ one)) @ id) = $true) | ~! [X153 : term,X154 : subst,X155 : subst] : ((sub @ (X152 @ X154 @ X153) @ X155) = (X152 @ (comp @ X154 @ X155) @ (sub @ X153 @ X155))) | ~! [X156 : term] : (~($true = (X140 @ id @ X156 @ id)) | ($true = (X140 @ id @ (X152 @ id @ X156) @ id)))) | ~! [X157 : term] : (~($true = (X141 @ X157)) | ($true = (X141 @ (sub @ X142 @ (push @ X157 @ id))))) | ($true = (X141 @ (lam @ X142))))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((hoasinduction_lem3b = $true) <=> ! [X158 : term] : ~! [X159 : subst > term > term] : ((X159 @ sh @ one) != (sub @ X158 @ (push @ one @ sh)))) & (pushprop_lem1_gthm = $true) & (! [X160 : term,X161 : term,X162 : term,X163 : term] : ((X160 = X161) | ((ap @ (sub @ X163 @ id) @ X161) != (ap @ (sub @ X162 @ id) @ X160))) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X164 : subst > term > subst > $o,X165 : term > $o,X166 : term] : (($true = (X165 @ (lam @ X166))) | ~! [X167 : term] : (~($true = (X165 @ X167)) | ($true = (X165 @ (sub @ X166 @ (push @ X167 @ id))))) | ~! [X168 : subst > term > term] : (($true = (X164 @ id @ (lam @ (X168 @ sh @ one)) @ id)) | ~! [X169 : term] : (~((X164 @ id @ X169 @ id) = $true) | ((X164 @ id @ (X168 @ id @ X169) @ id) = $true)) | ~! [X170 : subst,X171 : term,X172 : subst] : ((sub @ (X168 @ X172 @ X171) @ X170) = (X168 @ (comp @ X172 @ X170) @ (sub @ X171 @ X170)))) | ~! [X173 : term] : ((X165 @ X173) = (X164 @ id @ X173 @ id)))) & (pushprop_lem2v2_gthm = $true) & ((! [X174 : subst > term > subst > $o] : ~! [X175 : term > $o] : ~! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) => (! [X177 : term,X178 : term > $o] : (~! [X179 : term] : (((X178 @ (lam @ X179)) = $true) | ~! [X180 : term] : (($true = (X178 @ (sub @ X179 @ (push @ X180 @ id)))) | ~((X178 @ X180) = $true))) | ~! [X181 : term] : (($true = (X178 @ X181)) | ~((var @ X181) = $true)) | ~! [X182 : term,X183 : term] : (~($true = (X178 @ X183)) | ($true = (X178 @ (ap @ X182 @ X183))) | ~($true = (X178 @ X182))) | ($true = (X178 @ X177))) => (! [X184 : term] : ((sub @ X184 @ id) = X184) => (! [X185 : term > $o,X186 : subst > term > subst > $o,X187 : term] : (~! [X188 : term] : (($true = (X185 @ (sub @ X187 @ (push @ X188 @ id)))) | ~($true = (X185 @ X188))) | ~! [X189 : subst > term > term] : (~! [X190 : term,X191 : subst,X192 : subst] : ((sub @ (X189 @ X192 @ X190) @ X191) = (X189 @ (comp @ X192 @ X191) @ (sub @ X190 @ X191))) | ($true = (X186 @ id @ (lam @ (X189 @ sh @ one)) @ id)) | ~! [X193 : term] : (((X186 @ id @ (X189 @ id @ X193) @ id) = $true) | ~((X186 @ id @ X193 @ id) = $true))) | ~! [X194 : term] : ((X186 @ id @ X194 @ id) = (X185 @ X194)) | ($true = (X185 @ (lam @ X187)))) => ! [X195 : term,X196 : subst > term > subst > $o] : (~! [X197 : term,X198 : term] : (($true = (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) | ~((X196 @ id @ X197 @ id) = $true) | ~((X196 @ id @ X198 @ id) = $true)) | ((X196 @ id @ X195 @ id) = $true) | ~! [X199 : subst > term > term] : (~! [X200 : subst,X201 : subst,X202 : term] : ((sub @ (X199 @ X201 @ X202) @ X200) = (X199 @ (comp @ X201 @ X200) @ (sub @ X202 @ X200))) | ($true = (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) | ~! [X203 : term] : (~($true = (X196 @ id @ X203 @ id)) | ((X196 @ id @ (X199 @ id @ X203) @ id) = $true)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (hoasinduction_lem3_gthm = $true) & (! [X204 : subst > term > subst > $o,X205 : term] : (($true = (X204 @ id @ (lam @ (sub @ X205 @ (push @ one @ sh))) @ id)) | ~! [X206 : subst > term > term] : (~! [X207 : term] : (~($true = (X204 @ id @ X207 @ id)) | ($true = (X204 @ id @ (X206 @ id @ X207) @ id))) | ($true = (X204 @ id @ (lam @ (X206 @ sh @ one)) @ id)) | ~! [X208 : term,X209 : subst,X210 : subst] : ((sub @ (X206 @ X209 @ X208) @ X210) = (X206 @ (comp @ X209 @ X210) @ (sub @ X208 @ X210)))) | ~! [X211 : term] : (~($true = (X204 @ id @ X211 @ id)) | ((X204 @ id @ (sub @ X205 @ (push @ X211 @ id)) @ id) = $true))) <=> (hoasinduction_lem3aa_lthm = $true)) & ((hoasinduction_lem2v2 = $true) <=> ! [X212 : term,X213 : subst > term > subst > $o,X214 : term > $o,X215 : term] : (~($true = (X214 @ X212)) | ~! [X216 : subst,X217 : subst,X218 : term,X219 : subst] : (~($true = (X213 @ (comp @ X216 @ X219) @ (sub @ X218 @ X219) @ X217)) | ((X213 @ X216 @ X218 @ (comp @ X219 @ X217)) = $true)) | ~! [X220 : subst,X221 : term,X222 : subst,X223 : subst] : (($true = (X213 @ (comp @ X223 @ X220) @ (sub @ X221 @ X220) @ X222)) | ~($true = (X213 @ X223 @ X221 @ (comp @ X220 @ X222)))) | ~($true = (X214 @ X215)) | ($true = (X214 @ (ap @ X212 @ X215))) | ~! [X224 : term] : ((X214 @ X224) = (X213 @ id @ X224 @ id)) | ~! [X225 : term,X226 : term] : (($true = (X213 @ id @ (ap @ (sub @ X226 @ id) @ X225) @ id)) | ~($true = (X213 @ id @ X226 @ id)) | ~($true = (X213 @ id @ X225 @ id))))) & (! [X227 : subst > term > subst > $o,X228 : term] : (~! [X229 : subst > term > term] : (~! [X230 : term,X231 : subst,X232 : subst] : ((sub @ (X229 @ X231 @ X230) @ X232) = (X229 @ (comp @ X231 @ X232) @ (sub @ X230 @ X232))) | ((X227 @ id @ (lam @ (X229 @ sh @ one)) @ id) = $true) | ~! [X233 : term] : (~($true = (X227 @ id @ X233 @ id)) | ($true = (X227 @ id @ (X229 @ id @ X233) @ id)))) | ~! [X234 : term] : (($true = (X227 @ id @ (sub @ X228 @ (push @ X234 @ id)) @ id)) | ~($true = (X227 @ id @ X234 @ id))) | ((X227 @ id @ (lam @ (sub @ X228 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & ((d2subst @ d_id) = sh) & ! [X235 : d_subst] : (d_id = X235) & (hoasinduction_lem2_gthm = $true) & (hoaslaminj_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((! [X236 : term,X237 : subst] : ((sub @ one @ (push @ X236 @ X237)) = X236) => (! [X238 : term,X239 : subst] : ((comp @ sh @ (push @ X238 @ X239)) = X239) => (! [X240 : subst] : ((comp @ X240 @ id) = X240) => (! [X241 : term,X242 : term > $o] : (~! [X243 : term] : (~($true = (var @ X243)) | ((X242 @ X243) = $true)) | ($true = (X242 @ X241)) | ~! [X244 : term,X245 : term] : (~($true = (X242 @ X244)) | ((X242 @ (ap @ X244 @ X245)) = $true) | ~($true = (X242 @ X245))) | ~! [X246 : term] : (($true = (X242 @ (lam @ X246))) | ~($true = (X242 @ X246)))) => ! [X247 : subst,X248 : term > $o,X249 : term] : (~! [X250 : term] : (~! [X251 : term] : (~($true = (X248 @ X251)) | ($true = (X248 @ (sub @ X250 @ (push @ X251 @ id))))) | ($true = (X248 @ (lam @ X250)))) | ($true = (X248 @ (sub @ X249 @ X247))) | ~! [X252 : term,X253 : term] : (~($true = (X248 @ X252)) | ($true = (X248 @ (ap @ X253 @ X252))) | ~($true = (X248 @ X253))) | ~! [X254 : term] : (($true = (X248 @ (sub @ X254 @ X247))) | ~($true = (var @ X254)))))))) <=> (induction2lem_lthm = $true)) & (hoasapinj1_gthm = $true) & (! [X255 : term > $o,X256 : subst,X257 : term,X258 : term,X259 : term > $o] : (($true = (X259 @ (sub @ X258 @ (push @ X257 @ X256)))) | ~($true = (X255 @ X258))) <=> (pushprop_lem1 = $true)) & (substmonoid_gthm = $true) & ~(ulamvar1 = $true) & ((! [X260 : term] : ((sub @ X260 @ id) = X260) => (! [X261 : term,X262 : term,X263 : term,X264 : term] : ((X261 = X264) | ((ap @ X264 @ X262) != (ap @ X261 @ X263))) => ! [X265 : term,X266 : term,X267 : term,X268 : term] : ((X266 = X267) | ((ap @ (sub @ X267 @ id) @ X265) != (ap @ (sub @ X266 @ id) @ X268))))) <=> (hoasapinj1_lthm = $true)) & (! [X269 : term] : ((sub @ X269 @ id) = X269) <=> (termmset = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X270 : subst > term > subst > $o,X271 : term] : (~! [X272 : subst > term > term] : (~! [X273 : term] : (~($true = (X270 @ id @ X273 @ id)) | ($true = (X270 @ id @ (X272 @ id @ X273) @ id))) | ($true = (X270 @ id @ (lam @ (X272 @ sh @ one)) @ id)) | ~! [X274 : subst,X275 : subst,X276 : term] : ((X272 @ (comp @ X274 @ X275) @ (sub @ X276 @ X275)) = (sub @ (X272 @ X274 @ X276) @ X275))) | ~! [X277 : term,X278 : term] : (~($true = (X270 @ id @ X278 @ id)) | ~($true = (X270 @ id @ X277 @ id)) | ((X270 @ id @ (ap @ (sub @ X278 @ id) @ X277) @ id) = $true)) | ($true = (X270 @ id @ X271 @ id)))) & ((induction2lem = $true) <=> ! [X279 : term > $o,X280 : term,X281 : subst] : (($true = (X279 @ (sub @ X280 @ X281))) | ~! [X282 : term] : (~($true = (var @ X282)) | ((X279 @ (sub @ X282 @ X281)) = $true)) | ~! [X283 : term] : (~! [X284 : term] : (($true = (X279 @ (sub @ X283 @ (push @ X284 @ id)))) | ~($true = (X279 @ X284))) | ($true = (X279 @ (lam @ X283)))) | ~! [X285 : term,X286 : term] : (~((X279 @ X285) = $true) | ~($true = (X279 @ X286)) | ($true = (X279 @ (ap @ X286 @ X285)))))) & (induction2_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (! [X287 : subst > term > subst > $o,X288 : term] : (~! [X289 : subst > term > term] : (~! [X290 : subst,X291 : term,X292 : subst] : ((sub @ (X289 @ X290 @ X291) @ X292) = (X289 @ (comp @ X290 @ X292) @ (sub @ X291 @ X292))) | ~! [X293 : term] : (~($true = (X287 @ id @ X293 @ id)) | ((X287 @ id @ (X289 @ id @ X293) @ id) = $true)) | ($true = (X287 @ id @ (lam @ (X289 @ sh @ one)) @ id))) | ~! [X294 : term] : (($true = (X287 @ id @ X294 @ id)) | ~($true = (var @ (sub @ X294 @ id)))) | ($true = (X287 @ id @ X288 @ id)) | ~! [X295 : subst,X296 : term,X297 : subst,X298 : subst] : (~($true = (X287 @ X298 @ X296 @ (comp @ X295 @ X297))) | ($true = (X287 @ (comp @ X298 @ X295) @ (sub @ X296 @ X295) @ X297))) | ~! [X299 : term,X300 : term] : (($true = (X287 @ id @ (ap @ (sub @ X300 @ id) @ X299) @ id)) | ~($true = (X287 @ id @ X300 @ id)) | ~($true = (X287 @ id @ X299 @ id))) | ~! [X301 : subst,X302 : subst,X303 : subst,X304 : term] : (~((X287 @ (comp @ X301 @ X303) @ (sub @ X304 @ X303) @ X302) = $true) | ($true = (X287 @ X301 @ X304 @ (comp @ X303 @ X302))))) <=> (hoasinduction = $true)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X305 : term] : ~! [X306 : subst > term > term] : ~! [X307 : subst,X308 : term] : ((sub @ X305 @ (push @ X308 @ X307)) = (X306 @ X307 @ X308)) => (! [X309 : term] : ((sub @ X309 @ id) = X309) => ! [X310 : subst > term > subst > $o,X311 : term,X312 : term > $o] : (((X312 @ (lam @ X311)) = $true) | ~! [X313 : term] : (($true = (X312 @ (sub @ X311 @ (push @ X313 @ id)))) | ~($true = (X312 @ X313))) | ~! [X314 : subst > term > term] : (~! [X315 : term] : (~($true = (X310 @ id @ X315 @ id)) | ($true = (X310 @ id @ (X314 @ id @ X315) @ id))) | ((X310 @ id @ (lam @ (X314 @ sh @ one)) @ id) = $true) | ~! [X316 : subst,X317 : subst,X318 : term] : ((X314 @ (comp @ X317 @ X316) @ (sub @ X318 @ X316)) = (sub @ (X314 @ X317 @ X318) @ X316))) | ~! [X319 : term] : ((X312 @ X319) = (X310 @ id @ X319 @ id)))))) & ((! [X320 : subst > term > subst > $o] : ~! [X321 : term > $o] : ~! [X322 : term] : ((X320 @ id @ X322 @ id) = (X321 @ X322)) => (! [X323 : term > $o,X324 : term] : (~! [X325 : term] : (~! [X326 : term] : (($true = (X323 @ (sub @ X325 @ (push @ X326 @ id)))) | ~($true = (X323 @ X326))) | ($true = (X323 @ (lam @ X325)))) | ~! [X327 : term,X328 : term] : (~($true = (X323 @ X327)) | ($true = (X323 @ (ap @ X328 @ X327))) | ~($true = (X323 @ X328))) | ($true = (X323 @ X324)) | ~! [X329 : term] : (((X323 @ X329) = $true) | ~($true = (var @ X329)))) => (! [X330 : term] : ((sub @ X330 @ id) = X330) => (! [X331 : subst > term > subst > $o,X332 : term,X333 : term > $o] : (~! [X334 : term] : (($true = (X333 @ (sub @ X332 @ (push @ X334 @ id)))) | ~($true = (X333 @ X334))) | ~! [X335 : subst > term > term] : (~! [X336 : subst,X337 : term,X338 : subst] : ((sub @ (X335 @ X338 @ X337) @ X336) = (X335 @ (comp @ X338 @ X336) @ (sub @ X337 @ X336))) | ((X331 @ id @ (lam @ (X335 @ sh @ one)) @ id) = $true) | ~! [X339 : term] : (~((X331 @ id @ X339 @ id) = $true) | ($true = (X331 @ id @ (X335 @ id @ X339) @ id)))) | ~! [X340 : term] : ((X333 @ X340) = (X331 @ id @ X340 @ id)) | ((X333 @ (lam @ X332)) = $true)) => ! [X341 : subst > term > subst > $o,X342 : term] : (~! [X343 : subst,X344 : subst,X345 : subst,X346 : term] : (~($true = (X341 @ X343 @ X346 @ (comp @ X344 @ X345))) | ($true = (X341 @ (comp @ X343 @ X344) @ (sub @ X346 @ X344) @ X345))) | ~! [X347 : term,X348 : term] : (~($true = (X341 @ id @ X348 @ id)) | ($true = (X341 @ id @ (ap @ (sub @ X348 @ id) @ X347) @ id)) | ~($true = (X341 @ id @ X347 @ id))) | ~! [X349 : term] : (((X341 @ id @ X349 @ id) = $true) | ~($true = (var @ (sub @ X349 @ id)))) | ~! [X350 : subst > term > term] : (~! [X351 : term] : (($true = (X341 @ id @ (X350 @ id @ X351) @ id)) | ~($true = (X341 @ id @ X351 @ id))) | ($true = (X341 @ id @ (lam @ (X350 @ sh @ one)) @ id)) | ~! [X352 : subst,X353 : term,X354 : subst] : ((X350 @ (comp @ X354 @ X352) @ (sub @ X353 @ X352)) = (sub @ (X350 @ X354 @ X353) @ X352))) | ($true = (X341 @ id @ X342 @ id)) | ~! [X355 : subst,X356 : subst,X357 : term,X358 : subst] : (((X341 @ X355 @ X357 @ (comp @ X358 @ X356)) = $true) | ~((X341 @ (comp @ X355 @ X358) @ (sub @ X357 @ X358) @ X356) = $true))))))) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lthm_orig = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X359 : term] : ((sub @ X359 @ id) = X359) => (! [X360 : subst > term > subst > $o,X361 : term] : (~! [X362 : subst > term > term] : (($true = (X360 @ id @ (lam @ (X362 @ sh @ one)) @ id)) | ~! [X363 : term] : (~((X360 @ id @ X363 @ id) = $true) | ($true = (X360 @ id @ (X362 @ id @ X363) @ id))) | ~! [X364 : subst,X365 : subst,X366 : term] : ((X362 @ (comp @ X364 @ X365) @ (sub @ X366 @ X365)) = (sub @ (X362 @ X364 @ X366) @ X365))) | ~! [X367 : term] : (($true = (X360 @ id @ (sub @ X361 @ (push @ X367 @ id)) @ id)) | ~($true = (X360 @ id @ X367 @ id))) | ($true = (X360 @ id @ (lam @ (sub @ X361 @ (push @ one @ sh))) @ id))) => ! [X368 : term,X369 : subst > term > subst > $o] : (~! [X370 : term] : (($true = (X369 @ id @ (sub @ X368 @ (push @ X370 @ id)) @ id)) | ~($true = (X369 @ id @ X370 @ id))) | ($true = (X369 @ id @ (lam @ X368) @ id)) | ~! [X371 : subst > term > term] : (($true = (X369 @ id @ (lam @ (X371 @ sh @ one)) @ id)) | ~! [X372 : subst,X373 : subst,X374 : term] : ((X371 @ (comp @ X373 @ X372) @ (sub @ X374 @ X372)) = (sub @ (X371 @ X373 @ X374) @ X372)) | ~! [X375 : term] : (~($true = (X369 @ id @ X375 @ id)) | ($true = (X369 @ id @ (X371 @ id @ X375) @ id)))))))) & (axassoc = $true) & ((! [X376 : term,X377 : term > $o] : (~! [X378 : term] : (~($true = (var @ X378)) | ($true = (X377 @ X378))) | ((X377 @ X376) = $true) | ~! [X379 : term] : (~! [X380 : term] : (($true = (X377 @ (sub @ X379 @ (push @ X380 @ id)))) | ~($true = (X377 @ X380))) | ($true = (X377 @ (lam @ X379)))) | ~! [X381 : term,X382 : term] : (($true = (X377 @ (ap @ X382 @ X381))) | ~((X377 @ X381) = $true) | ~($true = (X377 @ X382)))) => (! [X383 : term,X384 : term,X385 : subst > term > subst > $o] : (~($true = (X385 @ id @ X383 @ id)) | ($true = (X385 @ id @ (ap @ X384 @ X383) @ id)) | ~($true = (X385 @ id @ X384 @ id)) | ~! [X386 : term,X387 : term] : (((X385 @ id @ (ap @ (sub @ X386 @ id) @ X387) @ id) = $true) | ~((X385 @ id @ X387 @ id) = $true) | ~($true = (X385 @ id @ X386 @ id))) | ~! [X388 : term,X389 : subst,X390 : subst,X391 : subst] : (~($true = (X385 @ (comp @ X391 @ X390) @ (sub @ X388 @ X390) @ X389)) | ($true = (X385 @ X391 @ X388 @ (comp @ X390 @ X389)))) | ~! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (~($true = (X385 @ X393 @ X395 @ (comp @ X394 @ X392))) | ($true = (X385 @ (comp @ X393 @ X394) @ (sub @ X395 @ X394) @ X392)))) => (! [X396 : subst > term > subst > $o,X397 : term] : (~! [X398 : term] : (($true = (X396 @ id @ (sub @ X397 @ (push @ X398 @ id)) @ id)) | ~($true = (X396 @ id @ X398 @ id))) | ~! [X399 : subst,X400 : subst,X401 : subst,X402 : term] : (($true = (X396 @ X399 @ X402 @ (comp @ X401 @ X400))) | ~($true = (X396 @ (comp @ X399 @ X401) @ (sub @ X402 @ X401) @ X400))) | ($true = (X396 @ id @ (lam @ X397) @ id)) | ~! [X403 : subst,X404 : term,X405 : subst,X406 : subst] : (((X396 @ (comp @ X403 @ X406) @ (sub @ X404 @ X406) @ X405) = $true) | ~((X396 @ X403 @ X404 @ (comp @ X406 @ X405)) = $true)) | ~! [X407 : subst > term > term] : (((X396 @ id @ (lam @ (X407 @ sh @ one)) @ id) = $true) | ~! [X408 : subst,X409 : term,X410 : subst] : ((sub @ (X407 @ X410 @ X409) @ X408) = (X407 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408))) | ~! [X411 : term] : (($true = (X396 @ id @ (X407 @ id @ X411) @ id)) | ~($true = (X396 @ id @ X411 @ id))))) => ! [X412 : term,X413 : subst > term > subst > $o] : (~! [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (~($true = (X413 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)) | ($true = (X413 @ X415 @ X414 @ (comp @ X417 @ X416)))) | ((X413 @ id @ X412 @ id) = $true) | ~! [X418 : term,X419 : term] : (~($true = (X413 @ id @ X419 @ id)) | ~($true = (X413 @ id @ X418 @ id)) | ($true = (X413 @ id @ (ap @ (sub @ X419 @ id) @ X418) @ id))) | ~! [X420 : term] : (~($true = (var @ (sub @ X420 @ id))) | ($true = (X413 @ id @ X420 @ id))) | ~! [X421 : term,X422 : subst,X423 : subst,X424 : subst] : (((X413 @ (comp @ X422 @ X424) @ (sub @ X421 @ X424) @ X423) = $true) | ~($true = (X413 @ X422 @ X421 @ (comp @ X424 @ X423)))) | ~! [X425 : subst > term > term] : (~! [X426 : term] : (~((X413 @ id @ X426 @ id) = $true) | ($true = (X413 @ id @ (X425 @ id @ X426) @ id))) | ($true = (X413 @ id @ (lam @ (X425 @ sh @ one)) @ id)) | ~! [X427 : term,X428 : subst,X429 : subst] : ((sub @ (X425 @ X428 @ X427) @ X429) = (X425 @ (comp @ X428 @ X429) @ (sub @ X427 @ X429)))))))) <=> (hoasinduction_lthm = $true)) & (pushprop = $true) & (hoaslamnotap_gthm = $true) & (hoaslamnotvar_lthm = $true) & (axapp = $true) & (! [X430 : subst > term > subst > $o,X431 : term] : (~! [X432 : subst,X433 : subst,X434 : subst,X435 : term] : (($true = (X430 @ (comp @ X432 @ X434) @ (sub @ X435 @ X434) @ X433)) | ~($true = (X430 @ X432 @ X435 @ (comp @ X434 @ X433)))) | ~! [X436 : term] : (~((X430 @ id @ X436 @ id) = $true) | ((X430 @ id @ (sub @ X431 @ (push @ X436 @ id)) @ id) = $true)) | ($true = (X430 @ id @ (lam @ X431) @ id)) | ~! [X437 : term,X438 : subst,X439 : subst,X440 : subst] : (~($true = (X430 @ (comp @ X440 @ X439) @ (sub @ X437 @ X439) @ X438)) | ($true = (X430 @ X440 @ X437 @ (comp @ X439 @ X438)))) | ~! [X441 : subst > term > term] : (($true = (X430 @ id @ (lam @ (X441 @ sh @ one)) @ id)) | ~! [X442 : subst,X443 : subst,X444 : term] : ((sub @ (X441 @ X443 @ X444) @ X442) = (X441 @ (comp @ X443 @ X442) @ (sub @ X444 @ X442))) | ~! [X445 : term] : (($true = (X430 @ id @ (X441 @ id @ X445) @ id)) | ~($true = (X430 @ id @ X445 @ id))))) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((pushprop_lem0_lthm = $true) <=> ! [X446 : subst,X447 : term,X448 : term > $o] : ~! [X449 : term > $o] : ~! [X450 : term] : ((X449 @ X450) = (X448 @ (sub @ X450 @ (push @ X447 @ X446))))) & ((pushprop_lem1_lthm = $true) <=> (! [X451 : subst,X452 : term] : ((sub @ one @ (push @ X452 @ X451)) = X452) => (! [X453 : term,X454 : subst] : ((comp @ sh @ (push @ X453 @ X454)) = X454) => ! [X455 : term > $o,X456 : subst,X457 : term,X458 : term > $o,X459 : term] : (($true = (X458 @ (sub @ X457 @ (push @ X459 @ X456)))) | ~($true = (X455 @ X457)))))) & ((axvarid = $true) <=> ! [X460 : term] : ((sub @ X460 @ id) = X460)) & (! [X461 : subst > term > subst > $o] : ~! [X462 : term > $o] : ~! [X463 : term] : ((X461 @ id @ X463 @ id) = (X462 @ X463)) <=> (hoasinduction_lem0_lthm = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X464 : term,X465 : subst] : ((sub @ one @ (push @ X464 @ X465)) = X464) => (! [X466 : subst,X467 : term] : ((comp @ sh @ (push @ X467 @ X466)) = X466) => (! [X468 : term,X469 : term] : (((lam @ X468) != (lam @ X469)) | (X468 = X469)) => ! [X470 : term,X471 : subst > term > term,X472 : subst,X473 : subst > term > term] : (((X471 @ X472 @ X470) = (X473 @ X472 @ X470)) | ((lam @ (X473 @ sh @ one)) != (lam @ (X471 @ sh @ one))) | ~! [X474 : term,X475 : subst,X476 : subst] : ((X471 @ (comp @ X475 @ X476) @ (sub @ X474 @ X476)) = (sub @ (X471 @ X475 @ X474) @ X476)) | ~! [X477 : subst,X478 : subst,X479 : term] : ((sub @ (X473 @ X478 @ X479) @ X477) = (X473 @ (comp @ X478 @ X477) @ (sub @ X479 @ X477)))))))) & ((termmset_lthm = $true) <=> (! [X480 : term] : ((sub @ X480 @ id) = X480) => ! [X481 : term] : ((sub @ X481 @ id) = X481))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ! [X482 : d_subst,X483 : d_subst] : (((d2subst @ X482) = (d2subst @ X483)) => (X482 = X483)) & ((hoasinduction_lem3_lthm = $true) <=> (! [X484 : term] : ((sub @ X484 @ id) = X484) => (! [X485 : subst > term > subst > $o,X486 : term] : (($true = (X485 @ id @ (lam @ (sub @ X486 @ (push @ one @ sh))) @ id)) | ~! [X487 : term] : (($true = (X485 @ id @ (sub @ X486 @ (push @ X487 @ id)) @ id)) | ~($true = (X485 @ id @ X487 @ id))) | ~! [X488 : subst > term > term] : (~! [X489 : subst,X490 : subst,X491 : term] : ((X488 @ (comp @ X489 @ X490) @ (sub @ X491 @ X490)) = (sub @ (X488 @ X489 @ X491) @ X490)) | ((X485 @ id @ (lam @ (X488 @ sh @ one)) @ id) = $true) | ~! [X492 : term] : (~($true = (X485 @ id @ X492 @ id)) | ($true = (X485 @ id @ (X488 @ id @ X492) @ id))))) => ! [X493 : term,X494 : subst > term > subst > $o] : (((X494 @ id @ (lam @ X493) @ id) = $true) | ~! [X495 : term,X496 : subst,X497 : subst,X498 : subst] : (~($true = (X494 @ (comp @ X497 @ X496) @ (sub @ X495 @ X496) @ X498)) | ($true = (X494 @ X497 @ X495 @ (comp @ X496 @ X498)))) | ~! [X499 : term] : (($true = (X494 @ id @ (sub @ X493 @ (push @ X499 @ id)) @ id)) | ~($true = (X494 @ id @ X499 @ id))) | ~! [X500 : term,X501 : subst,X502 : subst,X503 : subst] : (($true = (X494 @ (comp @ X503 @ X501) @ (sub @ X500 @ X501) @ X502)) | ~($true = (X494 @ X503 @ X500 @ (comp @ X501 @ X502)))) | ~! [X504 : subst > term > term] : (~! [X505 : term] : (~((X494 @ id @ X505 @ id) = $true) | ($true = (X494 @ id @ (X504 @ id @ X505) @ id))) | ~! [X506 : subst,X507 : subst,X508 : term] : ((X504 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X504 @ X507 @ X508) @ X506)) | ($true = (X494 @ id @ (lam @ (X504 @ sh @ one)) @ id))))))) & (one = (d2term @ d_one)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X509 : term] : ~! [X510 : subst > term > term] : ~! [X511 : term,X512 : subst] : ((sub @ X509 @ (push @ X511 @ X512)) = (X510 @ X512 @ X511))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X513 : subst,X514 : term] : ((sub @ one @ (push @ X514 @ X513)) = X514) => ! [X515 : subst,X516 : term > $o,X517 : term > $o,X518 : term] : (~($true = (X517 @ X518)) | ~! [X519 : term] : ((X517 @ (sub @ X519 @ (push @ X518 @ X515))) = (X516 @ X519)) | ($true = (X516 @ one))))) & (hoasapnotvar = $true) & (pushprop_lem0_gthm = $true) & (pushprop_lem3v2 = $true) & ! [X520 : subst] : ? [X521 : d_subst] : ((d2subst @ X521) = X520) & ((hoasapinj1 = $true) <=> ! [X522 : term,X523 : term,X524 : term,X525 : term] : (((ap @ (sub @ X525 @ id) @ X523) != (ap @ (sub @ X522 @ id) @ X524)) | (X522 = X525))) & (hoasinduction_gthm = $true) & (! [X526 : term] : ~! [X527 : subst > term > term] : ((X527 @ sh @ one) != (sub @ X526 @ (push @ one @ sh))) <=> (hoasinduction_lem3b_lthm = $true)) & (axmap = $true) & (pushprop_lem3v2_lthm = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar_gthm = $true) & ((axidl = $true) <=> ! [X528 : subst] : ((comp @ id @ X528) = X528)) & ((axidr = $true) <=> ! [X529 : subst] : ((comp @ X529 @ id) = X529)) & ~((var @ (d2term @ d_one)) = $true) & (apnotvar = $true) & ~(lamnotap = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((laminj = $true) <=> ! [X530 : term,X531 : term] : (((lam @ X531) != (lam @ X530)) | (X530 = X531))) & ((axvarcons = $true) <=> ! [X532 : subst,X533 : term] : ((sub @ one @ (push @ X533 @ X532)) = X533)) & (hoaslamnotvar = $true) & (hoasapinj2_gthm = $true) & ((hoaslamnotap = $true) <=> ! [X534 : subst > term > term,X535 : term,X536 : term] : (((ap @ (sub @ X535 @ id) @ X536) != (lam @ (X534 @ sh @ one))) | ~! [X537 : subst,X538 : subst,X539 : term] : ((X534 @ (comp @ X537 @ X538) @ (sub @ X539 @ X538)) = (sub @ (X534 @ X537 @ X539) @ X538))))),
% 2.63/1.98    inference(rectify,[status(thm)],[f8])).
% 2.63/1.98  thf(f8,plain,(
% 2.63/1.98    (! [X0 : term,X1 : term > $o] : (((X1 @ X0) = $true) | ~! [X2 : term,X3 : term] : (~($true = (X1 @ X3)) | ~((X1 @ X2) = $true) | ((X1 @ (ap @ X3 @ X2)) = $true)) | ~! [X4 : term] : (($true = (X1 @ (lam @ X4))) | ~! [X5 : term] : (~($true = (X1 @ X5)) | ($true = (X1 @ (sub @ X4 @ (push @ X5 @ id)))))) | ~! [X6 : term] : (~((var @ X6) = $true) | ($true = (X1 @ X6)))) <=> (induction2 = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (~((X9 @ X10) = $true) | ~! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8)))) | ($true = (X7 @ one)))) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (~! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ~! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14)) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one)))) <=> (hoaslaminj = $true)) & (axclos = $true) & (! [X22 : subst > term > subst > $o,X23 : term] : (($true = (X22 @ id @ (lam @ X23) @ id)) | ~! [X24 : term] : (~((X22 @ id @ X24 @ id) = $true) | ($true = (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id))) | ~! [X25 : subst > term > term] : (~! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) | ($true = (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id)) | ~! [X29 : term] : (($true = (X22 @ id @ (X25 @ id @ X29) @ id)) | ~($true = (X22 @ id @ X29 @ id))))) <=> (hoasinduction_lem3a = $true)) & ((! [X30 : term,X31 : term,X32 : term,X33 : term] : (((ap @ X32 @ X33) != (ap @ X30 @ X31)) | (X31 = X33)) => ! [X34 : term,X35 : term,X36 : term,X37 : term] : (((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36)) | (X36 = X37))) <=> (hoasapinj2_lthm = $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (hoaslamnotvar_gthm = $true) & ! [X43 : d_term] : (d_one = X43) & (hoasinduction_lem1_gthm = $true) & ! [X44 : term] : ? [X45 : d_term] : ((d2term @ X45) = X44) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoaslamnotap_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((substmonoid_lthm = $true) <=> (! [X46 : subst] : ((comp @ id @ X46) = X46) => (! [X47 : subst] : ((comp @ X47 @ id) = X47) => (! [X48 : subst] : ((comp @ id @ X48) = X48) & ! [X49 : subst] : ((comp @ X49 @ id) = X49))))) & (hoasinduction_lem1_lthm = $true) & (axabs = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (termmset_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (! [X52 : subst,X53 : term] : ((comp @ sh @ (push @ X53 @ X52)) = X52) <=> (axshiftcons = $true)) & ((hoasinduction_lem0 = $true) <=> ! [X54 : subst > term > subst > $o] : ~! [X55 : term > $o] : ~! [X56 : term] : ((X54 @ id @ X56 @ id) = (X55 @ X56))) & (pushprop_lthm = $true) & (! [X57 : term,X58 : term] : (((sub @ X57 @ sh) != (sub @ X58 @ sh)) | (X57 = X58)) <=> (shinj = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X59 : term,X60 : subst > term > subst > $o] : (((X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id) = $true) | ~! [X61 : term,X62 : subst > term > term] : (~! [X63 : subst,X64 : subst,X65 : term] : ((X62 @ (comp @ X63 @ X64) @ (sub @ X65 @ X64)) = (sub @ X61 @ (push @ (sub @ X65 @ X64) @ (comp @ X63 @ X64)))) | ~! [X66 : term] : (~((X60 @ id @ X66 @ id) = $true) | ($true = (X60 @ id @ (X62 @ id @ X66) @ id))) | ((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id) = $true) | ~! [X67 : subst,X68 : subst,X69 : term] : ((sub @ (X62 @ X68 @ X69) @ X67) = (sub @ (sub @ X61 @ (push @ X69 @ X68)) @ X67))) | ~! [X70 : term] : (~((X60 @ id @ X70 @ id) = $true) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X70 @ id)) @ id))))) & (pushprop_lem2v2 = $true) & (lamnotvar = $true) & (! [X71 : term,X72 : term > $o,X73 : subst > term > subst > $o] : (~! [X74 : subst,X75 : term,X76 : subst,X77 : subst] : (((X73 @ (comp @ X77 @ X74) @ (sub @ X75 @ X74) @ X76) = $true) | ~($true = (X73 @ X77 @ X75 @ (comp @ X74 @ X76)))) | ~! [X78 : subst,X79 : term,X80 : subst,X81 : subst] : (((X73 @ X81 @ X79 @ (comp @ X78 @ X80)) = $true) | ~((X73 @ (comp @ X81 @ X78) @ (sub @ X79 @ X78) @ X80) = $true)) | ~! [X82 : subst > term > term] : (~! [X83 : term] : (((X73 @ id @ (X82 @ id @ X83) @ id) = $true) | ~($true = (X73 @ id @ X83 @ id))) | ($true = (X73 @ id @ (lam @ (X82 @ sh @ one)) @ id)) | ~! [X84 : subst,X85 : subst,X86 : term] : ((X82 @ (comp @ X84 @ X85) @ (sub @ X86 @ X85)) = (sub @ (X82 @ X84 @ X86) @ X85))) | ~! [X87 : term] : (~($true = (X72 @ X87)) | ($true = (X72 @ (sub @ X71 @ (push @ X87 @ id))))) | ((X72 @ (lam @ X71)) = $true) | ~! [X88 : term] : ((X73 @ id @ X88 @ id) = (X72 @ X88))) <=> (hoasinduction_lem3v2 = $true)) & ((substmonoid = $true) <=> (! [X89 : subst] : ((comp @ id @ X89) = X89) & ! [X90 : subst] : ((comp @ X90 @ id) = X90))) & ! [X91 : d_term,X92 : d_term] : (((d2term @ X91) = (d2term @ X92)) => (X91 = X92)) & ((d2subst @ d_id) = id) & (hoasinduction_lem3v2_gthm = $true) & (ulamvarind = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X93 : subst] : ((push @ (sub @ one @ X93) @ (comp @ sh @ X93)) = X93) <=> (axscons = $true)) & (ulamvarsh = $true) & ((! [X94 : term] : ((sub @ X94 @ id) = X94) => (! [X95 : term,X96 : term > $o,X97 : subst] : (~! [X98 : term] : (~! [X99 : term] : (($true = (X96 @ (sub @ X98 @ (push @ X99 @ id)))) | ~((X96 @ X99) = $true)) | ((X96 @ (lam @ X98)) = $true)) | ($true = (X96 @ (sub @ X95 @ X97))) | ~! [X100 : term] : (~((var @ X100) = $true) | ($true = (X96 @ (sub @ X100 @ X97)))) | ~! [X101 : term,X102 : term] : (~($true = (X96 @ X101)) | ~($true = (X96 @ X102)) | ($true = (X96 @ (ap @ X101 @ X102))))) => ! [X103 : term > $o,X104 : term] : (~! [X105 : term] : (($true = (X103 @ (lam @ X105))) | ~! [X106 : term] : (((X103 @ (sub @ X105 @ (push @ X106 @ id))) = $true) | ~($true = (X103 @ X106)))) | ~! [X107 : term,X108 : term] : (((X103 @ (ap @ X107 @ X108)) = $true) | ~($true = (X103 @ X108)) | ~($true = (X103 @ X107))) | ($true = (X103 @ X104)) | ~! [X109 : term] : (~($true = (var @ X109)) | ((X103 @ X109) = $true))))) <=> (induction2_lthm = $true)) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X110 : term] : ~! [X111 : subst > term > term] : ~! [X112 : term,X113 : subst] : ((X111 @ X113 @ X112) = (sub @ X110 @ (push @ X112 @ X113)))) & ((hoasinduction_lem2 = $true) <=> ! [X114 : term,X115 : subst > term > subst > $o,X116 : term] : (~! [X117 : subst,X118 : subst,X119 : subst,X120 : term] : (($true = (X115 @ (comp @ X119 @ X118) @ (sub @ X120 @ X118) @ X117)) | ~($true = (X115 @ X119 @ X120 @ (comp @ X118 @ X117)))) | ~! [X121 : term,X122 : term] : (~($true = (X115 @ id @ X121 @ id)) | ($true = (X115 @ id @ (ap @ (sub @ X121 @ id) @ X122) @ id)) | ~((X115 @ id @ X122 @ id) = $true)) | ~($true = (X115 @ id @ X114 @ id)) | ~((X115 @ id @ X116 @ id) = $true) | ~! [X123 : subst,X124 : subst,X125 : subst,X126 : term] : (~($true = (X115 @ (comp @ X124 @ X123) @ (sub @ X126 @ X123) @ X125)) | ($true = (X115 @ X124 @ X126 @ (comp @ X123 @ X125)))) | ($true = (X115 @ id @ (ap @ X116 @ X114) @ id)))) & (! [X127 : term,X128 : term > $o] : (~! [X129 : term,X130 : term] : (~($true = (X128 @ X129)) | ($true = (X128 @ (ap @ X130 @ X129))) | ~($true = (X128 @ X130))) | ((X128 @ X127) = $true) | ~! [X131 : term] : (~($true = (X128 @ X131)) | ($true = (X128 @ (lam @ X131)))) | ~! [X132 : term] : (~($true = (var @ X132)) | ((X128 @ X132) = $true))) <=> (induction = $true)) & (pushprop_lem2v2_lthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (! [X136 : term,X137 : term,X138 : term,X139 : term] : (((ap @ X138 @ X136) != (ap @ X139 @ X137)) | (X138 = X139)) <=> (apinj1 = $true)) & (hoasinduction_lem1v2 = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem1 = $true) & (! [X140 : term,X141 : subst,X142 : term > $o] : ~! [X143 : term > $o] : ~! [X144 : term] : ((X142 @ (sub @ X144 @ (push @ X140 @ X141))) = (X143 @ X144)) <=> (pushprop_lem0 = $true)) & ((apinj2 = $true) <=> ! [X145 : term,X146 : term,X147 : term,X148 : term] : (((ap @ X145 @ X147) != (ap @ X146 @ X148)) | (X147 = X148))) & ((! [X149 : term] : ((sub @ X149 @ id) = X149) => ! [X150 : subst > term > subst > $o,X151 : term > $o,X152 : term] : (~! [X153 : term] : ((X150 @ id @ X153 @ id) = (X151 @ X153)) | ~! [X154 : subst,X155 : term,X156 : subst,X157 : subst] : (~($true = (X150 @ (comp @ X157 @ X154) @ (sub @ X155 @ X154) @ X156)) | ($true = (X150 @ X157 @ X155 @ (comp @ X154 @ X156)))) | ~! [X158 : subst,X159 : subst,X160 : term,X161 : subst] : (($true = (X150 @ (comp @ X161 @ X159) @ (sub @ X160 @ X159) @ X158)) | ~($true = (X150 @ X161 @ X160 @ (comp @ X159 @ X158)))) | ~! [X162 : subst > term > term] : (($true = (X150 @ id @ (lam @ (X162 @ sh @ one)) @ id)) | ~! [X163 : term,X164 : subst,X165 : subst] : ((sub @ (X162 @ X164 @ X163) @ X165) = (X162 @ (comp @ X164 @ X165) @ (sub @ X163 @ X165))) | ~! [X166 : term] : (~($true = (X150 @ id @ X166 @ id)) | ($true = (X150 @ id @ (X162 @ id @ X166) @ id)))) | ~! [X167 : term] : (~($true = (X151 @ X167)) | ($true = (X151 @ (sub @ X152 @ (push @ X167 @ id))))) | ($true = (X151 @ (lam @ X152))))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((hoasinduction_lem3b = $true) <=> ! [X168 : term] : ~! [X169 : subst > term > term] : ((sub @ X168 @ (push @ one @ sh)) != (X169 @ sh @ one))) & (pushprop_lem1_gthm = $true) & (! [X170 : term,X171 : term,X172 : term,X173 : term] : ((X170 = X171) | ((ap @ (sub @ X172 @ id) @ X170) != (ap @ (sub @ X173 @ id) @ X171))) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X174 : subst > term > subst > $o,X175 : term > $o,X176 : term] : (((X175 @ (lam @ X176)) = $true) | ~! [X177 : term] : (~($true = (X175 @ X177)) | ((X175 @ (sub @ X176 @ (push @ X177 @ id))) = $true)) | ~! [X178 : subst > term > term] : (($true = (X174 @ id @ (lam @ (X178 @ sh @ one)) @ id)) | ~! [X179 : term] : (~((X174 @ id @ X179 @ id) = $true) | ($true = (X174 @ id @ (X178 @ id @ X179) @ id))) | ~! [X180 : subst,X181 : term,X182 : subst] : ((X178 @ (comp @ X182 @ X180) @ (sub @ X181 @ X180)) = (sub @ (X178 @ X182 @ X181) @ X180))) | ~! [X183 : term] : ((X175 @ X183) = (X174 @ id @ X183 @ id)))) & (pushprop_lem2v2_gthm = $true) & ((! [X184 : subst > term > subst > $o] : ~! [X185 : term > $o] : ~! [X186 : term] : ((X184 @ id @ X186 @ id) = (X185 @ X186)) => (! [X187 : term,X188 : term > $o] : (~! [X189 : term] : (((X188 @ (lam @ X189)) = $true) | ~! [X190 : term] : (($true = (X188 @ (sub @ X189 @ (push @ X190 @ id)))) | ~($true = (X188 @ X190)))) | ~! [X191 : term] : (($true = (X188 @ X191)) | ~((var @ X191) = $true)) | ~! [X192 : term,X193 : term] : (~($true = (X188 @ X193)) | ($true = (X188 @ (ap @ X192 @ X193))) | ~($true = (X188 @ X192))) | ($true = (X188 @ X187))) => (! [X194 : term] : ((sub @ X194 @ id) = X194) => (! [X195 : term > $o,X196 : subst > term > subst > $o,X197 : term] : (~! [X198 : term] : (((X195 @ (sub @ X197 @ (push @ X198 @ id))) = $true) | ~((X195 @ X198) = $true)) | ~! [X199 : subst > term > term] : (~! [X200 : term,X201 : subst,X202 : subst] : ((X199 @ (comp @ X202 @ X201) @ (sub @ X200 @ X201)) = (sub @ (X199 @ X202 @ X200) @ X201)) | ($true = (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) | ~! [X203 : term] : (((X196 @ id @ (X199 @ id @ X203) @ id) = $true) | ~($true = (X196 @ id @ X203 @ id)))) | ~! [X204 : term] : ((X195 @ X204) = (X196 @ id @ X204 @ id)) | ((X195 @ (lam @ X197)) = $true)) => ! [X205 : term,X206 : subst > term > subst > $o] : (~! [X207 : term,X208 : term] : (($true = (X206 @ id @ (ap @ (sub @ X207 @ id) @ X208) @ id)) | ~($true = (X206 @ id @ X207 @ id)) | ~((X206 @ id @ X208 @ id) = $true)) | ((X206 @ id @ X205 @ id) = $true) | ~! [X209 : subst > term > term] : (~! [X210 : subst,X211 : subst,X212 : term] : ((sub @ (X209 @ X211 @ X212) @ X210) = (X209 @ (comp @ X211 @ X210) @ (sub @ X212 @ X210))) | ($true = (X206 @ id @ (lam @ (X209 @ sh @ one)) @ id)) | ~! [X213 : term] : (~($true = (X206 @ id @ X213 @ id)) | ((X206 @ id @ (X209 @ id @ X213) @ id) = $true)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (hoasinduction_lem3_gthm = $true) & (! [X214 : subst > term > subst > $o,X215 : term] : (($true = (X214 @ id @ (lam @ (sub @ X215 @ (push @ one @ sh))) @ id)) | ~! [X216 : subst > term > term] : (~! [X217 : term] : (~($true = (X214 @ id @ X217 @ id)) | ($true = (X214 @ id @ (X216 @ id @ X217) @ id))) | ($true = (X214 @ id @ (lam @ (X216 @ sh @ one)) @ id)) | ~! [X218 : term,X219 : subst,X220 : subst] : ((sub @ (X216 @ X219 @ X218) @ X220) = (X216 @ (comp @ X219 @ X220) @ (sub @ X218 @ X220)))) | ~! [X221 : term] : (~((X214 @ id @ X221 @ id) = $true) | ($true = (X214 @ id @ (sub @ X215 @ (push @ X221 @ id)) @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & ((hoasinduction_lem2v2 = $true) <=> ! [X222 : term,X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (~((X224 @ X222) = $true) | ~! [X226 : subst,X227 : subst,X228 : term,X229 : subst] : (~($true = (X223 @ (comp @ X226 @ X229) @ (sub @ X228 @ X229) @ X227)) | ($true = (X223 @ X226 @ X228 @ (comp @ X229 @ X227)))) | ~! [X230 : subst,X231 : term,X232 : subst,X233 : subst] : (((X223 @ (comp @ X233 @ X230) @ (sub @ X231 @ X230) @ X232) = $true) | ~($true = (X223 @ X233 @ X231 @ (comp @ X230 @ X232)))) | ~($true = (X224 @ X225)) | ($true = (X224 @ (ap @ X222 @ X225))) | ~! [X234 : term] : ((X224 @ X234) = (X223 @ id @ X234 @ id)) | ~! [X235 : term,X236 : term] : (($true = (X223 @ id @ (ap @ (sub @ X236 @ id) @ X235) @ id)) | ~($true = (X223 @ id @ X236 @ id)) | ~($true = (X223 @ id @ X235 @ id))))) & (! [X237 : subst > term > subst > $o,X238 : term] : (~! [X239 : subst > term > term] : (~! [X240 : term,X241 : subst,X242 : subst] : ((sub @ (X239 @ X241 @ X240) @ X242) = (X239 @ (comp @ X241 @ X242) @ (sub @ X240 @ X242))) | ($true = (X237 @ id @ (lam @ (X239 @ sh @ one)) @ id)) | ~! [X243 : term] : (~($true = (X237 @ id @ X243 @ id)) | ($true = (X237 @ id @ (X239 @ id @ X243) @ id)))) | ~! [X244 : term] : (((X237 @ id @ (sub @ X238 @ (push @ X244 @ id)) @ id) = $true) | ~((X237 @ id @ X244 @ id) = $true)) | ($true = (X237 @ id @ (lam @ (sub @ X238 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa = $true)) & ((d2subst @ d_id) = sh) & ! [X245 : d_subst] : (d_id = X245) & (hoasinduction_lem2_gthm = $true) & (hoaslaminj_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((! [X246 : term,X247 : subst] : ((sub @ one @ (push @ X246 @ X247)) = X246) => (! [X248 : term,X249 : subst] : ((comp @ sh @ (push @ X248 @ X249)) = X249) => (! [X250 : subst] : ((comp @ X250 @ id) = X250) => (! [X251 : term,X252 : term > $o] : (~! [X253 : term] : (~($true = (var @ X253)) | ($true = (X252 @ X253))) | ($true = (X252 @ X251)) | ~! [X254 : term,X255 : term] : (~($true = (X252 @ X254)) | ($true = (X252 @ (ap @ X254 @ X255))) | ~((X252 @ X255) = $true)) | ~! [X256 : term] : (((X252 @ (lam @ X256)) = $true) | ~($true = (X252 @ X256)))) => ! [X257 : subst,X258 : term > $o,X259 : term] : (~! [X260 : term] : (~! [X261 : term] : (~($true = (X258 @ X261)) | ((X258 @ (sub @ X260 @ (push @ X261 @ id))) = $true)) | ($true = (X258 @ (lam @ X260)))) | ((X258 @ (sub @ X259 @ X257)) = $true) | ~! [X262 : term,X263 : term] : (~((X258 @ X262) = $true) | ($true = (X258 @ (ap @ X263 @ X262))) | ~($true = (X258 @ X263))) | ~! [X264 : term] : (($true = (X258 @ (sub @ X264 @ X257))) | ~($true = (var @ X264)))))))) <=> (induction2lem_lthm = $true)) & (hoasapinj1_gthm = $true) & (! [X265 : term > $o,X266 : subst,X267 : term,X268 : term,X269 : term > $o] : (((X269 @ (sub @ X268 @ (push @ X267 @ X266))) = $true) | ~($true = (X265 @ X268))) <=> (pushprop_lem1 = $true)) & (substmonoid_gthm = $true) & ~(ulamvar1 = $true) & ((! [X270 : term] : ((sub @ X270 @ id) = X270) => (! [X271 : term,X272 : term,X273 : term,X274 : term] : ((X271 = X274) | ((ap @ X274 @ X272) != (ap @ X271 @ X273))) => ! [X275 : term,X276 : term,X277 : term,X278 : term] : ((X276 = X277) | ((ap @ (sub @ X277 @ id) @ X275) != (ap @ (sub @ X276 @ id) @ X278))))) <=> (hoasapinj1_lthm = $true)) & ((termmset = $true) <=> ! [X279 : term] : ((sub @ X279 @ id) = X279)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X280 : subst > term > subst > $o,X281 : term] : (~! [X282 : subst > term > term] : (~! [X283 : term] : (~((X280 @ id @ X283 @ id) = $true) | ($true = (X280 @ id @ (X282 @ id @ X283) @ id))) | ($true = (X280 @ id @ (lam @ (X282 @ sh @ one)) @ id)) | ~! [X284 : subst,X285 : subst,X286 : term] : ((X282 @ (comp @ X284 @ X285) @ (sub @ X286 @ X285)) = (sub @ (X282 @ X284 @ X286) @ X285))) | ~! [X287 : term,X288 : term] : (~($true = (X280 @ id @ X288 @ id)) | ~($true = (X280 @ id @ X287 @ id)) | ($true = (X280 @ id @ (ap @ (sub @ X288 @ id) @ X287) @ id))) | ($true = (X280 @ id @ X281 @ id)))) & ((induction2lem = $true) <=> ! [X289 : term > $o,X290 : term,X291 : subst] : (($true = (X289 @ (sub @ X290 @ X291))) | ~! [X292 : term] : (~((var @ X292) = $true) | ($true = (X289 @ (sub @ X292 @ X291)))) | ~! [X293 : term] : (~! [X294 : term] : (($true = (X289 @ (sub @ X293 @ (push @ X294 @ id)))) | ~($true = (X289 @ X294))) | ((X289 @ (lam @ X293)) = $true)) | ~! [X295 : term,X296 : term] : (~((X289 @ X295) = $true) | ~($true = (X289 @ X296)) | ($true = (X289 @ (ap @ X296 @ X295)))))) & (induction2_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (! [X297 : subst > term > subst > $o,X298 : term] : (~! [X299 : subst > term > term] : (~! [X300 : subst,X301 : term,X302 : subst] : ((sub @ (X299 @ X300 @ X301) @ X302) = (X299 @ (comp @ X300 @ X302) @ (sub @ X301 @ X302))) | ~! [X303 : term] : (~($true = (X297 @ id @ X303 @ id)) | ($true = (X297 @ id @ (X299 @ id @ X303) @ id))) | ((X297 @ id @ (lam @ (X299 @ sh @ one)) @ id) = $true)) | ~! [X304 : term] : (((X297 @ id @ X304 @ id) = $true) | ~($true = (var @ (sub @ X304 @ id)))) | ((X297 @ id @ X298 @ id) = $true) | ~! [X305 : subst,X306 : term,X307 : subst,X308 : subst] : (~($true = (X297 @ X308 @ X306 @ (comp @ X305 @ X307))) | ($true = (X297 @ (comp @ X308 @ X305) @ (sub @ X306 @ X305) @ X307))) | ~! [X309 : term,X310 : term] : (((X297 @ id @ (ap @ (sub @ X310 @ id) @ X309) @ id) = $true) | ~($true = (X297 @ id @ X310 @ id)) | ~((X297 @ id @ X309 @ id) = $true)) | ~! [X311 : subst,X312 : subst,X313 : subst,X314 : term] : (~($true = (X297 @ (comp @ X311 @ X313) @ (sub @ X314 @ X313) @ X312)) | ($true = (X297 @ X311 @ X314 @ (comp @ X313 @ X312))))) <=> (hoasinduction = $true)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X315 : term] : ~! [X316 : subst > term > term] : ~! [X317 : subst,X318 : term] : ((sub @ X315 @ (push @ X318 @ X317)) = (X316 @ X317 @ X318)) => (! [X319 : term] : ((sub @ X319 @ id) = X319) => ! [X320 : subst > term > subst > $o,X321 : term,X322 : term > $o] : (((X322 @ (lam @ X321)) = $true) | ~! [X323 : term] : (($true = (X322 @ (sub @ X321 @ (push @ X323 @ id)))) | ~($true = (X322 @ X323))) | ~! [X324 : subst > term > term] : (~! [X325 : term] : (~($true = (X320 @ id @ X325 @ id)) | ($true = (X320 @ id @ (X324 @ id @ X325) @ id))) | ($true = (X320 @ id @ (lam @ (X324 @ sh @ one)) @ id)) | ~! [X326 : subst,X327 : subst,X328 : term] : ((sub @ (X324 @ X327 @ X328) @ X326) = (X324 @ (comp @ X327 @ X326) @ (sub @ X328 @ X326)))) | ~! [X329 : term] : ((X322 @ X329) = (X320 @ id @ X329 @ id)))))) & ((! [X330 : subst > term > subst > $o] : ~! [X331 : term > $o] : ~! [X332 : term] : ((X331 @ X332) = (X330 @ id @ X332 @ id)) => (! [X333 : term > $o,X334 : term] : (~! [X335 : term] : (~! [X336 : term] : (($true = (X333 @ (sub @ X335 @ (push @ X336 @ id)))) | ~($true = (X333 @ X336))) | ($true = (X333 @ (lam @ X335)))) | ~! [X337 : term,X338 : term] : (~($true = (X333 @ X337)) | ((X333 @ (ap @ X338 @ X337)) = $true) | ~((X333 @ X338) = $true)) | ($true = (X333 @ X334)) | ~! [X339 : term] : (($true = (X333 @ X339)) | ~($true = (var @ X339)))) => (! [X340 : term] : ((sub @ X340 @ id) = X340) => (! [X341 : subst > term > subst > $o,X342 : term,X343 : term > $o] : (~! [X344 : term] : (($true = (X343 @ (sub @ X342 @ (push @ X344 @ id)))) | ~($true = (X343 @ X344))) | ~! [X345 : subst > term > term] : (~! [X346 : subst,X347 : term,X348 : subst] : ((sub @ (X345 @ X348 @ X347) @ X346) = (X345 @ (comp @ X348 @ X346) @ (sub @ X347 @ X346))) | ($true = (X341 @ id @ (lam @ (X345 @ sh @ one)) @ id)) | ~! [X349 : term] : (~((X341 @ id @ X349 @ id) = $true) | ($true = (X341 @ id @ (X345 @ id @ X349) @ id)))) | ~! [X350 : term] : ((X341 @ id @ X350 @ id) = (X343 @ X350)) | ($true = (X343 @ (lam @ X342)))) => ! [X351 : subst > term > subst > $o,X352 : term] : (~! [X353 : subst,X354 : subst,X355 : subst,X356 : term] : (~($true = (X351 @ X353 @ X356 @ (comp @ X354 @ X355))) | ($true = (X351 @ (comp @ X353 @ X354) @ (sub @ X356 @ X354) @ X355))) | ~! [X357 : term,X358 : term] : (~((X351 @ id @ X358 @ id) = $true) | ($true = (X351 @ id @ (ap @ (sub @ X358 @ id) @ X357) @ id)) | ~((X351 @ id @ X357 @ id) = $true)) | ~! [X359 : term] : (((X351 @ id @ X359 @ id) = $true) | ~($true = (var @ (sub @ X359 @ id)))) | ~! [X360 : subst > term > term] : (~! [X361 : term] : (($true = (X351 @ id @ (X360 @ id @ X361) @ id)) | ~($true = (X351 @ id @ X361 @ id))) | ($true = (X351 @ id @ (lam @ (X360 @ sh @ one)) @ id)) | ~! [X362 : subst,X363 : term,X364 : subst] : ((sub @ (X360 @ X364 @ X363) @ X362) = (X360 @ (comp @ X364 @ X362) @ (sub @ X363 @ X362)))) | ($true = (X351 @ id @ X352 @ id)) | ~! [X365 : subst,X366 : subst,X367 : term,X368 : subst] : (($true = (X351 @ X365 @ X367 @ (comp @ X368 @ X366))) | ~($true = (X351 @ (comp @ X365 @ X368) @ (sub @ X367 @ X368) @ X366)))))))) <=> (hoasinduction_lthm_3 = $true)) & (pushprop_lthm_orig = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X369 : term] : ((sub @ X369 @ id) = X369) => (! [X370 : subst > term > subst > $o,X371 : term] : (~! [X372 : subst > term > term] : (((X370 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ~! [X373 : term] : (~($true = (X370 @ id @ X373 @ id)) | ($true = (X370 @ id @ (X372 @ id @ X373) @ id))) | ~! [X374 : subst,X375 : subst,X376 : term] : ((X372 @ (comp @ X374 @ X375) @ (sub @ X376 @ X375)) = (sub @ (X372 @ X374 @ X376) @ X375))) | ~! [X377 : term] : (((X370 @ id @ (sub @ X371 @ (push @ X377 @ id)) @ id) = $true) | ~($true = (X370 @ id @ X377 @ id))) | ($true = (X370 @ id @ (lam @ (sub @ X371 @ (push @ one @ sh))) @ id))) => ! [X378 : term,X379 : subst > term > subst > $o] : (~! [X380 : term] : (((X379 @ id @ (sub @ X378 @ (push @ X380 @ id)) @ id) = $true) | ~($true = (X379 @ id @ X380 @ id))) | ((X379 @ id @ (lam @ X378) @ id) = $true) | ~! [X381 : subst > term > term] : (($true = (X379 @ id @ (lam @ (X381 @ sh @ one)) @ id)) | ~! [X382 : subst,X383 : subst,X384 : term] : ((X381 @ (comp @ X383 @ X382) @ (sub @ X384 @ X382)) = (sub @ (X381 @ X383 @ X384) @ X382)) | ~! [X385 : term] : (~($true = (X379 @ id @ X385 @ id)) | ($true = (X379 @ id @ (X381 @ id @ X385) @ id)))))))) & (axassoc = $true) & ((! [X386 : term,X387 : term > $o] : (~! [X388 : term] : (~($true = (var @ X388)) | ((X387 @ X388) = $true)) | ($true = (X387 @ X386)) | ~! [X389 : term] : (~! [X390 : term] : (($true = (X387 @ (sub @ X389 @ (push @ X390 @ id)))) | ~((X387 @ X390) = $true)) | ($true = (X387 @ (lam @ X389)))) | ~! [X391 : term,X392 : term] : (((X387 @ (ap @ X392 @ X391)) = $true) | ~($true = (X387 @ X391)) | ~((X387 @ X392) = $true))) => (! [X393 : term,X394 : term,X395 : subst > term > subst > $o] : (~($true = (X395 @ id @ X393 @ id)) | ((X395 @ id @ (ap @ X394 @ X393) @ id) = $true) | ~($true = (X395 @ id @ X394 @ id)) | ~! [X396 : term,X397 : term] : (((X395 @ id @ (ap @ (sub @ X396 @ id) @ X397) @ id) = $true) | ~((X395 @ id @ X397 @ id) = $true) | ~($true = (X395 @ id @ X396 @ id))) | ~! [X398 : term,X399 : subst,X400 : subst,X401 : subst] : (~($true = (X395 @ (comp @ X401 @ X400) @ (sub @ X398 @ X400) @ X399)) | ($true = (X395 @ X401 @ X398 @ (comp @ X400 @ X399)))) | ~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (~($true = (X395 @ X403 @ X405 @ (comp @ X404 @ X402))) | ((X395 @ (comp @ X403 @ X404) @ (sub @ X405 @ X404) @ X402) = $true))) => (! [X406 : subst > term > subst > $o,X407 : term] : (~! [X408 : term] : (($true = (X406 @ id @ (sub @ X407 @ (push @ X408 @ id)) @ id)) | ~($true = (X406 @ id @ X408 @ id))) | ~! [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (($true = (X406 @ X409 @ X412 @ (comp @ X411 @ X410))) | ~((X406 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410) = $true)) | ($true = (X406 @ id @ (lam @ X407) @ id)) | ~! [X413 : subst,X414 : term,X415 : subst,X416 : subst] : (((X406 @ (comp @ X413 @ X416) @ (sub @ X414 @ X416) @ X415) = $true) | ~($true = (X406 @ X413 @ X414 @ (comp @ X416 @ X415)))) | ~! [X417 : subst > term > term] : (($true = (X406 @ id @ (lam @ (X417 @ sh @ one)) @ id)) | ~! [X418 : subst,X419 : term,X420 : subst] : ((X417 @ (comp @ X420 @ X418) @ (sub @ X419 @ X418)) = (sub @ (X417 @ X420 @ X419) @ X418)) | ~! [X421 : term] : (($true = (X406 @ id @ (X417 @ id @ X421) @ id)) | ~($true = (X406 @ id @ X421 @ id))))) => ! [X422 : term,X423 : subst > term > subst > $o] : (~! [X424 : term,X425 : subst,X426 : subst,X427 : subst] : (~($true = (X423 @ (comp @ X425 @ X427) @ (sub @ X424 @ X427) @ X426)) | ($true = (X423 @ X425 @ X424 @ (comp @ X427 @ X426)))) | ((X423 @ id @ X422 @ id) = $true) | ~! [X428 : term,X429 : term] : (~($true = (X423 @ id @ X429 @ id)) | ~((X423 @ id @ X428 @ id) = $true) | ((X423 @ id @ (ap @ (sub @ X429 @ id) @ X428) @ id) = $true)) | ~! [X430 : term] : (~($true = (var @ (sub @ X430 @ id))) | ($true = (X423 @ id @ X430 @ id))) | ~! [X431 : term,X432 : subst,X433 : subst,X434 : subst] : (($true = (X423 @ (comp @ X432 @ X434) @ (sub @ X431 @ X434) @ X433)) | ~($true = (X423 @ X432 @ X431 @ (comp @ X434 @ X433)))) | ~! [X435 : subst > term > term] : (~! [X436 : term] : (~($true = (X423 @ id @ X436 @ id)) | ($true = (X423 @ id @ (X435 @ id @ X436) @ id))) | ($true = (X423 @ id @ (lam @ (X435 @ sh @ one)) @ id)) | ~! [X437 : term,X438 : subst,X439 : subst] : ((sub @ (X435 @ X438 @ X437) @ X439) = (X435 @ (comp @ X438 @ X439) @ (sub @ X437 @ X439)))))))) <=> (hoasinduction_lthm = $true)) & (pushprop = $true) & (hoaslamnotap_gthm = $true) & (hoaslamnotvar_lthm = $true) & (axapp = $true) & (! [X440 : subst > term > subst > $o,X441 : term] : (~! [X442 : subst,X443 : subst,X444 : subst,X445 : term] : (($true = (X440 @ (comp @ X442 @ X444) @ (sub @ X445 @ X444) @ X443)) | ~($true = (X440 @ X442 @ X445 @ (comp @ X444 @ X443)))) | ~! [X446 : term] : (~($true = (X440 @ id @ X446 @ id)) | ((X440 @ id @ (sub @ X441 @ (push @ X446 @ id)) @ id) = $true)) | ($true = (X440 @ id @ (lam @ X441) @ id)) | ~! [X447 : term,X448 : subst,X449 : subst,X450 : subst] : (~($true = (X440 @ (comp @ X450 @ X449) @ (sub @ X447 @ X449) @ X448)) | ((X440 @ X450 @ X447 @ (comp @ X449 @ X448)) = $true)) | ~! [X451 : subst > term > term] : (($true = (X440 @ id @ (lam @ (X451 @ sh @ one)) @ id)) | ~! [X452 : subst,X453 : subst,X454 : term] : ((sub @ (X451 @ X453 @ X454) @ X452) = (X451 @ (comp @ X453 @ X452) @ (sub @ X454 @ X452))) | ~! [X455 : term] : (((X440 @ id @ (X451 @ id @ X455) @ id) = $true) | ~($true = (X440 @ id @ X455 @ id))))) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((pushprop_lem0_lthm = $true) <=> ! [X456 : subst,X457 : term,X458 : term > $o] : ~! [X459 : term > $o] : ~! [X460 : term] : ((X459 @ X460) = (X458 @ (sub @ X460 @ (push @ X457 @ X456))))) & ((pushprop_lem1_lthm = $true) <=> (! [X461 : subst,X462 : term] : ((sub @ one @ (push @ X462 @ X461)) = X462) => (! [X463 : term,X464 : subst] : ((comp @ sh @ (push @ X463 @ X464)) = X464) => ! [X465 : term > $o,X466 : subst,X467 : term,X468 : term > $o,X469 : term] : (($true = (X468 @ (sub @ X467 @ (push @ X469 @ X466)))) | ~($true = (X465 @ X467)))))) & ((axvarid = $true) <=> ! [X470 : term] : ((sub @ X470 @ id) = X470)) & (! [X471 : subst > term > subst > $o] : ~! [X472 : term > $o] : ~! [X473 : term] : ((X472 @ X473) = (X471 @ id @ X473 @ id)) <=> (hoasinduction_lem0_lthm = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X474 : term,X475 : subst] : ((sub @ one @ (push @ X474 @ X475)) = X474) => (! [X476 : subst,X477 : term] : ((comp @ sh @ (push @ X477 @ X476)) = X476) => (! [X478 : term,X479 : term] : (((lam @ X478) != (lam @ X479)) | (X478 = X479)) => ! [X480 : term,X481 : subst > term > term,X482 : subst,X483 : subst > term > term] : (~! [X484 : term,X485 : subst,X486 : subst] : ((X481 @ (comp @ X485 @ X486) @ (sub @ X484 @ X486)) = (sub @ (X481 @ X485 @ X484) @ X486)) | ~! [X487 : subst,X488 : subst,X489 : term] : ((X483 @ (comp @ X488 @ X487) @ (sub @ X489 @ X487)) = (sub @ (X483 @ X488 @ X489) @ X487)) | ((X483 @ X482 @ X480) = (X481 @ X482 @ X480)) | ((lam @ (X481 @ sh @ one)) != (lam @ (X483 @ sh @ one)))))))) & ((termmset_lthm = $true) <=> (! [X490 : term] : ((sub @ X490 @ id) = X490) => ! [X491 : term] : ((sub @ X491 @ id) = X491))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ! [X492 : d_subst,X493 : d_subst] : (((d2subst @ X493) = (d2subst @ X492)) => (X492 = X493)) & ((hoasinduction_lem3_lthm = $true) <=> (! [X494 : term] : ((sub @ X494 @ id) = X494) => (! [X495 : subst > term > subst > $o,X496 : term] : (($true = (X495 @ id @ (lam @ (sub @ X496 @ (push @ one @ sh))) @ id)) | ~! [X497 : term] : (($true = (X495 @ id @ (sub @ X496 @ (push @ X497 @ id)) @ id)) | ~($true = (X495 @ id @ X497 @ id))) | ~! [X498 : subst > term > term] : (~! [X499 : subst,X500 : subst,X501 : term] : ((sub @ (X498 @ X499 @ X501) @ X500) = (X498 @ (comp @ X499 @ X500) @ (sub @ X501 @ X500))) | ($true = (X495 @ id @ (lam @ (X498 @ sh @ one)) @ id)) | ~! [X502 : term] : (~((X495 @ id @ X502 @ id) = $true) | ($true = (X495 @ id @ (X498 @ id @ X502) @ id))))) => ! [X503 : term,X504 : subst > term > subst > $o] : (($true = (X504 @ id @ (lam @ X503) @ id)) | ~! [X505 : term,X506 : subst,X507 : subst,X508 : subst] : (~((X504 @ (comp @ X507 @ X506) @ (sub @ X505 @ X506) @ X508) = $true) | ($true = (X504 @ X507 @ X505 @ (comp @ X506 @ X508)))) | ~! [X509 : term] : (($true = (X504 @ id @ (sub @ X503 @ (push @ X509 @ id)) @ id)) | ~($true = (X504 @ id @ X509 @ id))) | ~! [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (((X504 @ (comp @ X513 @ X511) @ (sub @ X510 @ X511) @ X512) = $true) | ~($true = (X504 @ X513 @ X510 @ (comp @ X511 @ X512)))) | ~! [X514 : subst > term > term] : (~! [X515 : term] : (~($true = (X504 @ id @ X515 @ id)) | ($true = (X504 @ id @ (X514 @ id @ X515) @ id))) | ~! [X516 : subst,X517 : subst,X518 : term] : ((X514 @ (comp @ X517 @ X516) @ (sub @ X518 @ X516)) = (sub @ (X514 @ X517 @ X518) @ X516)) | ($true = (X504 @ id @ (lam @ (X514 @ sh @ one)) @ id))))))) & (one = (d2term @ d_one)) & (! [X519 : term] : ~! [X520 : subst > term > term] : ~! [X521 : term,X522 : subst] : ((sub @ X519 @ (push @ X521 @ X522)) = (X520 @ X522 @ X521)) <=> (hoasinduction_lem3v2_f = $true)) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) => ! [X525 : subst,X526 : term > $o,X527 : term > $o,X528 : term] : (~($true = (X527 @ X528)) | ~! [X529 : term] : ((X527 @ (sub @ X529 @ (push @ X528 @ X525))) = (X526 @ X529)) | ($true = (X526 @ one))))) & (hoasapnotvar = $true) & (pushprop_lem0_gthm = $true) & (pushprop_lem3v2 = $true) & ! [X530 : subst] : ? [X531 : d_subst] : ((d2subst @ X531) = X530) & ((hoasapinj1 = $true) <=> ! [X532 : term,X533 : term,X534 : term,X535 : term] : (((ap @ (sub @ X532 @ id) @ X534) != (ap @ (sub @ X535 @ id) @ X533)) | (X532 = X535))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X536 : term] : ~! [X537 : subst > term > term] : ((X537 @ sh @ one) != (sub @ X536 @ (push @ one @ sh)))) & (axmap = $true) & (pushprop_lem3v2_lthm = $true) & (hoasapnotvar_lthm = $true) & (hoasapnotvar_gthm = $true) & ((axidl = $true) <=> ! [X538 : subst] : ((comp @ id @ X538) = X538)) & ((axidr = $true) <=> ! [X539 : subst] : ((comp @ X539 @ id) = X539)) & ~((var @ (d2term @ d_one)) = $true) & (apnotvar = $true) & ~(lamnotap = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((laminj = $true) <=> ! [X540 : term,X541 : term] : (((lam @ X541) != (lam @ X540)) | (X540 = X541))) & ((axvarcons = $true) <=> ! [X542 : subst,X543 : term] : ((sub @ one @ (push @ X543 @ X542)) = X543)) & (hoaslamnotvar = $true) & (hoasapinj2_gthm = $true) & (! [X544 : subst > term > term,X545 : term,X546 : term] : (((ap @ (sub @ X545 @ id) @ X546) != (lam @ (X544 @ sh @ one))) | ~! [X547 : subst,X548 : subst,X549 : term] : ((X544 @ (comp @ X547 @ X548) @ (sub @ X549 @ X548)) = (sub @ (X544 @ X547 @ X549) @ X548))) <=> (hoaslamnotap = $true))),
% 2.63/1.98    inference(fool_elimination,[status(thm)],[f7])).
% 2.63/1.98  thf(f7,plain,(
% 2.63/1.98    (! [X0 : term,X1 : term > $o] : ((X1 @ X0) | ~! [X2 : term,X3 : term] : (~(X1 @ X3) | ~(X1 @ X2) | (X1 @ (ap @ X3 @ X2))) | ~! [X4 : term] : ((X1 @ (lam @ X4)) | ~! [X5 : term] : (~(X1 @ X5) | (X1 @ (sub @ X4 @ (push @ X5 @ id))))) | ~! [X6 : term] : (~(var @ X6) | (X1 @ X6))) <=> induction2) & hoasinduction_lem1v2_gthm & (pushprop_lem1v2 <=> ! [X7 : term > $o,X8 : subst,X9 : term > $o,X10 : term] : (~(X9 @ X10) | ~! [X11 : term] : ((X7 @ X11) = (X9 @ (sub @ X11 @ (push @ X10 @ X8)))) | (X7 @ one))) & (! [X12 : subst > term > term,X13 : subst,X14 : term,X15 : subst > term > term] : (~! [X16 : term,X17 : subst,X18 : subst] : ((sub @ (X12 @ X17 @ X16) @ X18) = (X12 @ (comp @ X17 @ X18) @ (sub @ X16 @ X18))) | ~! [X19 : subst,X20 : term,X21 : subst] : ((sub @ (X15 @ X19 @ X20) @ X21) = (X15 @ (comp @ X19 @ X21) @ (sub @ X20 @ X21))) | ((lam @ (X12 @ sh @ one)) != (lam @ (X15 @ sh @ one))) | ((X12 @ X13 @ X14) = (X15 @ X13 @ X14))) <=> hoaslaminj) & axclos & (! [X22 : subst > term > subst > $o,X23 : term] : ((X22 @ id @ (lam @ X23) @ id) | ~! [X24 : term] : (~(X22 @ id @ X24 @ id) | (X22 @ id @ (sub @ X23 @ (push @ X24 @ id)) @ id)) | ~! [X25 : subst > term > term] : (~! [X26 : subst,X27 : term,X28 : subst] : ((X25 @ (comp @ X28 @ X26) @ (sub @ X27 @ X26)) = (sub @ (X25 @ X28 @ X27) @ X26)) | (X22 @ id @ (lam @ (X25 @ sh @ one)) @ id) | ~! [X29 : term] : ((X22 @ id @ (X25 @ id @ X29) @ id) | ~(X22 @ id @ X29 @ id)))) <=> hoasinduction_lem3a) & (hoasapinj2_lthm <=> (! [X30 : term,X31 : term,X32 : term,X33 : term] : ((X31 = X33) | ((ap @ X32 @ X33) != (ap @ X30 @ X31))) => ! [X34 : term,X35 : term,X36 : term,X37 : term] : ((X36 = X37) | ((ap @ (sub @ X35 @ id) @ X37) != (ap @ (sub @ X34 @ id) @ X36))))) & ((^[X38 : term, X39 : subst, X40 : term > $o, X41 : term > $o] : (! [X42 : term] : ((X40 @ (sub @ X42 @ (push @ X38 @ X39))) = (X41 @ X42)))) = pushprop_p_and_p_prime) & hoaslamnotvar_gthm & ! [X43 : d_term] : (d_one = X43) & hoasinduction_lem1_gthm & ! [X44 : term] : ? [X45 : d_term] : ((d2term @ X45) = X44) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & hoaslamnotap_lthm & hoasinduction_lem3b_gthm & hoasinduction_lem2v2_gthm & (substmonoid_lthm <=> (! [X46 : subst] : ((comp @ id @ X46) = X46) => (! [X47 : subst] : ((comp @ X47 @ id) = X47) => (! [X48 : subst] : ((comp @ id @ X48) = X48) & ! [X49 : subst] : ((comp @ X49 @ id) = X49))))) & hoasinduction_lem1_lthm & axabs & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & ((^[X50 : subst, X51 : subst > term > term] : (d2term @ d_one)) = hoaslam) & termmset_gthm & pushprop_lem1v2_gthm & (! [X52 : subst,X53 : term] : ((comp @ sh @ (push @ X53 @ X52)) = X52) <=> axshiftcons) & (hoasinduction_lem0 <=> ! [X54 : subst > term > subst > $o] : ~! [X55 : term > $o] : ~! [X56 : term] : ((X54 @ id @ X56 @ id) = (X55 @ X56))) & pushprop_lthm & (! [X57 : term,X58 : term] : (((sub @ X57 @ sh) != (sub @ X58 @ sh)) | (X57 = X58)) <=> shinj) & (hoasinduction_lem3aaa <=> ! [X59 : term,X60 : subst > term > subst > $o] : ((X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id) | ~! [X61 : term,X62 : subst > term > term] : (~! [X63 : subst,X64 : subst,X65 : term] : ((X62 @ (comp @ X63 @ X64) @ (sub @ X65 @ X64)) = (sub @ X61 @ (push @ (sub @ X65 @ X64) @ (comp @ X63 @ X64)))) | ~! [X66 : term] : (~(X60 @ id @ X66 @ id) | (X60 @ id @ (X62 @ id @ X66) @ id)) | (X60 @ id @ (lam @ (X62 @ sh @ one)) @ id) | ~! [X67 : subst,X68 : subst,X69 : term] : ((sub @ (X62 @ X68 @ X69) @ X67) = (sub @ (sub @ X61 @ (push @ X69 @ X68)) @ X67))) | ~! [X70 : term] : (~(X60 @ id @ X70 @ id) | (X60 @ id @ (sub @ X59 @ (push @ X70 @ id)) @ id)))) & pushprop_lem2v2 & lamnotvar & (! [X71 : term,X72 : term > $o,X73 : subst > term > subst > $o] : (~! [X74 : subst,X75 : term,X76 : subst,X77 : subst] : ((X73 @ (comp @ X77 @ X74) @ (sub @ X75 @ X74) @ X76) | ~(X73 @ X77 @ X75 @ (comp @ X74 @ X76))) | ~! [X78 : subst,X79 : term,X80 : subst,X81 : subst] : ((X73 @ X81 @ X79 @ (comp @ X78 @ X80)) | ~(X73 @ (comp @ X81 @ X78) @ (sub @ X79 @ X78) @ X80)) | ~! [X82 : subst > term > term] : (~! [X83 : term] : ((X73 @ id @ (X82 @ id @ X83) @ id) | ~(X73 @ id @ X83 @ id)) | (X73 @ id @ (lam @ (X82 @ sh @ one)) @ id) | ~! [X84 : subst,X85 : subst,X86 : term] : ((X82 @ (comp @ X84 @ X85) @ (sub @ X86 @ X85)) = (sub @ (X82 @ X84 @ X86) @ X85))) | ~! [X87 : term] : (~(X72 @ X87) | (X72 @ (sub @ X71 @ (push @ X87 @ id)))) | (X72 @ (lam @ X71)) | ~! [X88 : term] : ((X73 @ id @ X88 @ id) = (X72 @ X88))) <=> hoasinduction_lem3v2) & (substmonoid <=> (! [X89 : subst] : ((comp @ id @ X89) = X89) & ! [X90 : subst] : ((comp @ X90 @ id) = X90))) & ! [X91 : d_term,X92 : d_term] : (((d2term @ X91) = (d2term @ X92)) => (X91 = X92)) & ((d2subst @ d_id) = id) & hoasinduction_lem3v2_gthm & ulamvarind & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X93 : subst] : ((push @ (sub @ one @ X93) @ (comp @ sh @ X93)) = X93) <=> axscons) & ulamvarsh & ((! [X94 : term] : ((sub @ X94 @ id) = X94) => (! [X95 : term,X96 : term > $o,X97 : subst] : (~! [X98 : term] : (~! [X99 : term] : ((X96 @ (sub @ X98 @ (push @ X99 @ id))) | ~(X96 @ X99)) | (X96 @ (lam @ X98))) | (X96 @ (sub @ X95 @ X97)) | ~! [X100 : term] : (~(var @ X100) | (X96 @ (sub @ X100 @ X97))) | ~! [X101 : term,X102 : term] : (~(X96 @ X101) | ~(X96 @ X102) | (X96 @ (ap @ X101 @ X102)))) => ! [X103 : term > $o,X104 : term] : (~! [X105 : term] : ((X103 @ (lam @ X105)) | ~! [X106 : term] : ((X103 @ (sub @ X105 @ (push @ X106 @ id))) | ~(X103 @ X106))) | ~! [X107 : term,X108 : term] : ((X103 @ (ap @ X107 @ X108)) | ~(X103 @ X108) | ~(X103 @ X107)) | (X103 @ X104) | ~! [X109 : term] : (~(var @ X109) | (X103 @ X109))))) <=> induction2_lthm) & (hoasinduction_lem3v2_f_lthm <=> ! [X110 : term] : ~! [X111 : subst > term > term] : ~! [X112 : term,X113 : subst] : ((X111 @ X113 @ X112) = (sub @ X110 @ (push @ X112 @ X113)))) & (hoasinduction_lem2 <=> ! [X114 : term,X115 : subst > term > subst > $o,X116 : term] : (~! [X117 : subst,X118 : subst,X119 : subst,X120 : term] : ((X115 @ (comp @ X119 @ X118) @ (sub @ X120 @ X118) @ X117) | ~(X115 @ X119 @ X120 @ (comp @ X118 @ X117))) | ~! [X121 : term,X122 : term] : (~(X115 @ id @ X121 @ id) | (X115 @ id @ (ap @ (sub @ X121 @ id) @ X122) @ id) | ~(X115 @ id @ X122 @ id)) | ~(X115 @ id @ X114 @ id) | ~(X115 @ id @ X116 @ id) | ~! [X123 : subst,X124 : subst,X125 : subst,X126 : term] : (~(X115 @ (comp @ X124 @ X123) @ (sub @ X126 @ X123) @ X125) | (X115 @ X124 @ X126 @ (comp @ X123 @ X125))) | (X115 @ id @ (ap @ X116 @ X114) @ id))) & (! [X127 : term,X128 : term > $o] : (~! [X129 : term,X130 : term] : (~(X128 @ X129) | (X128 @ (ap @ X130 @ X129)) | ~(X128 @ X130)) | (X128 @ X127) | ~! [X131 : term] : (~(X128 @ X131) | (X128 @ (lam @ X131))) | ~! [X132 : term] : (~(var @ X132) | (X128 @ X132))) <=> induction) & pushprop_lem2v2_lthm & ((^[X133 : subst > term > subst > $o, X134 : term > $o] : (! [X135 : term] : ((X133 @ id @ X135 @ id) = (X134 @ X135)))) = hoasinduction_p_and_p_prime) & (! [X136 : term,X137 : term,X138 : term,X139 : term] : (((ap @ X138 @ X136) != (ap @ X139 @ X137)) | (X138 = X139)) <=> apinj1) & hoasinduction_lem1v2 & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & hoasinduction_lem1 & (! [X140 : term,X141 : subst,X142 : term > $o] : ~! [X143 : term > $o] : ~! [X144 : term] : ((X142 @ (sub @ X144 @ (push @ X140 @ X141))) = (X143 @ X144)) <=> pushprop_lem0) & (apinj2 <=> ! [X145 : term,X146 : term,X147 : term,X148 : term] : (((ap @ X145 @ X147) != (ap @ X146 @ X148)) | (X147 = X148))) & ((! [X149 : term] : ((sub @ X149 @ id) = X149) => ! [X150 : subst > term > subst > $o,X151 : term > $o,X152 : term] : (~! [X153 : term] : ((X150 @ id @ X153 @ id) = (X151 @ X153)) | ~! [X154 : subst,X155 : term,X156 : subst,X157 : subst] : (~(X150 @ (comp @ X157 @ X154) @ (sub @ X155 @ X154) @ X156) | (X150 @ X157 @ X155 @ (comp @ X154 @ X156))) | ~! [X158 : subst,X159 : subst,X160 : term,X161 : subst] : ((X150 @ (comp @ X161 @ X159) @ (sub @ X160 @ X159) @ X158) | ~(X150 @ X161 @ X160 @ (comp @ X159 @ X158))) | ~! [X162 : subst > term > term] : ((X150 @ id @ (lam @ (X162 @ sh @ one)) @ id) | ~! [X163 : term,X164 : subst,X165 : subst] : ((sub @ (X162 @ X164 @ X163) @ X165) = (X162 @ (comp @ X164 @ X165) @ (sub @ X163 @ X165))) | ~! [X166 : term] : (~(X150 @ id @ X166 @ id) | (X150 @ id @ (X162 @ id @ X166) @ id))) | ~! [X167 : term] : (~(X151 @ X167) | (X151 @ (sub @ X152 @ (push @ X167 @ id)))) | (X151 @ (lam @ X152)))) <=> hoasinduction_lem3v2_lthm) & (hoasinduction_lem3b <=> ! [X168 : term] : ~! [X169 : subst > term > term] : ((sub @ X168 @ (push @ one @ sh)) != (X169 @ sh @ one))) & pushprop_lem1_gthm & (! [X170 : term,X171 : term,X172 : term,X173 : term] : ((X170 = X171) | ((ap @ (sub @ X172 @ id) @ X170) != (ap @ (sub @ X173 @ id) @ X171))) <=> hoasapinj2) & (hoasinduction_lem3v2a <=> ! [X174 : subst > term > subst > $o,X175 : term > $o,X176 : term] : ((X175 @ (lam @ X176)) | ~! [X177 : term] : (~(X175 @ X177) | (X175 @ (sub @ X176 @ (push @ X177 @ id)))) | ~! [X178 : subst > term > term] : ((X174 @ id @ (lam @ (X178 @ sh @ one)) @ id) | ~! [X179 : term] : (~(X174 @ id @ X179 @ id) | (X174 @ id @ (X178 @ id @ X179) @ id)) | ~! [X180 : subst,X181 : term,X182 : subst] : ((X178 @ (comp @ X182 @ X180) @ (sub @ X181 @ X180)) = (sub @ (X178 @ X182 @ X181) @ X180))) | ~! [X183 : term] : ((X175 @ X183) = (X174 @ id @ X183 @ id)))) & pushprop_lem2v2_gthm & ((! [X184 : subst > term > subst > $o] : ~! [X185 : term > $o] : ~! [X186 : term] : ((X184 @ id @ X186 @ id) = (X185 @ X186)) => (! [X187 : term,X188 : term > $o] : (~! [X189 : term] : ((X188 @ (lam @ X189)) | ~! [X190 : term] : ((X188 @ (sub @ X189 @ (push @ X190 @ id))) | ~(X188 @ X190))) | ~! [X191 : term] : ((X188 @ X191) | ~(var @ X191)) | ~! [X192 : term,X193 : term] : (~(X188 @ X193) | (X188 @ (ap @ X192 @ X193)) | ~(X188 @ X192)) | (X188 @ X187)) => (! [X194 : term] : ((sub @ X194 @ id) = X194) => (! [X195 : term > $o,X196 : subst > term > subst > $o,X197 : term] : (~! [X198 : term] : ((X195 @ (sub @ X197 @ (push @ X198 @ id))) | ~(X195 @ X198)) | ~! [X199 : subst > term > term] : (~! [X200 : term,X201 : subst,X202 : subst] : ((X199 @ (comp @ X202 @ X201) @ (sub @ X200 @ X201)) = (sub @ (X199 @ X202 @ X200) @ X201)) | (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id) | ~! [X203 : term] : ((X196 @ id @ (X199 @ id @ X203) @ id) | ~(X196 @ id @ X203 @ id))) | ~! [X204 : term] : ((X195 @ X204) = (X196 @ id @ X204 @ id)) | (X195 @ (lam @ X197))) => ! [X205 : term,X206 : subst > term > subst > $o] : (~! [X207 : term,X208 : term] : ((X206 @ id @ (ap @ (sub @ X207 @ id) @ X208) @ id) | ~(X206 @ id @ X207 @ id) | ~(X206 @ id @ X208 @ id)) | (X206 @ id @ X205 @ id) | ~! [X209 : subst > term > term] : (~! [X210 : subst,X211 : subst,X212 : term] : ((sub @ (X209 @ X211 @ X212) @ X210) = (X209 @ (comp @ X211 @ X210) @ (sub @ X212 @ X210))) | (X206 @ id @ (lam @ (X209 @ sh @ one)) @ id) | ~! [X213 : term] : (~(X206 @ id @ X213 @ id) | (X206 @ id @ (X209 @ id @ X213) @ id)))))))) <=> hoasinduction_no_psi_cond_lthm) & hoasinduction_lem3_gthm & (! [X214 : subst > term > subst > $o,X215 : term] : ((X214 @ id @ (lam @ (sub @ X215 @ (push @ one @ sh))) @ id) | ~! [X216 : subst > term > term] : (~! [X217 : term] : (~(X214 @ id @ X217 @ id) | (X214 @ id @ (X216 @ id @ X217) @ id)) | (X214 @ id @ (lam @ (X216 @ sh @ one)) @ id) | ~! [X218 : term,X219 : subst,X220 : subst] : ((sub @ (X216 @ X219 @ X218) @ X220) = (X216 @ (comp @ X219 @ X220) @ (sub @ X218 @ X220)))) | ~! [X221 : term] : (~(X214 @ id @ X221 @ id) | (X214 @ id @ (sub @ X215 @ (push @ X221 @ id)) @ id))) <=> hoasinduction_lem3aa_lthm) & (hoasinduction_lem2v2 <=> ! [X222 : term,X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (~(X224 @ X222) | ~! [X226 : subst,X227 : subst,X228 : term,X229 : subst] : (~(X223 @ (comp @ X226 @ X229) @ (sub @ X228 @ X229) @ X227) | (X223 @ X226 @ X228 @ (comp @ X229 @ X227))) | ~! [X230 : subst,X231 : term,X232 : subst,X233 : subst] : ((X223 @ (comp @ X233 @ X230) @ (sub @ X231 @ X230) @ X232) | ~(X223 @ X233 @ X231 @ (comp @ X230 @ X232))) | ~(X224 @ X225) | (X224 @ (ap @ X222 @ X225)) | ~! [X234 : term] : ((X224 @ X234) = (X223 @ id @ X234 @ id)) | ~! [X235 : term,X236 : term] : ((X223 @ id @ (ap @ (sub @ X236 @ id) @ X235) @ id) | ~(X223 @ id @ X236 @ id) | ~(X223 @ id @ X235 @ id)))) & (! [X237 : subst > term > subst > $o,X238 : term] : (~! [X239 : subst > term > term] : (~! [X240 : term,X241 : subst,X242 : subst] : ((sub @ (X239 @ X241 @ X240) @ X242) = (X239 @ (comp @ X241 @ X242) @ (sub @ X240 @ X242))) | (X237 @ id @ (lam @ (X239 @ sh @ one)) @ id) | ~! [X243 : term] : (~(X237 @ id @ X243 @ id) | (X237 @ id @ (X239 @ id @ X243) @ id))) | ~! [X244 : term] : ((X237 @ id @ (sub @ X238 @ (push @ X244 @ id)) @ id) | ~(X237 @ id @ X244 @ id)) | (X237 @ id @ (lam @ (sub @ X238 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aa) & ((d2subst @ d_id) = sh) & ! [X245 : d_subst] : (d_id = X245) & hoasinduction_lem2_gthm & hoaslaminj_gthm & pushprop_gthm & hoasinduction_lem3a_gthm & ((! [X246 : term,X247 : subst] : ((sub @ one @ (push @ X246 @ X247)) = X246) => (! [X248 : term,X249 : subst] : ((comp @ sh @ (push @ X248 @ X249)) = X249) => (! [X250 : subst] : ((comp @ X250 @ id) = X250) => (! [X251 : term,X252 : term > $o] : (~! [X253 : term] : (~(var @ X253) | (X252 @ X253)) | (X252 @ X251) | ~! [X254 : term,X255 : term] : (~(X252 @ X254) | (X252 @ (ap @ X254 @ X255)) | ~(X252 @ X255)) | ~! [X256 : term] : ((X252 @ (lam @ X256)) | ~(X252 @ X256))) => ! [X257 : subst,X258 : term > $o,X259 : term] : (~! [X260 : term] : (~! [X261 : term] : (~(X258 @ X261) | (X258 @ (sub @ X260 @ (push @ X261 @ id)))) | (X258 @ (lam @ X260))) | (X258 @ (sub @ X259 @ X257)) | ~! [X262 : term,X263 : term] : (~(X258 @ X262) | (X258 @ (ap @ X263 @ X262)) | ~(X258 @ X263)) | ~! [X264 : term] : ((X258 @ (sub @ X264 @ X257)) | ~(var @ X264))))))) <=> induction2lem_lthm) & hoasapinj1_gthm & (! [X265 : term > $o,X266 : subst,X267 : term,X268 : term,X269 : term > $o] : ((X269 @ (sub @ X268 @ (push @ X267 @ X266))) | ~(X265 @ X268)) <=> pushprop_lem1) & substmonoid_gthm & ~ulamvar1 & ((! [X270 : term] : ((sub @ X270 @ id) = X270) => (! [X271 : term,X272 : term,X273 : term,X274 : term] : ((X271 = X274) | ((ap @ X274 @ X272) != (ap @ X271 @ X273))) => ! [X275 : term,X276 : term,X277 : term,X278 : term] : ((X276 = X277) | ((ap @ (sub @ X277 @ id) @ X275) != (ap @ (sub @ X276 @ id) @ X278))))) <=> hoasapinj1_lthm) & (termmset <=> ! [X279 : term] : ((sub @ X279 @ id) = X279)) & (hoasinduction_no_psi_cond <=> ! [X280 : subst > term > subst > $o,X281 : term] : (~! [X282 : subst > term > term] : (~! [X283 : term] : (~(X280 @ id @ X283 @ id) | (X280 @ id @ (X282 @ id @ X283) @ id)) | (X280 @ id @ (lam @ (X282 @ sh @ one)) @ id) | ~! [X284 : subst,X285 : subst,X286 : term] : ((X282 @ (comp @ X284 @ X285) @ (sub @ X286 @ X285)) = (sub @ (X282 @ X284 @ X286) @ X285))) | ~! [X287 : term,X288 : term] : (~(X280 @ id @ X288 @ id) | ~(X280 @ id @ X287 @ id) | (X280 @ id @ (ap @ (sub @ X288 @ id) @ X287) @ id)) | (X280 @ id @ X281 @ id))) & (induction2lem <=> ! [X289 : term > $o,X290 : term,X291 : subst] : ((X289 @ (sub @ X290 @ X291)) | ~! [X292 : term] : (~(var @ X292) | (X289 @ (sub @ X292 @ X291))) | ~! [X293 : term] : (~! [X294 : term] : ((X289 @ (sub @ X293 @ (push @ X294 @ id))) | ~(X289 @ X294)) | (X289 @ (lam @ X293))) | ~! [X295 : term,X296 : term] : (~(X289 @ X295) | ~(X289 @ X296) | (X289 @ (ap @ X296 @ X295))))) & induction2_gthm & induction2lem_gthm & axvarshift & (! [X297 : subst > term > subst > $o,X298 : term] : (~! [X299 : subst > term > term] : (~! [X300 : subst,X301 : term,X302 : subst] : ((sub @ (X299 @ X300 @ X301) @ X302) = (X299 @ (comp @ X300 @ X302) @ (sub @ X301 @ X302))) | ~! [X303 : term] : (~(X297 @ id @ X303 @ id) | (X297 @ id @ (X299 @ id @ X303) @ id)) | (X297 @ id @ (lam @ (X299 @ sh @ one)) @ id)) | ~! [X304 : term] : ((X297 @ id @ X304 @ id) | ~(var @ (sub @ X304 @ id))) | (X297 @ id @ X298 @ id) | ~! [X305 : subst,X306 : term,X307 : subst,X308 : subst] : (~(X297 @ X308 @ X306 @ (comp @ X305 @ X307)) | (X297 @ (comp @ X308 @ X305) @ (sub @ X306 @ X305) @ X307)) | ~! [X309 : term,X310 : term] : ((X297 @ id @ (ap @ (sub @ X310 @ id) @ X309) @ id) | ~(X297 @ id @ X310 @ id) | ~(X297 @ id @ X309 @ id)) | ~! [X311 : subst,X312 : subst,X313 : subst,X314 : term] : (~(X297 @ (comp @ X311 @ X313) @ (sub @ X314 @ X313) @ X312) | (X297 @ X311 @ X314 @ (comp @ X313 @ X312)))) <=> hoasinduction) & (hoasinduction_lem3v2a_lthm <=> (! [X315 : term] : ~! [X316 : subst > term > term] : ~! [X317 : subst,X318 : term] : ((sub @ X315 @ (push @ X318 @ X317)) = (X316 @ X317 @ X318)) => (! [X319 : term] : ((sub @ X319 @ id) = X319) => ! [X320 : subst > term > subst > $o,X321 : term,X322 : term > $o] : ((X322 @ (lam @ X321)) | ~! [X323 : term] : ((X322 @ (sub @ X321 @ (push @ X323 @ id))) | ~(X322 @ X323)) | ~! [X324 : subst > term > term] : (~! [X325 : term] : (~(X320 @ id @ X325 @ id) | (X320 @ id @ (X324 @ id @ X325) @ id)) | (X320 @ id @ (lam @ (X324 @ sh @ one)) @ id) | ~! [X326 : subst,X327 : subst,X328 : term] : ((sub @ (X324 @ X327 @ X328) @ X326) = (X324 @ (comp @ X327 @ X326) @ (sub @ X328 @ X326)))) | ~! [X329 : term] : ((X322 @ X329) = (X320 @ id @ X329 @ id)))))) & ((! [X330 : subst > term > subst > $o] : ~! [X331 : term > $o] : ~! [X332 : term] : ((X331 @ X332) = (X330 @ id @ X332 @ id)) => (! [X333 : term > $o,X334 : term] : (~! [X335 : term] : (~! [X336 : term] : ((X333 @ (sub @ X335 @ (push @ X336 @ id))) | ~(X333 @ X336)) | (X333 @ (lam @ X335))) | ~! [X337 : term,X338 : term] : (~(X333 @ X337) | (X333 @ (ap @ X338 @ X337)) | ~(X333 @ X338)) | (X333 @ X334) | ~! [X339 : term] : ((X333 @ X339) | ~(var @ X339))) => (! [X340 : term] : ((sub @ X340 @ id) = X340) => (! [X341 : subst > term > subst > $o,X342 : term,X343 : term > $o] : (~! [X344 : term] : ((X343 @ (sub @ X342 @ (push @ X344 @ id))) | ~(X343 @ X344)) | ~! [X345 : subst > term > term] : (~! [X346 : subst,X347 : term,X348 : subst] : ((sub @ (X345 @ X348 @ X347) @ X346) = (X345 @ (comp @ X348 @ X346) @ (sub @ X347 @ X346))) | (X341 @ id @ (lam @ (X345 @ sh @ one)) @ id) | ~! [X349 : term] : (~(X341 @ id @ X349 @ id) | (X341 @ id @ (X345 @ id @ X349) @ id))) | ~! [X350 : term] : ((X341 @ id @ X350 @ id) = (X343 @ X350)) | (X343 @ (lam @ X342))) => ! [X351 : subst > term > subst > $o,X352 : term] : (~! [X353 : subst,X354 : subst,X355 : subst,X356 : term] : (~(X351 @ X353 @ X356 @ (comp @ X354 @ X355)) | (X351 @ (comp @ X353 @ X354) @ (sub @ X356 @ X354) @ X355)) | ~! [X357 : term,X358 : term] : (~(X351 @ id @ X358 @ id) | (X351 @ id @ (ap @ (sub @ X358 @ id) @ X357) @ id) | ~(X351 @ id @ X357 @ id)) | ~! [X359 : term] : ((X351 @ id @ X359 @ id) | ~(var @ (sub @ X359 @ id))) | ~! [X360 : subst > term > term] : (~! [X361 : term] : ((X351 @ id @ (X360 @ id @ X361) @ id) | ~(X351 @ id @ X361 @ id)) | (X351 @ id @ (lam @ (X360 @ sh @ one)) @ id) | ~! [X362 : subst,X363 : term,X364 : subst] : ((sub @ (X360 @ X364 @ X363) @ X362) = (X360 @ (comp @ X364 @ X362) @ (sub @ X363 @ X362)))) | (X351 @ id @ X352 @ id) | ~! [X365 : subst,X366 : subst,X367 : term,X368 : subst] : ((X351 @ X365 @ X367 @ (comp @ X368 @ X366)) | ~(X351 @ (comp @ X365 @ X368) @ (sub @ X367 @ X368) @ X366))))))) <=> hoasinduction_lthm_3) & pushprop_lthm_orig & (hoasinduction_lem3a_lthm <=> (! [X369 : term] : ((sub @ X369 @ id) = X369) => (! [X370 : subst > term > subst > $o,X371 : term] : (~! [X372 : subst > term > term] : ((X370 @ id @ (lam @ (X372 @ sh @ one)) @ id) | ~! [X373 : term] : (~(X370 @ id @ X373 @ id) | (X370 @ id @ (X372 @ id @ X373) @ id)) | ~! [X374 : subst,X375 : subst,X376 : term] : ((X372 @ (comp @ X374 @ X375) @ (sub @ X376 @ X375)) = (sub @ (X372 @ X374 @ X376) @ X375))) | ~! [X377 : term] : ((X370 @ id @ (sub @ X371 @ (push @ X377 @ id)) @ id) | ~(X370 @ id @ X377 @ id)) | (X370 @ id @ (lam @ (sub @ X371 @ (push @ one @ sh))) @ id)) => ! [X378 : term,X379 : subst > term > subst > $o] : (~! [X380 : term] : ((X379 @ id @ (sub @ X378 @ (push @ X380 @ id)) @ id) | ~(X379 @ id @ X380 @ id)) | (X379 @ id @ (lam @ X378) @ id) | ~! [X381 : subst > term > term] : ((X379 @ id @ (lam @ (X381 @ sh @ one)) @ id) | ~! [X382 : subst,X383 : subst,X384 : term] : ((X381 @ (comp @ X383 @ X382) @ (sub @ X384 @ X382)) = (sub @ (X381 @ X383 @ X384) @ X382)) | ~! [X385 : term] : (~(X379 @ id @ X385 @ id) | (X379 @ id @ (X381 @ id @ X385) @ id))))))) & axassoc & ((! [X386 : term,X387 : term > $o] : (~! [X388 : term] : (~(var @ X388) | (X387 @ X388)) | (X387 @ X386) | ~! [X389 : term] : (~! [X390 : term] : ((X387 @ (sub @ X389 @ (push @ X390 @ id))) | ~(X387 @ X390)) | (X387 @ (lam @ X389))) | ~! [X391 : term,X392 : term] : ((X387 @ (ap @ X392 @ X391)) | ~(X387 @ X391) | ~(X387 @ X392))) => (! [X393 : term,X394 : term,X395 : subst > term > subst > $o] : (~(X395 @ id @ X393 @ id) | (X395 @ id @ (ap @ X394 @ X393) @ id) | ~(X395 @ id @ X394 @ id) | ~! [X396 : term,X397 : term] : ((X395 @ id @ (ap @ (sub @ X396 @ id) @ X397) @ id) | ~(X395 @ id @ X397 @ id) | ~(X395 @ id @ X396 @ id)) | ~! [X398 : term,X399 : subst,X400 : subst,X401 : subst] : (~(X395 @ (comp @ X401 @ X400) @ (sub @ X398 @ X400) @ X399) | (X395 @ X401 @ X398 @ (comp @ X400 @ X399))) | ~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (~(X395 @ X403 @ X405 @ (comp @ X404 @ X402)) | (X395 @ (comp @ X403 @ X404) @ (sub @ X405 @ X404) @ X402))) => (! [X406 : subst > term > subst > $o,X407 : term] : (~! [X408 : term] : ((X406 @ id @ (sub @ X407 @ (push @ X408 @ id)) @ id) | ~(X406 @ id @ X408 @ id)) | ~! [X409 : subst,X410 : subst,X411 : subst,X412 : term] : ((X406 @ X409 @ X412 @ (comp @ X411 @ X410)) | ~(X406 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410)) | (X406 @ id @ (lam @ X407) @ id) | ~! [X413 : subst,X414 : term,X415 : subst,X416 : subst] : ((X406 @ (comp @ X413 @ X416) @ (sub @ X414 @ X416) @ X415) | ~(X406 @ X413 @ X414 @ (comp @ X416 @ X415))) | ~! [X417 : subst > term > term] : ((X406 @ id @ (lam @ (X417 @ sh @ one)) @ id) | ~! [X418 : subst,X419 : term,X420 : subst] : ((X417 @ (comp @ X420 @ X418) @ (sub @ X419 @ X418)) = (sub @ (X417 @ X420 @ X419) @ X418)) | ~! [X421 : term] : ((X406 @ id @ (X417 @ id @ X421) @ id) | ~(X406 @ id @ X421 @ id)))) => ! [X422 : term,X423 : subst > term > subst > $o] : (~! [X424 : term,X425 : subst,X426 : subst,X427 : subst] : (~(X423 @ (comp @ X425 @ X427) @ (sub @ X424 @ X427) @ X426) | (X423 @ X425 @ X424 @ (comp @ X427 @ X426))) | (X423 @ id @ X422 @ id) | ~! [X428 : term,X429 : term] : (~(X423 @ id @ X429 @ id) | ~(X423 @ id @ X428 @ id) | (X423 @ id @ (ap @ (sub @ X429 @ id) @ X428) @ id)) | ~! [X430 : term] : (~(var @ (sub @ X430 @ id)) | (X423 @ id @ X430 @ id)) | ~! [X431 : term,X432 : subst,X433 : subst,X434 : subst] : ((X423 @ (comp @ X432 @ X434) @ (sub @ X431 @ X434) @ X433) | ~(X423 @ X432 @ X431 @ (comp @ X434 @ X433))) | ~! [X435 : subst > term > term] : (~! [X436 : term] : (~(X423 @ id @ X436 @ id) | (X423 @ id @ (X435 @ id @ X436) @ id)) | (X423 @ id @ (lam @ (X435 @ sh @ one)) @ id) | ~! [X437 : term,X438 : subst,X439 : subst] : ((sub @ (X435 @ X438 @ X437) @ X439) = (X435 @ (comp @ X438 @ X439) @ (sub @ X437 @ X439)))))))) <=> hoasinduction_lthm) & pushprop & hoaslamnotap_gthm & hoaslamnotvar_lthm & axapp & (! [X440 : subst > term > subst > $o,X441 : term] : (~! [X442 : subst,X443 : subst,X444 : subst,X445 : term] : ((X440 @ (comp @ X442 @ X444) @ (sub @ X445 @ X444) @ X443) | ~(X440 @ X442 @ X445 @ (comp @ X444 @ X443))) | ~! [X446 : term] : (~(X440 @ id @ X446 @ id) | (X440 @ id @ (sub @ X441 @ (push @ X446 @ id)) @ id)) | (X440 @ id @ (lam @ X441) @ id) | ~! [X447 : term,X448 : subst,X449 : subst,X450 : subst] : (~(X440 @ (comp @ X450 @ X449) @ (sub @ X447 @ X449) @ X448) | (X440 @ X450 @ X447 @ (comp @ X449 @ X448))) | ~! [X451 : subst > term > term] : ((X440 @ id @ (lam @ (X451 @ sh @ one)) @ id) | ~! [X452 : subst,X453 : subst,X454 : term] : ((sub @ (X451 @ X453 @ X454) @ X452) = (X451 @ (comp @ X453 @ X452) @ (sub @ X454 @ X452))) | ~! [X455 : term] : ((X440 @ id @ (X451 @ id @ X455) @ id) | ~(X440 @ id @ X455 @ id)))) <=> hoasinduction_lem3) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (pushprop_lem0_lthm <=> ! [X456 : subst,X457 : term,X458 : term > $o] : ~! [X459 : term > $o] : ~! [X460 : term] : ((X459 @ X460) = (X458 @ (sub @ X460 @ (push @ X457 @ X456))))) & (pushprop_lem1_lthm <=> (! [X461 : subst,X462 : term] : ((sub @ one @ (push @ X462 @ X461)) = X462) => (! [X463 : term,X464 : subst] : ((comp @ sh @ (push @ X463 @ X464)) = X464) => ! [X465 : term > $o,X466 : subst,X467 : term,X468 : term > $o,X469 : term] : ((X468 @ (sub @ X467 @ (push @ X469 @ X466))) | ~(X465 @ X467))))) & (axvarid <=> ! [X470 : term] : ((sub @ X470 @ id) = X470)) & (! [X471 : subst > term > subst > $o] : ~! [X472 : term > $o] : ~! [X473 : term] : ((X472 @ X473) = (X471 @ id @ X473 @ id)) <=> hoasinduction_lem0_lthm) & (hoaslaminj_lthm <=> (! [X474 : term,X475 : subst] : ((sub @ one @ (push @ X474 @ X475)) = X474) => (! [X476 : subst,X477 : term] : ((comp @ sh @ (push @ X477 @ X476)) = X476) => (! [X478 : term,X479 : term] : (((lam @ X478) != (lam @ X479)) | (X478 = X479)) => ! [X480 : term,X481 : subst > term > term,X482 : subst,X483 : subst > term > term] : (~! [X484 : term,X485 : subst,X486 : subst] : ((X481 @ (comp @ X485 @ X486) @ (sub @ X484 @ X486)) = (sub @ (X481 @ X485 @ X484) @ X486)) | ~! [X487 : subst,X488 : subst,X489 : term] : ((X483 @ (comp @ X488 @ X487) @ (sub @ X489 @ X487)) = (sub @ (X483 @ X488 @ X489) @ X487)) | ((X483 @ X482 @ X480) = (X481 @ X482 @ X480)) | ((lam @ (X481 @ sh @ one)) != (lam @ (X483 @ sh @ one)))))))) & (termmset_lthm <=> (! [X490 : term] : ((sub @ X490 @ id) = X490) => ! [X491 : term] : ((sub @ X491 @ id) = X491))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ! [X492 : d_subst,X493 : d_subst] : (((d2subst @ X493) = (d2subst @ X492)) => (X492 = X493)) & (hoasinduction_lem3_lthm <=> (! [X494 : term] : ((sub @ X494 @ id) = X494) => (! [X495 : subst > term > subst > $o,X496 : term] : ((X495 @ id @ (lam @ (sub @ X496 @ (push @ one @ sh))) @ id) | ~! [X497 : term] : ((X495 @ id @ (sub @ X496 @ (push @ X497 @ id)) @ id) | ~(X495 @ id @ X497 @ id)) | ~! [X498 : subst > term > term] : (~! [X499 : subst,X500 : subst,X501 : term] : ((sub @ (X498 @ X499 @ X501) @ X500) = (X498 @ (comp @ X499 @ X500) @ (sub @ X501 @ X500))) | (X495 @ id @ (lam @ (X498 @ sh @ one)) @ id) | ~! [X502 : term] : (~(X495 @ id @ X502 @ id) | (X495 @ id @ (X498 @ id @ X502) @ id)))) => ! [X503 : term,X504 : subst > term > subst > $o] : ((X504 @ id @ (lam @ X503) @ id) | ~! [X505 : term,X506 : subst,X507 : subst,X508 : subst] : (~(X504 @ (comp @ X507 @ X506) @ (sub @ X505 @ X506) @ X508) | (X504 @ X507 @ X505 @ (comp @ X506 @ X508))) | ~! [X509 : term] : ((X504 @ id @ (sub @ X503 @ (push @ X509 @ id)) @ id) | ~(X504 @ id @ X509 @ id)) | ~! [X510 : term,X511 : subst,X512 : subst,X513 : subst] : ((X504 @ (comp @ X513 @ X511) @ (sub @ X510 @ X511) @ X512) | ~(X504 @ X513 @ X510 @ (comp @ X511 @ X512))) | ~! [X514 : subst > term > term] : (~! [X515 : term] : (~(X504 @ id @ X515 @ id) | (X504 @ id @ (X514 @ id @ X515) @ id)) | ~! [X516 : subst,X517 : subst,X518 : term] : ((X514 @ (comp @ X517 @ X516) @ (sub @ X518 @ X516)) = (sub @ (X514 @ X517 @ X518) @ X516)) | (X504 @ id @ (lam @ (X514 @ sh @ one)) @ id)))))) & (one = (d2term @ d_one)) & (! [X519 : term] : ~! [X520 : subst > term > term] : ~! [X521 : term,X522 : subst] : ((sub @ X519 @ (push @ X521 @ X522)) = (X520 @ X522 @ X521)) <=> hoasinduction_lem3v2_f) & hoasinduction_lem2_lthm & (pushprop_lem1v2_lthm <=> (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) => ! [X525 : subst,X526 : term > $o,X527 : term > $o,X528 : term] : (~(X527 @ X528) | ~! [X529 : term] : ((X527 @ (sub @ X529 @ (push @ X528 @ X525))) = (X526 @ X529)) | (X526 @ one)))) & hoasapnotvar & pushprop_lem0_gthm & pushprop_lem3v2 & ! [X530 : subst] : ? [X531 : d_subst] : ((d2subst @ X531) = X530) & (hoasapinj1 <=> ! [X532 : term,X533 : term,X534 : term,X535 : term] : (((ap @ (sub @ X532 @ id) @ X534) != (ap @ (sub @ X535 @ id) @ X533)) | (X532 = X535))) & hoasinduction_gthm & (hoasinduction_lem3b_lthm <=> ! [X536 : term] : ~! [X537 : subst > term > term] : ((X537 @ sh @ one) != (sub @ X536 @ (push @ one @ sh)))) & axmap & pushprop_lem3v2_lthm & hoasapnotvar_lthm & hoasapnotvar_gthm & (axidl <=> ! [X538 : subst] : ((comp @ id @ X538) = X538)) & (axidr <=> ! [X539 : subst] : ((comp @ X539 @ id) = X539)) & ~(var @ (d2term @ d_one)) & apnotvar & ~lamnotap & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (laminj <=> ! [X540 : term,X541 : term] : (((lam @ X541) != (lam @ X540)) | (X540 = X541))) & (axvarcons <=> ! [X542 : subst,X543 : term] : ((sub @ one @ (push @ X543 @ X542)) = X543)) & hoaslamnotvar & hoasapinj2_gthm & (! [X544 : subst > term > term,X545 : term,X546 : term] : (((ap @ (sub @ X545 @ id) @ X546) != (lam @ (X544 @ sh @ one))) | ~! [X547 : subst,X548 : subst,X549 : term] : ((X544 @ (comp @ X547 @ X548) @ (sub @ X549 @ X548)) = (sub @ (X544 @ X547 @ X549) @ X548))) <=> hoaslamnotap)),
% 2.63/1.98    inference(rectify,[status(thm)],[f1])).
% 2.63/1.98  thf(f1,axiom,(
% 2.63/1.98    (! [X22 : term,X10 : term > $o] : ((X10 @ X22) | ~! [X15 : term,X13 : term] : (~(X10 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13))) <=> induction2) & hoasinduction_lem1v2_gthm & (pushprop_lem1v2 <=> ! [X11 : term > $o,X14 : subst,X10 : term > $o,X13 : term] : (~(X10 @ X13) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | (X11 @ one))) & (! [X18 : subst > term > term,X32 : subst,X33 : term,X31 : subst > term > term] : (~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33))) <=> hoaslaminj) & axclos & (! [X10 : subst > term > subst > $o,X43 : term] : ((X10 @ id @ (lam @ X43) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X13 : term,X14 : subst] : ((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)))) <=> hoasinduction_lem3a) & (hoasapinj2_lthm <=> (! [X15 : term,X20 : term,X13 : term,X19 : term] : ((X19 = X20) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X13 : term,X15 : term,X19 : term,X20 : term] : ((X19 = X20) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20))))) & ((^[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) & hoaslamnotvar_gthm & ! [X1 : d_term] : (d_one = X1) & hoasinduction_lem1_gthm & ! [X0 : term] : ? [X1 : d_term] : ((d2term @ X1) = X0) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & hoaslamnotap_lthm & hoasinduction_lem3b_gthm & hoasinduction_lem2v2_gthm & (substmonoid_lthm <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X14 : subst] : ((comp @ id @ X14) = X14) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))))) & hoasinduction_lem1_lthm & axabs & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & ((^[X8 : subst, X9 : subst > term > term] : (d2term @ d_one)) = hoaslam) & termmset_gthm & pushprop_lem1v2_gthm & (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) <=> axshiftcons) & (hoasinduction_lem0 <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & pushprop_lthm & (! [X13 : term,X15 : term] : (((sub @ X13 @ sh) != (sub @ X15 @ sh)) | (X13 = X15)) <=> shinj) & (hoasinduction_lem3aaa <=> ! [X34 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ (sub @ X34 @ (push @ one @ sh))) @ id) | ~! [X35 : term,X18 : subst > term > term] : (~! [X39 : subst,X41 : subst,X40 : term] : ((X18 @ (comp @ X39 @ X41) @ (sub @ X40 @ X41)) = (sub @ X35 @ (push @ (sub @ X40 @ X41) @ (comp @ X39 @ X41)))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X38 : subst,X36 : subst,X37 : term] : ((sub @ (X18 @ X36 @ X37) @ X38) = (sub @ (sub @ X35 @ (push @ X37 @ X36)) @ X38))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X34 @ (push @ X15 @ id)) @ id)))) & pushprop_lem2v2 & lamnotvar & (! [X48 : term,X11 : term > $o,X10 : subst > term > subst > $o] : (~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X26 : subst,X13 : term,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) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | (X11 @ (lam @ X48)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) <=> hoasinduction_lem3v2) & (substmonoid <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))) & ! [X3 : d_term,X2 : d_term] : (((d2term @ X2) = (d2term @ X3)) => (X2 = X3)) & ((d2subst @ d_id) = id) & hoasinduction_lem3v2_gthm & ulamvarind & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X14 : subst] : ((push @ (sub @ one @ X14) @ (comp @ sh @ X14)) = X14) <=> axscons) & ulamvarsh & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X16 : term,X10 : term > $o,X17 : subst] : (~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | (X10 @ (sub @ X16 @ X17)) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X13 : term,X15 : term] : (~(X10 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)))) => ! [X10 : term > $o,X22 : term] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))) | ~! [X13 : term,X15 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)) | (X10 @ X22) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13))))) <=> induction2_lthm) & (hoasinduction_lem3v2_f_lthm <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13))) & (hoasinduction_lem2 <=> ! [X24 : term,X10 : subst > term > subst > $o,X23 : term] : (~! [X25 : subst,X26 : subst,X14 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~(X10 @ id @ X24 @ id) | ~(X10 @ id @ X23 @ id) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ (ap @ X23 @ X24) @ id))) & (! [X21 : term,X10 : term > $o] : (~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ X21) | ~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13))) <=> induction) & pushprop_lem2v2_lthm & ((^[X10 : subst > term > subst > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) = hoasinduction_p_and_p_prime) & (! [X19 : term,X20 : term,X13 : term,X15 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X13 = X15)) <=> apinj1) & hoasinduction_lem1v2 & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & hoasinduction_lem1 & (! [X13 : term,X14 : subst,X10 : term > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0) & (apinj2 <=> ! [X13 : term,X15 : term,X19 : term,X20 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20))) & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X10 : subst > term > subst > $o,X11 : term > $o,X48 : term] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X25 : subst,X26 : subst,X13 : term,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [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))) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | (X11 @ (lam @ X48)))) <=> hoasinduction_lem3v2_lthm) & (hoasinduction_lem3b <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & pushprop_lem1_gthm & (! [X19 : term,X20 : term,X13 : term,X15 : term] : ((X19 = X20) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20))) <=> hoasapinj2) & (hoasinduction_lem3v2a <=> ! [X10 : subst > term > subst > $o,X11 : term > $o,X29 : term] : ((X11 @ (lam @ X29)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X29 @ (push @ X15 @ id)))) | ~! [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)))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) & pushprop_lem2v2_gthm & ((! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [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)) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ X22)) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X11 : term > $o,X10 : subst > term > subst > $o,X29 : term] : (~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((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))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29))) => ! [X30 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X15 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ X30 @ 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 @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)))))))) <=> hoasinduction_no_psi_cond_lthm) & hoasinduction_lem3_gthm & (! [X10 : subst > term > subst > $o,X42 : term] : ((X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (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)))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id))) <=> hoasinduction_lem3aa_lthm) & (hoasinduction_lem2v2 <=> ! [X44 : term,X10 : subst > term > subst > $o,X11 : term > $o,X45 : term] : (~(X11 @ X44) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~(X11 @ X45) | (X11 @ (ap @ X44 @ X45)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X15 : term,X13 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id)))) & (! [X10 : subst > term > subst > $o,X42 : term] : (~! [X18 : subst > term > term] : (~! [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) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aa) & ((d2subst @ d_id) = sh) & ! [X5 : d_subst] : (d_id = X5) & hoasinduction_lem2_gthm & hoaslaminj_gthm & pushprop_gthm & hoasinduction_lem3a_gthm & ((! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X21 : term,X10 : term > $o] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | (X10 @ X21) | ~! [X13 : term,X15 : term] : (~(X10 @ X13) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~(X10 @ X13))) => ! [X17 : subst,X10 : term > $o,X16 : term] : (~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | (X10 @ (sub @ X16 @ X17)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15))))))) <=> induction2lem_lthm) & hoasapinj1_gthm & (! [X10 : term > $o,X14 : subst,X15 : term,X13 : term,X26 : term > $o] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13)) <=> pushprop_lem1) & substmonoid_gthm & ~ulamvar1 & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X15 : term,X19 : term,X20 : term,X13 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X19 : term,X15 : term,X13 : term,X20 : term] : ((X13 = X15) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20))))) <=> hoasapinj1_lthm) & (termmset <=> ! [X13 : term] : ((sub @ X13 @ id) = X13)) & (hoasinduction_no_psi_cond <=> ! [X10 : subst > term > subst > $o,X30 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (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)))) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | (X10 @ id @ X30 @ id))) & (induction2lem <=> ! [X10 : term > $o,X16 : term,X17 : subst] : ((X10 @ (sub @ X16 @ X17)) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))))) & induction2_gthm & induction2lem_gthm & axvarshift & (! [X10 : subst > term > subst > $o,X28 : term] : (~! [X18 : subst > term > term] : (~! [X14 : subst,X13 : term,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 @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | (X10 @ id @ X28 @ id) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term,X13 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25)))) <=> hoasinduction) & (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) => ! [X10 : subst > term > subst > $o,X29 : term,X11 : term > $o] : ((X11 @ (lam @ X29)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [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,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))))) & ((! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X10 : term > $o,X22 : term] : (~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ X22) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X29 : term,X11 : term > $o] : (~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29))) => ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X14 : subst,X26 : subst,X25 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | ~! [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)))) | (X10 @ id @ X28 @ id) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))))))) <=> hoasinduction_lthm_3) & pushprop_lthm_orig & (hoasinduction_lem3a_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X42 : term] : (~! [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)))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) => ! [X43 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : ((X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ X43) @ 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))))))) & axassoc & ((! [X22 : term,X10 : term > $o] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | (X10 @ X22) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13))) => (! [X24 : term,X23 : term,X10 : subst > term > subst > $o] : (~(X10 @ id @ X24 @ id) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~(X10 @ id @ X23 @ id) | ~! [X13 : term,X15 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) => (! [X10 : subst > term > subst > $o,X27 : term] : (~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X10 @ id @ (lam @ X27) @ id) | ~! [X14 : subst,X13 : term,X25 : subst,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [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 @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)))) => ! [X28 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ X28 @ id) | ~! [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)) | ~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (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)))))))) <=> hoasinduction_lthm) & pushprop & hoaslamnotap_gthm & hoaslamnotvar_lthm & axapp & (! [X10 : subst > term > subst > $o,X27 : term] : (~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ X27) @ id) | ~! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [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 @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)))) <=> hoasinduction_lem3) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (pushprop_lem0_lthm <=> ! [X14 : subst,X13 : term,X10 : term > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))) & (pushprop_lem1_lthm <=> (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => ! [X10 : term > $o,X14 : subst,X13 : term,X26 : term > $o,X15 : term] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13))))) & (axvarid <=> ! [X13 : term] : ((sub @ X13 @ id) = X13)) & (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) <=> hoasinduction_lem0_lthm) & (hoaslaminj_lthm <=> (! [X13 : term,X14 : subst] : ((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)) => ! [X33 : term,X31 : subst > term > term,X32 : subst,X18 : subst > term > term] : (~! [X13 : term,X14 : subst,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))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one)))))))) & (termmset_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X13 : term] : ((sub @ X13 @ id) = X13))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ! [X6 : d_subst,X7 : d_subst] : (((d2subst @ X6) = (d2subst @ X7)) => (X6 = X7)) & (hoasinduction_lem3_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X42 : term] : ((X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [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 @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)))) => ! [X27 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ X27) @ id) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X13 : term,X26 : subst,X25 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [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)))))) & (one = (d2term @ d_one)) & (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) <=> hoasinduction_lem3v2_f) & hoasinduction_lem2_lthm & (pushprop_lem1v2_lthm <=> (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => ! [X14 : subst,X11 : term > $o,X10 : term > $o,X13 : term] : (~(X10 @ X13) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | (X11 @ one)))) & hoasapnotvar & pushprop_lem0_gthm & pushprop_lem3v2 & ! [X4 : subst] : ? [X5 : d_subst] : ((d2subst @ X5) = X4) & (hoasapinj1 <=> ! [X15 : term,X19 : term,X20 : term,X13 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15))) & hoasinduction_gthm & (hoasinduction_lem3b_lthm <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & axmap & pushprop_lem3v2_lthm & hoasapnotvar_lthm & hoasapnotvar_gthm & (axidl <=> ! [X14 : subst] : ((comp @ id @ X14) = X14)) & (axidr <=> ! [X14 : subst] : ((comp @ X14 @ id) = X14)) & ~(var @ (d2term @ d_one)) & apnotvar & ~lamnotap & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (laminj <=> ! [X15 : term,X13 : term] : (((lam @ X13) != (lam @ X15)) | (X13 = X15))) & (axvarcons <=> ! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13)) & hoaslamnotvar & hoasapinj2_gthm & (! [X18 : subst > term > term,X46 : term,X47 : 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)),
% 2.63/1.98    file('/export/starexec/sandbox/tmp/tmp.3qoP4JCMwi/DTF2THF_20450.p',alg444_1)).
% 2.63/1.98  thf(f1420,plain,(
% 2.63/1.98    ( ! [X87 : term] : (((d2term @ (sK563 @ X87)) = X87)) )),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f757])).
% 2.63/1.98  thf(f1286,plain,(
% 2.63/1.98    ((var @ (d2term @ d_one)) != $true)),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f757])).
% 2.63/1.98  thf(f764,plain,(
% 2.63/1.98    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true) | ($true = (var @ (sK117 @ X0)))) )),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f137])).
% 2.63/1.98  thf(f137,plain,(
% 2.63/1.98    ! [X0 : term > $o] : ((((sP0 @ X0) = $true) | (($true != (X0 @ (sub @ (sK117 @ X0) @ sh))) & ($true = (X0 @ (sK117 @ X0))) & ($true = (var @ (sK117 @ X0))))) & (! [X2 : term] : (((X0 @ (sub @ X2 @ sh)) = $true) | ($true != (X0 @ X2)) | ((var @ X2) != $true)) | ((sP0 @ X0) != $true)))),
% 2.63/1.98    inference(skolemisation,[status(esa),new_symbols(skolem,[sK117])],[f135,f136])).
% 2.63/1.98  thf(f136,plain,(
% 2.63/1.98    ! [X0 : term > $o] : (? [X1 : term] : (($true != (X0 @ (sub @ X1 @ sh))) & ($true = (X0 @ X1)) & ($true = (var @ X1))) => (($true != (X0 @ (sub @ (sK117 @ X0) @ sh))) & ($true = (X0 @ (sK117 @ X0))) & ($true = (var @ (sK117 @ X0)))))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f135,plain,(
% 2.63/1.98    ! [X0 : term > $o] : ((((sP0 @ X0) = $true) | ? [X1 : term] : (($true != (X0 @ (sub @ X1 @ sh))) & ($true = (X0 @ X1)) & ($true = (var @ X1)))) & (! [X2 : term] : (((X0 @ (sub @ X2 @ sh)) = $true) | ($true != (X0 @ X2)) | ((var @ X2) != $true)) | ((sP0 @ X0) != $true)))),
% 2.63/1.98    inference(rectify,[status(thm)],[f134])).
% 2.63/1.98  thf(f134,plain,(
% 2.63/1.98    ! [X1 : term > $o] : ((($true = (sP0 @ X1)) | ? [X5 : term] : (($true != (X1 @ (sub @ X5 @ sh))) & ($true = (X1 @ X5)) & ((var @ X5) = $true))) & (! [X5 : term] : (($true = (X1 @ (sub @ X5 @ sh))) | ($true != (X1 @ X5)) | ((var @ X5) != $true)) | ($true != (sP0 @ X1))))),
% 2.63/1.98    inference(nnf_transformation,[status(thm)],[f15])).
% 2.63/1.98  thf(f15,plain,(
% 2.63/1.98    ! [X1 : term > $o] : (($true = (sP0 @ X1)) <=> ! [X5 : term] : (($true = (X1 @ (sub @ X5 @ sh))) | ($true != (X1 @ X5)) | ((var @ X5) != $true)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f3811,plain,(
% 2.63/1.98    ((sP0 @ sK113) != $true) | spl650_452),
% 2.63/1.98    inference(avatar_component_clause,[status(thm)],[f3810])).
% 2.63/1.98  thf(f3810,definition,(
% 2.63/1.98    spl650_452 <=> ((sP0 @ sK113) = $true)),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[spl650_452])],[avatar_definition])).
% 2.63/1.98  thf(f3876,plain,(
% 2.63/1.98    ~spl650_249),
% 2.63/1.98    inference(avatar_split_clause,[status(thm)],[f1930,f2927])).
% 2.63/1.98  thf(f2927,definition,(
% 2.63/1.98    spl650_249 <=> (sP1 = $true)),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[spl650_249])],[avatar_definition])).
% 2.63/1.98  thf(f1930,plain,(
% 2.63/1.98    (sP1 != $true)),
% 2.63/1.98    inference(trivial_inequality_removal,[status(thm)],[f1523])).
% 2.63/1.98  thf(f1523,plain,(
% 2.63/1.98    (sP1 != $true) | ($true != $true)),
% 2.63/1.98    inference(definition_unfolding,[status(thm)],[f768,f1391])).
% 2.63/1.98  thf(f1391,plain,(
% 2.63/1.98    (pushprop_lem2v2 = $true)),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f757])).
% 2.63/1.98  thf(f768,plain,(
% 2.63/1.98    (pushprop_lem2v2 != $true) | (sP1 != $true)),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f138])).
% 2.63/1.98  thf(f138,plain,(
% 2.63/1.98    ((pushprop_lem2v2 != $true) | (sP1 != $true)) & ((pushprop_lem2v2 = $true) | (sP1 = $true))),
% 2.63/1.98    inference(nnf_transformation,[status(thm)],[f17])).
% 2.63/1.98  thf(f17,plain,(
% 2.63/1.98    (sP1 = $true) <~> (pushprop_lem2v2 = $true)),
% 2.63/1.98    inference(definition_folding,[status(thm)],[f12,f16,f15])).
% 2.63/1.98  thf(f16,plain,(
% 2.63/1.98    (sP1 = $true) <=> ! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true = (sP0 @ X1)) | ? [X4 : term] : (($true != (X0 @ (sub @ X4 @ X3))) & ((var @ X4) = $true)) | ($true != (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1)))),
% 2.63/1.98    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.63/1.98  thf(f12,plain,(
% 2.63/1.98    ! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (! [X5 : term] : (($true = (X1 @ (sub @ X5 @ sh))) | ($true != (X1 @ X5)) | ((var @ X5) != $true)) | ? [X4 : term] : (($true != (X0 @ (sub @ X4 @ X3))) & ((var @ X4) = $true)) | ($true != (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1))) <~> (pushprop_lem2v2 = $true)),
% 2.63/1.98    inference(flattening,[status(thm)],[f11])).
% 2.63/1.98  thf(f11,plain,(
% 2.63/1.98    ! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : ((! [X5 : term] : ((($true = (X1 @ (sub @ X5 @ sh))) | ($true != (X1 @ X5))) | ((var @ X5) != $true)) | ? [X4 : term] : (($true != (X0 @ (sub @ X4 @ X3))) & ((var @ X4) = $true))) | ($true != (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1))) <~> (pushprop_lem2v2 = $true)),
% 2.63/1.98    inference(ennf_transformation,[status(thm)],[f6])).
% 2.63/1.98  thf(f6,plain,(
% 2.63/1.98    ~(! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true = (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1)) => (! [X4 : term] : (((var @ X4) = $true) => ($true = (X0 @ (sub @ X4 @ X3)))) => ! [X5 : term] : (((var @ X5) = $true) => (($true = (X1 @ X5)) => ($true = (X1 @ (sub @ X5 @ sh))))))) <=> (pushprop_lem2v2 = $true))),
% 2.63/1.98    inference(fool_elimination,[status(thm)],[f5])).
% 2.63/1.98  thf(f5,plain,(
% 2.63/1.98    ~(! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : ((pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1) => (! [X4 : term] : ((var @ X4) => (X0 @ (sub @ X4 @ X3))) => ! [X5 : term] : ((var @ X5) => ((X1 @ X5) => (X1 @ (sub @ X5 @ sh)))))) = pushprop_lem2v2)),
% 2.63/1.98    inference(rectify,[status(thm)],[f3])).
% 2.63/1.98  thf(f3,negated_conjecture,(
% 2.63/1.98    ~(! [X10 : term > $o,X11 : term > $o,X13 : term,X14 : subst] : ((pushprop_p_and_p_prime @ X13 @ X14 @ X10 @ X11) => (! [X15 : term] : ((var @ X15) => (X10 @ (sub @ X15 @ X14))) => ! [X19 : term] : ((var @ X19) => ((X11 @ X19) => (X11 @ (sub @ X19 @ sh)))))) = pushprop_lem2v2)),
% 2.63/1.98    inference(negated_conjecture,[status(cth)],[f2])).
% 2.63/1.98  thf(f2,conjecture,(
% 2.63/1.98    (! [X10 : term > $o,X11 : term > $o,X13 : term,X14 : subst] : ((pushprop_p_and_p_prime @ X13 @ X14 @ X10 @ X11) => (! [X15 : term] : ((var @ X15) => (X10 @ (sub @ X15 @ X14))) => ! [X19 : term] : ((var @ X19) => ((X11 @ X19) => (X11 @ (sub @ X19 @ sh)))))) = pushprop_lem2v2)),
% 2.63/1.98    file('/export/starexec/sandbox/tmp/tmp.3qoP4JCMwi/DTF2THF_20450.p',pushprop_lem2v2)).
% 2.63/1.98  thf(f3812,plain,(
% 2.63/1.98    ~spl650_452 | spl650_249),
% 2.63/1.98    inference(avatar_split_clause,[status(thm)],[f762,f2927,f3810])).
% 2.63/1.98  thf(f762,plain,(
% 2.63/1.98    ((sP0 @ sK113) != $true) | (sP1 = $true)),
% 2.63/1.98    inference(cnf_transformation,[status(thm)],[f133])).
% 2.63/1.98  thf(f133,plain,(
% 2.63/1.98    ((sP1 = $true) | (((sP0 @ sK113) != $true) & ! [X4 : term] : (($true = (sK112 @ (sub @ X4 @ sK115))) | ((var @ X4) != $true)) & ((pushprop_p_and_p_prime @ sK114 @ sK115 @ sK112 @ sK113) = $true))) & (! [X5 : term > $o,X6 : term > $o,X7 : term,X8 : subst] : (((sP0 @ X6) = $true) | (($true != (X5 @ (sub @ (sK116 @ X8 @ X5) @ X8))) & ((var @ (sK116 @ X8 @ X5)) = $true)) | ($true != (pushprop_p_and_p_prime @ X7 @ X8 @ X5 @ X6))) | (sP1 != $true))),
% 2.63/1.98    inference(skolemisation,[status(esa),new_symbols(skolem,[sK112,sK113,sK114,sK115,sK116])],[f130,f132,f131])).
% 2.63/1.98  thf(f131,plain,(
% 2.63/1.98    ? [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true != (sP0 @ X1)) & ! [X4 : term] : (($true = (X0 @ (sub @ X4 @ X3))) | ((var @ X4) != $true)) & ($true = (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1))) => (((sP0 @ sK113) != $true) & ! [X4 : term] : (($true = (sK112 @ (sub @ X4 @ sK115))) | ((var @ X4) != $true)) & ((pushprop_p_and_p_prime @ sK114 @ sK115 @ sK112 @ sK113) = $true))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f132,plain,(
% 2.63/1.98    ! [X5 : term > $o,X8 : subst] : (? [X9 : term] : (((X5 @ (sub @ X9 @ X8)) != $true) & ($true = (var @ X9))) => (($true != (X5 @ (sub @ (sK116 @ X8 @ X5) @ X8))) & ((var @ (sK116 @ X8 @ X5)) = $true)))),
% 2.63/1.98    introduced(definition,[],[choice_axiom])).
% 2.63/1.98  thf(f130,plain,(
% 2.63/1.98    ((sP1 = $true) | ? [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true != (sP0 @ X1)) & ! [X4 : term] : (($true = (X0 @ (sub @ X4 @ X3))) | ((var @ X4) != $true)) & ($true = (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1)))) & (! [X5 : term > $o,X6 : term > $o,X7 : term,X8 : subst] : (((sP0 @ X6) = $true) | ? [X9 : term] : (((X5 @ (sub @ X9 @ X8)) != $true) & ($true = (var @ X9))) | ($true != (pushprop_p_and_p_prime @ X7 @ X8 @ X5 @ X6))) | (sP1 != $true))),
% 2.63/1.98    inference(rectify,[status(thm)],[f129])).
% 2.63/1.98  thf(f129,plain,(
% 2.63/1.98    ((sP1 = $true) | ? [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true != (sP0 @ X1)) & ! [X4 : term] : (($true = (X0 @ (sub @ X4 @ X3))) | ((var @ X4) != $true)) & ($true = (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1)))) & (! [X0 : term > $o,X1 : term > $o,X2 : term,X3 : subst] : (($true = (sP0 @ X1)) | ? [X4 : term] : (($true != (X0 @ (sub @ X4 @ X3))) & ((var @ X4) = $true)) | ($true != (pushprop_p_and_p_prime @ X2 @ X3 @ X0 @ X1))) | (sP1 != $true))),
% 2.63/1.98    inference(nnf_transformation,[status(thm)],[f16])).
% 2.63/1.98  % SZS output end Proof for DTF2THF_20450
% 2.63/1.98  % (20774)------------------------------
% 2.63/1.98  % (20774)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.98  % (20774)Termination reason: Refutation
% 2.63/1.98  
% 2.63/1.98  % (20774)Memory used [KB]: 12281
% 2.63/1.98  % (20774)Time elapsed: 0.123 s
% 2.63/1.98  % (20774)Instructions burned: 281 (million)
% 2.63/1.98  % (20774)------------------------------
% 2.63/1.98  % (20774)------------------------------
% 2.63/1.98  % (20725)Success in time 0.456 s
%------------------------------------------------------------------------------