↑ 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/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300

% Computer : n031.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:48 PM UTC 2026

% Result   : Theorem 5.84s 2.07s
% Output   : Refutation 5.84s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   19
%            Number of leaves      :  203
% Syntax   : Number of formulae    :  260 (  10 unt;   0 typ;   6 def)
%            Number of atoms       : 12134 (5690 equ;   0 cnn)
%            Maximal formula atoms :  530 (  46 avg)
%            Number of connectives : 27188 (3190   ~;2879   |;2515   &;17701   @)
%                                         ( 569 <=>; 311  =>;   0  <=;   3 <~>)
%            Maximal formula depth :  186 (  14 avg)
%            Number of types       :    5 (   4 usr)
%            Number of type conns  : 2238 (2238   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  799 ( 795 usr; 306 con; 0-4 aty)
%                                         (  20  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 5939 ( 116   ^;4406   !;1417   ?;5939   :)

% 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_142,type,
    sP1: ( subst > term > subst > $o ) > $o ).

thf(func_def_143,type,
    sP2: ( 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: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_178,type,
    sP37: ( 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_186,type,
    sP45: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_202,type,
    sP61: ( 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_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 > $o ) > term > $o ).

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

thf(func_def_217,type,
    sP76: ( term > $o ) > $o ).

thf(func_def_218,type,
    sP77: ( term > $o ) > $o ).

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

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

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

thf(func_def_225,type,
    sP84: ( subst > term > subst > $o ) > $o ).

thf(func_def_226,type,
    sP85: ( subst > term > subst > $o ) > $o ).

thf(func_def_228,type,
    sP87: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

thf(func_def_238,type,
    sP97: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

thf(func_def_250,type,
    sP109: term > ( subst > term > subst > $o ) > $o ).

thf(func_def_251,type,
    sP110: ( subst > term > subst > $o ) > $o ).

thf(func_def_255,type,
    sK114: subst > term > subst > $o ).

thf(func_def_256,type,
    sK115: term > $o ).

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

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

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

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

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

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

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

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

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

thf(func_def_266,type,
    sK125: ( subst > term > subst > $o ) > term ).

thf(func_def_267,type,
    sK126: ( term > $o ) > term ).

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

thf(func_def_269,type,
    sK128: term ).

thf(func_def_270,type,
    sK129: term ).

thf(func_def_271,type,
    sK130: term ).

thf(func_def_272,type,
    sK131: term ).

thf(func_def_273,type,
    sK132: term ).

thf(func_def_274,type,
    sK133: term ).

thf(func_def_275,type,
    sK134: term ).

thf(func_def_276,type,
    sK135: term ).

thf(func_def_277,type,
    sK136: term ).

thf(func_def_278,type,
    sK137: term ).

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

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

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

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

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

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

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

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

thf(func_def_287,type,
    sK146: ( subst > term > subst > $o ) > term ).

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

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

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

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

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

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

thf(func_def_294,type,
    sK153: term ).

thf(func_def_295,type,
    sK154: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_309,type,
    sK168: term ).

thf(func_def_310,type,
    sK169: term ).

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

thf(func_def_312,type,
    sK171: subst ).

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

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

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

thf(func_def_316,type,
    sK175: term > ( 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: ( term > $o ) > term ).

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

thf(func_def_322,type,
    sK181: term ).

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

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

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

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

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

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

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

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

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

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

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

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 ).

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

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

thf(func_def_339,type,
    sK198: subst ).

thf(func_def_340,type,
    sK199: term ).

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

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

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

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

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

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

thf(func_def_347,type,
    sK206: term ).

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

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

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

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

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

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

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

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

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

thf(func_def_357,type,
    sK216: term ).

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

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

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

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

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

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

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

thf(func_def_365,type,
    sK224: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 ).

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

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

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

thf(func_def_386,type,
    sK245: term ).

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

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

thf(func_def_389,type,
    sK248: term ).

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

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

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

thf(func_def_393,type,
    sK252: term ).

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

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

thf(func_def_396,type,
    sK255: ( subst > term > term ) > subst ).

thf(func_def_397,type,
    sK256: ( subst > term > term ) > term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_411,type,
    sK270: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_429,type,
    sK288: term ).

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

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

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

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

thf(func_def_434,type,
    sK293: term ).

thf(func_def_435,type,
    sK294: term ).

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

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

thf(func_def_438,type,
    sK297: ( subst > term > subst > $o ) > subst ).

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

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

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

thf(func_def_442,type,
    sK301: term ).

thf(func_def_443,type,
    sK302: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_468,type,
    sK327: ( subst > term > term ) > subst ).

thf(func_def_469,type,
    sK328: ( subst > term > term ) > subst ).

thf(func_def_470,type,
    sK329: ( subst > term > term ) > term ).

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

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

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

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

thf(func_def_475,type,
    sK334: ( subst > term > subst > $o ) > subst ).

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

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

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

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

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

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

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

thf(func_def_483,type,
    sK342: term ).

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

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

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

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

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

thf(func_def_489,type,
    sK348: ( subst > term > term ) > subst ).

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

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

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

thf(func_def_493,type,
    sK352: term ).

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

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

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

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

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

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

thf(func_def_500,type,
    sK359: term ).

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

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

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

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

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

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

thf(func_def_507,type,
    sK366: ( subst > term > subst > $o ) > subst > term > term ).

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

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

thf(func_def_510,type,
    sK369: term ).

thf(func_def_511,type,
    sK370: term ).

thf(func_def_512,type,
    sK371: subst > term > subst > $o ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_523,type,
    sK382: ( 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 ) > subst ).

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

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

thf(func_def_528,type,
    sK387: ( subst > term > term ) > subst ).

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

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

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

thf(func_def_532,type,
    sK391: term ).

thf(func_def_533,type,
    sK392: term ).

thf(func_def_534,type,
    sK393: term ).

thf(func_def_535,type,
    sK394: term ).

thf(func_def_536,type,
    sK395: term ).

thf(func_def_537,type,
    sK396: term ).

thf(func_def_538,type,
    sK397: term ).

thf(func_def_539,type,
    sK398: term ).

thf(func_def_540,type,
    sK399: term ).

thf(func_def_541,type,
    sK400: term ).

thf(func_def_542,type,
    sK401: term ).

thf(func_def_543,type,
    sK402: subst ).

thf(func_def_544,type,
    sK403: subst ).

thf(func_def_545,type,
    sK404: term ).

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

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

thf(func_def_548,type,
    sK407: term ).

thf(func_def_549,type,
    sK408: subst ).

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

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

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

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 ).

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

thf(func_def_557,type,
    sK416: term ).

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

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

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

thf(func_def_561,type,
    sK420: ( term > $o ) > term ).

thf(func_def_562,type,
    sK421: subst ).

thf(func_def_563,type,
    sK422: subst ).

thf(func_def_564,type,
    sK423: subst ).

thf(func_def_565,type,
    sK424: subst ).

thf(func_def_566,type,
    sK425: term ).

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

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

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

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

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

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

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

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

thf(func_def_575,type,
    sK434: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_586,type,
    sK445: ( subst > term > term ) > term ).

thf(func_def_587,type,
    sK446: ( subst > term > term ) > subst ).

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

thf(func_def_589,type,
    sK448: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_590,type,
    sK449: ( subst > term > subst > $o ) > subst > term > term ).

thf(func_def_591,type,
    sK450: subst > term > subst > $o ).

thf(func_def_592,type,
    sK451: term > $o ).

thf(func_def_593,type,
    sK452: term ).

thf(func_def_594,type,
    sK453: term ).

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_606,type,
    sK465: subst ).

thf(func_def_607,type,
    sK466: term ).

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

thf(func_def_609,type,
    sK468: term ).

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

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

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

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

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

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

thf(func_def_616,type,
    sK475: ( term > $o ) > term ).

thf(func_def_617,type,
    sK476: term > ( term > $o ) > term ).

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

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

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

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

thf(func_def_622,type,
    sK481: term ).

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

thf(func_def_624,type,
    sK483: term ).

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

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

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

thf(func_def_628,type,
    sK487: ( subst > term > term ) > subst ).

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

thf(func_def_630,type,
    sK489: ( subst > term > term ) > term ).

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

thf(func_def_632,type,
    sK491: ( subst > term > term ) > term ).

thf(func_def_633,type,
    sK492: ( subst > term > term ) > subst ).

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

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

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

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

thf(func_def_638,type,
    sK497: term ).

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

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

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

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

thf(func_def_643,type,
    sK502: term ).

thf(func_def_644,type,
    sK503: term > $o ).

thf(func_def_645,type,
    sK504: term ).

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

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

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

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

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

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

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

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 ) > subst ).

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

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

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

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

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

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

thf(func_def_662,type,
    sK521: ( subst > term > term ) > subst ).

thf(func_def_663,type,
    sK522: ( subst > term > term ) > term ).

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

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

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

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

thf(func_def_668,type,
    sK527: ( subst > term > term ) > term ).

thf(func_def_669,type,
    sK528: ( subst > term > term ) > subst ).

thf(func_def_670,type,
    sK529: ( subst > term > term ) > subst ).

thf(func_def_671,type,
    sK530: ( subst > term > term ) > ( subst > term > subst > $o ) > term ).

thf(func_def_672,type,
    sK531: term ).

thf(func_def_673,type,
    sK532: term ).

thf(func_def_674,type,
    sK533: term ).

thf(func_def_675,type,
    sK534: term ).

thf(func_def_676,type,
    sK535: subst ).

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: subst ).

thf(func_def_682,type,
    sK541: term ).

thf(func_def_683,type,
    sK542: subst ).

thf(func_def_684,type,
    sK543: term ).

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

thf(func_def_686,type,
    sK545: subst ).

thf(func_def_687,type,
    sK546: term > $o ).

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: ( subst > term > term ) > subst ).

thf(func_def_692,type,
    sK551: ( subst > term > term ) > term ).

thf(func_def_693,type,
    sK552: term > subst > term > term ).

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

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

thf(func_def_696,type,
    sK555: ( term > $o ) > term ).

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

thf(func_def_698,type,
    sK557: term ).

thf(func_def_699,type,
    sK558: term ).

thf(func_def_700,type,
    sK559: ( subst > term > term ) > subst ).

thf(func_def_701,type,
    sK560: ( subst > term > term ) > term ).

thf(func_def_702,type,
    sK561: term ).

thf(func_def_703,type,
    sK562: term ).

thf(func_def_704,type,
    sK563: term ).

thf(func_def_705,type,
    sK564: term ).

thf(func_def_706,type,
    sK565: term > ( term > $o ) > subst > ( term > $o ) > term ).

thf(func_def_707,type,
    sK566: term > $o ).

thf(func_def_708,type,
    sK567: subst ).

thf(func_def_709,type,
    sK568: term > $o ).

thf(func_def_710,type,
    sK569: term ).

thf(func_def_711,type,
    sK570: subst ).

thf(func_def_712,type,
    sK571: term ).

thf(func_def_713,type,
    sK572: term ).

thf(func_def_714,type,
    sK573: term ).

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

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

thf(func_def_717,type,
    sK576: ( term > $o ) > term ).

thf(func_def_718,type,
    sK577: term ).

thf(func_def_719,type,
    sK578: ( subst > term > subst > $o ) > term > $o ).

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

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

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

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

thf(func_def_724,type,
    sK583: term ).

thf(func_def_725,type,
    sK584: term ).

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

thf(func_def_727,type,
    sK586: term ).

thf(func_def_728,type,
    sK587: term ).

thf(func_def_729,type,
    sK588: term ).

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: ( subst > term > term ) > subst ).

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

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

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

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

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

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

thf(func_def_740,type,
    sK599: subst ).

thf(func_def_741,type,
    sK600: term ).

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

thf(func_def_743,type,
    sK602: subst ).

thf(func_def_744,type,
    sK603: term ).

thf(func_def_745,type,
    sK604: subst ).

thf(func_def_746,type,
    sK605: term ).

thf(func_def_747,type,
    sK606: subst ).

thf(func_def_748,type,
    sK607: term ).

thf(func_def_749,type,
    sK608: term ).

thf(func_def_750,type,
    sK609: term ).

thf(func_def_751,type,
    sK610: term ).

thf(func_def_752,type,
    sK611: subst ).

thf(func_def_753,type,
    sK612: subst ).

thf(func_def_754,type,
    sK613: term ).

thf(func_def_755,type,
    sK614: term ).

thf(func_def_756,type,
    sK615: term ).

thf(func_def_757,type,
    sK616: term ).

thf(func_def_758,type,
    sK617: ( subst > term > term ) > term ).

thf(func_def_759,type,
    sK618: ( subst > term > term ) > subst ).

thf(func_def_760,type,
    sK619: term > subst > term > term ).

thf(func_def_761,type,
    sK620: ( subst > term > subst > $o ) > term > $o ).

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

thf(func_def_763,type,
    sK622: ( term > $o ) > term ).

thf(func_def_764,type,
    sK623: term > ( term > $o ) > subst > term > $o ).

thf(func_def_765,type,
    sK624: subst ).

thf(func_def_766,type,
    sK625: term > $o ).

thf(func_def_767,type,
    sK626: term ).

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

thf(func_def_769,type,
    sK628: subst ).

thf(func_def_770,type,
    sK629: term ).

thf(func_def_771,type,
    sK630: term ).

thf(func_def_772,type,
    sK631: term ).

thf(func_def_773,type,
    sK632: term ).

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

thf(func_def_775,type,
    sK634: term ).

thf(func_def_776,type,
    sK635: term > d_term ).

thf(func_def_777,type,
    sK636: subst > term > ( term > $o ) > term > $o ).

thf(func_def_778,type,
    sK637: term > $o ).

thf(func_def_779,type,
    sK638: term ).

thf(func_def_780,type,
    sK639: subst ).

thf(func_def_781,type,
    sK640: ( term > $o ) > term ).

thf(func_def_782,type,
    sK641: term ).

thf(func_def_783,type,
    sK642: subst ).

thf(func_def_784,type,
    sK643: term > $o ).

thf(func_def_785,type,
    sK644: term ).

thf(func_def_786,type,
    sK645: term > $o ).

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

thf(func_def_788,type,
    sK647: term ).

thf(func_def_789,type,
    sK648: subst ).

thf(func_def_790,type,
    sK649: term ).

thf(func_def_791,type,
    sK650: subst > term > subst > $o ).

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

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

thf(func_def_794,type,
    sK653: term > $o ).

thf(func_def_795,type,
    sK654: term ).

thf(func_def_796,type,
    sK655: term > $o ).

thf(func_def_797,type,
    sK656: term ).

thf(func_def_798,type,
    sK657: subst ).

thf(func_def_799,type,
    sK658: subst > d_subst ).

thf(func_def_800,type,
    sK659: term ).

thf(func_def_802,type,
    sK661: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_803,type,
    sK662: ( term > $o ) > ( subst > term > subst > $o ) > term ).

thf(func_def_805,type,
    ph663: 
      !>[X0: $tType] : X0 ).

thf(f5342,plain,
    $false,
    inference(avatar_sat_refutation,[status(thm)],[f2113,f2254,f2843,f3214,f3284,f4024,f5341]) ).

thf(f5341,plain,
    spl660_83,
    inference(avatar_contradiction_clause,[status(thm)],[f5340]) ).

thf(f5340,plain,
    ( $false
    | spl660_83 ),
    inference(trivial_inequality_removal,[status(thm)],[f5339]) ).

thf(f5339,plain,
    ( ( $true != $true )
    | spl660_83 ),
    inference(superposition,[status(thm)],[f2253,f5338]) ).

thf(f5338,plain,
    ! [X0: term > $o] :
      ( ( sP0 @ X0 )
      = $true ),
    inference(subsumption_resolution,[status(thm)],[f5337,f4085]) ).

thf(f4085,plain,
    ! [X0: term > $o] :
      ( ( $true
        = ( X0 @ ( d2term @ d_one ) ) )
      | ( ( sP0 @ X0 )
        = $true ) ),
    inference(forward_demodulation,[status(thm)],[f783,f3913]) ).

thf(f3913,plain,
    ! [X213: term] :
      ( ( d2term @ d_one )
      = X213 ),
    inference(forward_demodulation,[status(thm)],[f1339,f1306]) ).

thf(f1306,plain,
    ! [X263: d_term] : ( d_one = X263 ),
    inference(cnf_transformation,[status(thm)],[f767]) ).

thf(f767,plain,
    ( ( ( $true = sP113 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP113 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP111 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP111 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP107 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP107 ) )
    & ( ( hoasapinj1 = $true )
      | ( ( sK531 != sK534 )
        & ( ( ap @ ( sub @ sK534 @ id ) @ sK533 )
          = ( ap @ ( sub @ sK531 @ id ) @ sK532 ) ) ) )
    & ( ! [X4: term,X5: term,X6: term,X7: term] :
          ( ( X4 = X7 )
          | ( ( ap @ ( sub @ X4 @ id ) @ X5 )
           != ( ap @ ( sub @ X7 @ id ) @ X6 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP103 )
        & ! [X8: subst] :
            ( ( comp @ X8 @ id )
            = X8 )
        & ( $true != sP104 )
        & ! [X9: subst,X10: term] :
            ( ( sub @ one @ ( push @ X10 @ X9 ) )
            = X10 )
        & ! [X11: term,X12: subst] :
            ( ( comp @ sh @ ( push @ X11 @ X12 ) )
            = X12 ) ) )
    & ( ( $true = sP103 )
      | ( sK535
       != ( comp @ sK535 @ id ) )
      | ( $true = sP104 )
      | ( sK537
       != ( sub @ one @ ( push @ sK537 @ sK536 ) ) )
      | ( sK539
       != ( comp @ sh @ ( push @ sK538 @ sK539 ) ) )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP98 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP98 ) )
    & ( hoasinduction_lem1 = $true )
    & ( pushprop = $true )
    & ( ( $true = sP93 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP93 ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ( sK541
       != ( sub @ one @ ( push @ sK541 @ sK540 ) ) )
      | ! [X20: term > $o,X21: subst,X22: term > $o,X23: term,X24: term] :
          ( ( $true
           != ( X22 @ X23 ) )
          | ( $true
            = ( X20 @ ( sub @ X23 @ ( push @ X24 @ X21 ) ) ) ) )
      | ( ( comp @ sh @ ( push @ sK543 @ sK542 ) )
       != sK542 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X27: subst,X28: term] :
            ( ( sub @ one @ ( push @ X28 @ X27 ) )
            = X28 )
        & ( $true
          = ( sK546 @ sK547 ) )
        & ( $true
         != ( sK544 @ ( sub @ sK547 @ ( push @ sK548 @ sK545 ) ) ) )
        & ! [X34: subst,X35: term] :
            ( ( comp @ sh @ ( push @ X35 @ X34 ) )
            = X34 ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ! [X37: subst > term > term] :
          ( ( sub @ sK549 @ ( push @ ( sK551 @ X37 ) @ ( sK550 @ X37 ) ) )
         != ( X37 @ ( sK550 @ X37 ) @ ( sK551 @ X37 ) ) ) )
    & ( ! [X40: term,X42: subst,X43: term] :
          ( ( sK552 @ X40 @ X42 @ X43 )
          = ( sub @ X40 @ ( push @ X43 @ X42 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ! [X44: subst > term > subst > $o,X46: term] :
          ( ( sK553 @ X44 @ X46 )
          = ( X44 @ id @ X46 @ id ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ! [X48: term > $o] :
          ( ( sK554 @ id @ ( sK555 @ X48 ) @ id )
         != ( X48 @ ( sK555 @ X48 ) ) ) )
    & ( pushprop_lem2v2 = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X50: term] :
            ( ( sub @ X50 @ id )
            = X50 )
        & ! [X51: term,X53: subst,X54: term] :
            ( ( sub @ X51 @ ( push @ X54 @ X53 ) )
            = ( sK556 @ X51 @ X53 @ X54 ) )
        & ( $true != sP90 ) ) )
    & ( ( sK557
       != ( sub @ sK557 @ id ) )
      | ! [X57: subst > term > term] :
          ( ( X57 @ ( sK559 @ X57 ) @ ( sK560 @ X57 ) )
         != ( sub @ sK558 @ ( push @ ( sK560 @ X57 ) @ ( sK559 @ X57 ) ) ) )
      | ( $true = sP90 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( hoasinduction_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( induction2lem_gthm = $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 ) ) ) ) )
    & ( ( $true = sP88 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP88 ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X60: term,X61: term,X62: term,X63: term] :
          ( ( X62 = X63 )
          | ( ( ap @ ( sub @ X60 @ id ) @ X62 )
           != ( ap @ ( sub @ X61 @ id ) @ X63 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ( ( sK563 != sK564 )
        & ( ( ap @ ( sub @ sK562 @ id ) @ sK564 )
          = ( ap @ ( sub @ sK561 @ id ) @ sK563 ) ) ) )
    & ( ! [X68: term > $o,X69: subst,X70: term > $o,X71: term] :
          ( ( ( X68 @ ( sub @ ( sK565 @ X71 @ X70 @ X69 @ X68 ) @ ( push @ X71 @ X69 ) ) )
           != ( X70 @ ( sK565 @ X71 @ X70 @ X69 @ X68 ) ) )
          | ( ( X68 @ X71 )
           != $true )
          | ( $true
            = ( X70 @ one ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ( ! [X77: term] :
            ( ( sK568 @ X77 )
            = ( sK566 @ ( sub @ X77 @ ( push @ sK569 @ sK567 ) ) ) )
        & ( $true
          = ( sK566 @ sK569 ) )
        & ( $true
         != ( sK568 @ one ) ) ) )
    & ( substmonoid_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( axclos = $true )
    & ( ! [X78: subst] :
          ( ( comp @ X78 @ id )
          = X78 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ( ( comp @ sK570 @ id )
       != sK570 ) )
    & ( ! [X80: term,X81: term] :
          ( ( ( lam @ X80 )
           != ( lam @ X81 ) )
          | ( X80 = X81 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ( ( ( lam @ sK571 )
          = ( lam @ sK572 ) )
        & ( sK572 != sK571 ) ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP86 ) )
    & ( ( $true = sP86 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ( ( $true
         != ( sP84 @ sK574 ) )
        & ( $true
         != ( sP83 @ sK574 ) )
        & ( $true
         != ( sK574 @ id @ sK573 @ id ) ) ) )
    & ( ! [X86: term,X87: subst > term > subst > $o] :
          ( ( $true
            = ( sP84 @ X87 ) )
          | ( $true
            = ( sP83 @ X87 ) )
          | ( $true
            = ( X87 @ id @ X86 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ! [X89: term > $o] :
          ( ( X89 @ ( sK576 @ X89 ) )
         != ( sK575 @ id @ ( sK576 @ X89 ) @ id ) )
      | ( sP80 = $true )
      | ( $true = sP82 )
      | ( $true = sP81 )
      | ( ( sub @ sK577 @ id )
       != sK577 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X92: subst > term > subst > $o,X94: term] :
            ( ( X92 @ id @ X94 @ id )
            = ( sK578 @ X92 @ X94 ) )
        & ( sP80 != $true )
        & ( $true != sP82 )
        & ( $true != sP81 )
        & ! [X95: term] :
            ( ( sub @ X95 @ id )
            = X95 ) ) )
    & ( ! [X96: subst > term > term,X97: term,X98: term] :
          ( ( ( lam @ ( X96 @ sh @ one ) )
           != ( ap @ ( sub @ X97 @ id ) @ X98 ) )
          | ( ( sub @ ( X96 @ ( sK581 @ X96 ) @ ( sK579 @ X96 ) ) @ ( sK580 @ X96 ) )
           != ( X96 @ ( comp @ ( sK581 @ X96 ) @ ( sK580 @ X96 ) ) @ ( sub @ ( sK579 @ X96 ) @ ( sK580 @ X96 ) ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ( ( ( ap @ ( sub @ sK583 @ id ) @ sK584 )
          = ( lam @ ( sK582 @ sh @ one ) ) )
        & ! [X105: term,X106: subst,X107: subst] :
            ( ( sK582 @ ( comp @ X107 @ X106 ) @ ( sub @ X105 @ X106 ) )
            = ( sub @ ( sK582 @ X107 @ X105 ) @ X106 ) ) ) )
    & ( ( $true = sP74 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP74 ) )
    & ( hoasapnotvar = $true )
    & ( axabs = $true )
    & ( ( $true = sP69 )
      | ( $true = sP70 )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP69 )
        & ( $true != sP70 )
        & ( $true != sP67 )
        & ( $true != sP68 ) ) )
    & ( axmap = $true )
    & ( ! [X108: term] :
          ( ( sub @ X108 @ ( push @ one @ sh ) )
          = ( sK585 @ X108 @ sh @ one ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ! [X111: subst > term > term] :
          ( ( X111 @ sh @ one )
         != ( sub @ sK586 @ ( push @ one @ sh ) ) ) )
    & ( lamnotap != $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP54 ) )
    & ( ( $true = sP54 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( lamnotvar = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( apinj1 = $true )
      | ( ( sK587 != sK588 )
        & ( ( ap @ sK588 @ sK589 )
          = ( ap @ sK587 @ sK590 ) ) ) )
    & ( ! [X116: term,X117: term,X118: term,X119: term] :
          ( ( X116 = X117 )
          | ( ( ap @ X116 @ X119 )
           != ( ap @ X117 @ X118 ) ) )
      | ( apinj1 != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3aa != $true ) )
    & ! [X120: d_subst] : ( d_id = X120 )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP48 )
        & ( $true != sP47 )
        & ! [X121: term] :
            ( ( sub @ X121 @ id )
            = X121 ) ) )
    & ( ( $true = sP48 )
      | ( $true = sP47 )
      | ( ( sub @ sK591 @ id )
       != sK591 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ! [X123: d_term,X124: d_term] :
        ( ( X123 = X124 )
        | ( ( d2term @ X124 )
         != ( d2term @ X123 ) ) )
    & ( ! [X125: subst > term > term,X126: subst,X127: term,X128: subst > term > term] :
          ( ( ( X125 @ X126 @ X127 )
            = ( X128 @ X126 @ X127 ) )
          | ( ( X125 @ ( comp @ ( sK592 @ X125 ) @ ( sK593 @ X125 ) ) @ ( sub @ ( sK594 @ X125 ) @ ( sK593 @ X125 ) ) )
           != ( sub @ ( X125 @ ( sK592 @ X125 ) @ ( sK594 @ X125 ) ) @ ( sK593 @ X125 ) ) )
          | ( ( sub @ ( X128 @ ( sK595 @ X128 ) @ ( sK597 @ X128 ) ) @ ( sK596 @ X128 ) )
           != ( X128 @ ( comp @ ( sK595 @ X128 ) @ ( sK596 @ X128 ) ) @ ( sub @ ( sK597 @ X128 ) @ ( sK596 @ X128 ) ) ) )
          | ( ( lam @ ( X125 @ sh @ one ) )
           != ( lam @ ( X128 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ( ( ( sK598 @ sK599 @ sK600 )
         != ( sK601 @ sK599 @ sK600 ) )
        & ! [X139: subst,X140: subst,X141: term] :
            ( ( sub @ ( sK598 @ X139 @ X141 ) @ X140 )
            = ( sK598 @ ( comp @ X139 @ X140 ) @ ( sub @ X141 @ X140 ) ) )
        & ! [X142: subst,X143: subst,X144: term] :
            ( ( sK601 @ ( comp @ X142 @ X143 ) @ ( sub @ X144 @ X143 ) )
            = ( sub @ ( sK601 @ X142 @ X144 ) @ X143 ) )
        & ( ( lam @ ( sK601 @ sh @ one ) )
          = ( lam @ ( sK598 @ sh @ one ) ) ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ( axshiftcons = $true )
      | ( ( comp @ sh @ ( push @ sK603 @ sK602 ) )
       != sK602 ) )
    & ( ! [X147: subst,X148: term] :
          ( ( comp @ sh @ ( push @ X148 @ X147 ) )
          = X147 )
      | ( axshiftcons != $true ) )
    & ( ( $true = sP42 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP42 ) )
    & ( ulamvar1 != $true )
    & ( ( $true = sP40 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP40 ) )
    & ( ! [X149: subst,X150: term] :
          ( ( sub @ one @ ( push @ X150 @ X149 ) )
          = X150 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ( ( sub @ one @ ( push @ sK605 @ sK604 ) )
       != sK605 ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X153: subst] :
          ( ( comp @ id @ X153 )
          = X153 )
      | ( axidl != $true ) )
    & ( ( axidl = $true )
      | ( sK606
       != ( comp @ id @ sK606 ) ) )
    & ( ( apinj2 = $true )
      | ( ( sK607 != sK610 )
        & ( ( ap @ sK608 @ sK607 )
          = ( ap @ sK609 @ sK610 ) ) ) )
    & ( ! [X159: term,X160: term,X161: term,X162: term] :
          ( ( X159 = X162 )
          | ( ( ap @ X161 @ X162 )
           != ( ap @ X160 @ X159 ) ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( apnotvar = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( ( substmonoid = $true )
      | ( ( comp @ id @ sK611 )
       != sK611 )
      | ( ( comp @ sK612 @ id )
       != sK612 ) )
    & ( ( ! [X165: subst] :
            ( ( comp @ id @ X165 )
            = X165 )
        & ! [X166: subst] :
            ( ( comp @ X166 @ id )
            = X166 ) )
      | ( substmonoid != $true ) )
    & ( ( axvarid = $true )
      | ( ( sub @ sK613 @ id )
       != sK613 ) )
    & ( ! [X168: term] :
          ( ( sub @ X168 @ id )
          = X168 )
      | ( axvarid != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X169: term] :
            ( ( sub @ X169 @ id )
            = X169 )
        & ( ( sub @ sK614 @ id )
         != sK614 ) ) )
    & ( ( ( sub @ sK615 @ id )
       != sK615 )
      | ! [X172: term] :
          ( ( sub @ X172 @ id )
          = X172 )
      | ( termmset_lthm != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ! [X174: subst > term > term] :
          ( ( X174 @ ( sK618 @ X174 ) @ ( sK617 @ X174 ) )
         != ( sub @ sK616 @ ( push @ ( sK617 @ X174 ) @ ( sK618 @ X174 ) ) ) ) )
    & ( ! [X177: term,X179: term,X180: subst] :
          ( ( sub @ X177 @ ( push @ X179 @ X180 ) )
          = ( sK619 @ X177 @ X180 @ X179 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( induction2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ! [X181: subst > term > subst > $o,X183: term] :
          ( ( sK620 @ X181 @ X183 )
          = ( X181 @ id @ X183 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ! [X185: term > $o] :
          ( ( X185 @ ( sK622 @ X185 ) )
         != ( sK621 @ id @ ( sK622 @ X185 ) @ id ) ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( substmonoid_lthm != $true ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ! [X187: subst,X188: term > $o,X189: term,X191: term] :
          ( ( sK623 @ X189 @ X188 @ X187 @ X191 )
          = ( X188 @ ( sub @ X191 @ ( push @ X189 @ X187 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ! [X195: term > $o] :
          ( ( X195 @ ( sK627 @ X195 ) )
         != ( sK625 @ ( sub @ ( sK627 @ X195 ) @ ( push @ sK626 @ sK624 ) ) ) ) )
    & ( axvarshift = $true )
    & ( ! [X197: subst] :
          ( ( push @ ( sub @ one @ X197 ) @ ( comp @ sh @ X197 ) )
          = X197 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ( ( push @ ( sub @ one @ sK628 ) @ ( comp @ sh @ sK628 ) )
       != sK628 ) )
    & ( ( $true = sP34 )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( $true != sP34 ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X199: term] :
            ( ( sub @ X199 @ id )
            = X199 )
        & ( $true != sP31 ) ) )
    & ( ( sK629
       != ( sub @ sK629 @ id ) )
      | ( $true = sP31 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X201: d_subst,X202: d_subst] :
        ( ( ( d2subst @ X202 )
         != ( d2subst @ X201 ) )
        | ( X201 = X202 ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP27 ) )
    & ( ( $true = sP27 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( shinj = $true )
      | ( ( sK631 != sK630 )
        & ( ( sub @ sK630 @ sh )
          = ( sub @ sK631 @ sh ) ) ) )
    & ( ! [X205: term,X206: term] :
          ( ( X205 = X206 )
          | ( ( sub @ X206 @ sh )
           != ( sub @ X205 @ sh ) ) )
      | ( shinj != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( pushprop_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ! [X208: subst > term > term] :
          ( ( X208 @ sh @ one )
         != ( sub @ sK632 @ ( push @ one @ sh ) ) ) )
    & ( ! [X209: term] :
          ( ( sK633 @ X209 @ sh @ one )
          = ( sub @ X209 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( axassoc = $true )
    & ( ( $true = sP23 )
      | ( sK634
       != ( sub @ sK634 @ id ) )
      | ( sP24 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP23 )
        & ! [X212: term] :
            ( ( sub @ X212 @ id )
            = X212 )
        & ( sP24 != $true ) ) )
    & ! [X213: term] :
        ( ( d2term @ ( sK635 @ X213 ) )
        = X213 )
    & ( ! [X215: term > $o,X216: term,X217: subst,X219: term] :
          ( ( X215 @ ( sub @ X219 @ ( push @ X216 @ X217 ) ) )
          = ( sK636 @ X217 @ X216 @ X215 @ X219 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ! [X223: term > $o] :
          ( ( X223 @ ( sK640 @ X223 ) )
         != ( sK637 @ ( sub @ ( sK640 @ X223 ) @ ( push @ sK638 @ sK639 ) ) ) ) )
    & ( ( $true = sP17 )
      | ( ( sub @ sK641 @ id )
       != sK641 )
      | ( $true = sP16 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP17 )
        & ! [X226: term] :
            ( ( sub @ X226 @ id )
            = X226 )
        & ( $true != sP16 ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ( $true
         != ( sK645 @ one ) )
        & ! [X231: term] :
            ( ( sK645 @ X231 )
            = ( sK643 @ ( sub @ X231 @ ( push @ sK644 @ sK642 ) ) ) )
        & ( $true
          = ( sK643 @ sK644 ) )
        & ! [X232: term,X233: subst] :
            ( ( sub @ one @ ( push @ X232 @ X233 ) )
            = X232 ) ) )
    & ( ! [X234: subst,X235: term > $o,X236: term,X237: term > $o] :
          ( ( $true
            = ( X237 @ one ) )
          | ( ( X235 @ ( sub @ ( sK646 @ X237 @ X236 @ X235 @ X234 ) @ ( push @ X236 @ X234 ) ) )
           != ( X237 @ ( sK646 @ X237 @ X236 @ X235 @ X234 ) ) )
          | ( $true
           != ( X235 @ X236 ) ) )
      | ( sK647
       != ( sub @ one @ ( push @ sK647 @ sK648 ) ) )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( ( sub @ sK649 @ id )
       != sK649 )
      | ( $true = sP13 )
      | ( $true = sP11 )
      | ! [X243: term > $o] :
          ( ( X243 @ ( sK651 @ X243 ) )
         != ( sK650 @ id @ ( sK651 @ X243 ) @ id ) )
      | ( $true = sP12 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X245: term] :
            ( ( sub @ X245 @ id )
            = X245 )
        & ( $true != sP13 )
        & ( $true != sP11 )
        & ! [X246: subst > term > subst > $o,X248: term] :
            ( ( sK652 @ X246 @ X248 )
            = ( X246 @ id @ X248 @ id ) )
        & ( $true != sP12 ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X249: term > $o,X250: term,X251: term > $o,X252: term,X253: subst] :
          ( ( $true
            = ( X251 @ ( sub @ X250 @ ( push @ X252 @ X253 ) ) ) )
          | ( $true
           != ( X249 @ X250 ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ( ( $true
         != ( sK655 @ ( sub @ sK654 @ ( push @ sK656 @ sK657 ) ) ) )
        & ( $true
          = ( sK653 @ sK654 ) ) ) )
    & ! [X259: subst] :
        ( ( d2subst @ ( sK658 @ X259 ) )
        = X259 )
    & ( axapp = $true )
    & ( termmset_gthm = $true )
    & ( ( termmset = $true )
      | ( sK659
       != ( sub @ sK659 @ id ) ) )
    & ( ! [X262: term] :
          ( ( sub @ X262 @ id )
          = X262 )
      | ( termmset != $true ) )
    & ! [X263: d_term] : ( d_one = X263 )
    & ( hoaslaminj_gthm = $true ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK650,sK651,sK652,sK653,sK654,sK655,sK656,sK657,sK658,sK659])],[f691,f766,f765,f764,f763,f762,f761,f760,f759,f758,f757,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]) ).

thf(f692,plain,
    ( ? [X0: term,X1: term,X2: term,X3: term] :
        ( ( X0 != X3 )
        & ( ( ap @ ( sub @ X0 @ id ) @ X1 )
          = ( ap @ ( sub @ X3 @ id ) @ X2 ) ) )
   => ( ( sK531 != sK534 )
      & ( ( ap @ ( sub @ sK534 @ id ) @ sK533 )
        = ( ap @ ( sub @ sK531 @ id ) @ sK532 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f693,plain,
    ( ? [X13: subst] :
        ( ( comp @ X13 @ id )
       != X13 )
   => ( sK535
     != ( comp @ sK535 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f696,plain,
    ( ? [X18: subst,X19: term] :
        ( ( sub @ one @ ( push @ X19 @ X18 ) )
       != X19 )
   => ( sK541
     != ( sub @ one @ ( push @ sK541 @ sK540 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f697,plain,
    ( ? [X25: subst,X26: term] :
        ( ( comp @ sh @ ( push @ X26 @ X25 ) )
       != X25 )
   => ( ( comp @ sh @ ( push @ sK543 @ sK542 ) )
     != sK542 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f698,plain,
    ( ? [X29: term > $o,X30: subst,X31: term > $o,X32: term,X33: term] :
        ( ( $true
          = ( X31 @ X32 ) )
        & ( $true
         != ( X29 @ ( sub @ X32 @ ( push @ X33 @ X30 ) ) ) ) )
   => ( ( $true
        = ( sK546 @ sK547 ) )
      & ( $true
       != ( sK544 @ ( sub @ sK547 @ ( push @ sK548 @ sK545 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f699,plain,
    ( ? [X36: term] :
      ! [X37: subst > term > term] :
      ? [X38: subst,X39: term] :
        ( ( X37 @ X38 @ X39 )
       != ( sub @ X36 @ ( push @ X39 @ X38 ) ) )
   => ! [X37: subst > term > term] :
      ? [X39: term,X38: subst] :
        ( ( X37 @ X38 @ X39 )
       != ( sub @ sK549 @ ( push @ X39 @ X38 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f700,plain,
    ! [X37: subst > term > term] :
      ( ? [X39: term,X38: subst] :
          ( ( X37 @ X38 @ X39 )
         != ( sub @ sK549 @ ( push @ X39 @ X38 ) ) )
     => ( ( sub @ sK549 @ ( push @ ( sK551 @ X37 ) @ ( sK550 @ X37 ) ) )
       != ( X37 @ ( sK550 @ X37 ) @ ( sK551 @ X37 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f701,plain,
    ! [X40: term] :
      ( ? [X41: subst > term > term] :
        ! [X42: subst,X43: term] :
          ( ( sub @ X40 @ ( push @ X43 @ X42 ) )
          = ( X41 @ X42 @ X43 ) )
     => ! [X43: term,X42: subst] :
          ( ( sK552 @ X40 @ X42 @ X43 )
          = ( sub @ X40 @ ( push @ X43 @ X42 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f702,plain,
    ! [X44: subst > term > subst > $o] :
      ( ? [X45: term > $o] :
        ! [X46: term] :
          ( ( X45 @ X46 )
          = ( X44 @ id @ X46 @ id ) )
     => ! [X46: term] :
          ( ( sK553 @ X44 @ X46 )
          = ( X44 @ id @ X46 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f703,plain,
    ( ? [X47: subst > term > subst > $o] :
      ! [X48: term > $o] :
      ? [X49: term] :
        ( ( X48 @ X49 )
       != ( X47 @ id @ X49 @ id ) )
   => ! [X48: term > $o] :
      ? [X49: term] :
        ( ( sK554 @ id @ X49 @ id )
       != ( X48 @ X49 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f704,plain,
    ! [X48: term > $o] :
      ( ? [X49: term] :
          ( ( sK554 @ id @ X49 @ id )
         != ( X48 @ X49 ) )
     => ( ( sK554 @ id @ ( sK555 @ X48 ) @ id )
       != ( X48 @ ( sK555 @ X48 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f705,plain,
    ! [X51: term] :
      ( ? [X52: subst > term > term] :
        ! [X53: subst,X54: term] :
          ( ( X52 @ X53 @ X54 )
          = ( sub @ X51 @ ( push @ X54 @ X53 ) ) )
     => ! [X54: term,X53: subst] :
          ( ( sub @ X51 @ ( push @ X54 @ X53 ) )
          = ( sK556 @ X51 @ X53 @ X54 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f707,plain,
    ( ? [X56: term] :
      ! [X57: subst > term > term] :
      ? [X58: subst,X59: term] :
        ( ( sub @ X56 @ ( push @ X59 @ X58 ) )
       != ( X57 @ X58 @ X59 ) )
   => ! [X57: subst > term > term] :
      ? [X59: term,X58: subst] :
        ( ( sub @ sK558 @ ( push @ X59 @ X58 ) )
       != ( X57 @ X58 @ X59 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f708,plain,
    ! [X57: subst > term > term] :
      ( ? [X59: term,X58: subst] :
          ( ( sub @ sK558 @ ( push @ X59 @ X58 ) )
         != ( X57 @ X58 @ X59 ) )
     => ( ( X57 @ ( sK559 @ X57 ) @ ( sK560 @ X57 ) )
       != ( sub @ sK558 @ ( push @ ( sK560 @ X57 ) @ ( sK559 @ X57 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f709,plain,
    ( ? [X64: term,X65: term,X66: term,X67: term] :
        ( ( X66 != X67 )
        & ( ( ap @ ( sub @ X65 @ id ) @ X67 )
          = ( ap @ ( sub @ X64 @ id ) @ X66 ) ) )
   => ( ( sK563 != sK564 )
      & ( ( ap @ ( sub @ sK562 @ id ) @ sK564 )
        = ( ap @ ( sub @ sK561 @ id ) @ sK563 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f710,plain,
    ! [X68: term > $o,X69: subst,X70: term > $o,X71: term] :
      ( ? [X72: term] :
          ( ( X70 @ X72 )
         != ( X68 @ ( sub @ X72 @ ( push @ X71 @ X69 ) ) ) )
     => ( ( X68 @ ( sub @ ( sK565 @ X71 @ X70 @ X69 @ X68 ) @ ( push @ X71 @ X69 ) ) )
       != ( X70 @ ( sK565 @ X71 @ X70 @ X69 @ X68 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f711,plain,
    ( ? [X73: term > $o,X74: subst,X75: term > $o,X76: term] :
        ( ! [X77: term] :
            ( ( X75 @ X77 )
            = ( X73 @ ( sub @ X77 @ ( push @ X76 @ X74 ) ) ) )
        & ( $true
          = ( X73 @ X76 ) )
        & ( $true
         != ( X75 @ one ) ) )
   => ( ! [X77: term] :
          ( ( sK568 @ X77 )
          = ( sK566 @ ( sub @ X77 @ ( push @ sK569 @ sK567 ) ) ) )
      & ( $true
        = ( sK566 @ sK569 ) )
      & ( $true
       != ( sK568 @ one ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f712,plain,
    ( ? [X79: subst] :
        ( ( comp @ X79 @ id )
       != X79 )
   => ( ( comp @ sK570 @ id )
     != sK570 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f713,plain,
    ( ? [X82: term,X83: term] :
        ( ( ( lam @ X82 )
          = ( lam @ X83 ) )
        & ( X82 != X83 ) )
   => ( ( ( lam @ sK571 )
        = ( lam @ sK572 ) )
      & ( sK572 != sK571 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f714,plain,
    ( ? [X84: term,X85: subst > term > subst > $o] :
        ( ( $true
         != ( sP84 @ X85 ) )
        & ( $true
         != ( sP83 @ X85 ) )
        & ( $true
         != ( X85 @ id @ X84 @ id ) ) )
   => ( ( $true
       != ( sP84 @ sK574 ) )
      & ( $true
       != ( sP83 @ sK574 ) )
      & ( $true
       != ( sK574 @ id @ sK573 @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f715,plain,
    ( ? [X88: subst > term > subst > $o] :
      ! [X89: term > $o] :
      ? [X90: term] :
        ( ( X89 @ X90 )
       != ( X88 @ id @ X90 @ id ) )
   => ! [X89: term > $o] :
      ? [X90: term] :
        ( ( sK575 @ id @ X90 @ id )
       != ( X89 @ X90 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f716,plain,
    ! [X89: term > $o] :
      ( ? [X90: term] :
          ( ( sK575 @ id @ X90 @ id )
         != ( X89 @ X90 ) )
     => ( ( X89 @ ( sK576 @ X89 ) )
       != ( sK575 @ id @ ( sK576 @ X89 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f717,plain,
    ( ? [X91: term] :
        ( ( sub @ X91 @ id )
       != X91 )
   => ( ( sub @ sK577 @ id )
     != sK577 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f718,plain,
    ! [X92: subst > term > subst > $o] :
      ( ? [X93: term > $o] :
        ! [X94: term] :
          ( ( X93 @ X94 )
          = ( X92 @ id @ X94 @ id ) )
     => ! [X94: term] :
          ( ( X92 @ id @ X94 @ id )
          = ( sK578 @ X92 @ X94 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f719,plain,
    ! [X96: subst > term > term] :
      ( ? [X99: term,X100: subst,X101: subst] :
          ( ( sub @ ( X96 @ X101 @ X99 ) @ X100 )
         != ( X96 @ ( comp @ X101 @ X100 ) @ ( sub @ X99 @ X100 ) ) )
     => ( ( sub @ ( X96 @ ( sK581 @ X96 ) @ ( sK579 @ X96 ) ) @ ( sK580 @ X96 ) )
       != ( X96 @ ( comp @ ( sK581 @ X96 ) @ ( sK580 @ X96 ) ) @ ( sub @ ( sK579 @ X96 ) @ ( sK580 @ X96 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f720,plain,
    ( ? [X102: subst > term > term,X103: term,X104: term] :
        ( ( ( ap @ ( sub @ X103 @ id ) @ X104 )
          = ( lam @ ( X102 @ sh @ one ) ) )
        & ! [X105: term,X106: subst,X107: subst] :
            ( ( sub @ ( X102 @ X107 @ X105 ) @ X106 )
            = ( X102 @ ( comp @ X107 @ X106 ) @ ( sub @ X105 @ X106 ) ) ) )
   => ( ( ( ap @ ( sub @ sK583 @ id ) @ sK584 )
        = ( lam @ ( sK582 @ sh @ one ) ) )
      & ! [X107: subst,X106: subst,X105: term] :
          ( ( sK582 @ ( comp @ X107 @ X106 ) @ ( sub @ X105 @ X106 ) )
          = ( sub @ ( sK582 @ X107 @ X105 ) @ X106 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f721,plain,
    ! [X108: term] :
      ( ? [X109: subst > term > term] :
          ( ( sub @ X108 @ ( push @ one @ sh ) )
          = ( X109 @ sh @ one ) )
     => ( ( sub @ X108 @ ( push @ one @ sh ) )
        = ( sK585 @ X108 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f723,plain,
    ( ? [X112: term,X113: term,X114: term,X115: term] :
        ( ( X112 != X113 )
        & ( ( ap @ X112 @ X115 )
          = ( ap @ X113 @ X114 ) ) )
   => ( ( sK587 != sK588 )
      & ( ( ap @ sK588 @ sK589 )
        = ( ap @ sK587 @ sK590 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f724,plain,
    ( ? [X122: term] :
        ( ( sub @ X122 @ id )
       != X122 )
   => ( ( sub @ sK591 @ id )
     != sK591 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f725,plain,
    ! [X125: subst > term > term] :
      ( ? [X129: subst,X130: subst,X131: term] :
          ( ( X125 @ ( comp @ X129 @ X130 ) @ ( sub @ X131 @ X130 ) )
         != ( sub @ ( X125 @ X129 @ X131 ) @ X130 ) )
     => ( ( X125 @ ( comp @ ( sK592 @ X125 ) @ ( sK593 @ X125 ) ) @ ( sub @ ( sK594 @ X125 ) @ ( sK593 @ X125 ) ) )
       != ( sub @ ( X125 @ ( sK592 @ X125 ) @ ( sK594 @ X125 ) ) @ ( sK593 @ X125 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f726,plain,
    ! [X128: subst > term > term] :
      ( ? [X132: subst,X133: subst,X134: term] :
          ( ( X128 @ ( comp @ X132 @ X133 ) @ ( sub @ X134 @ X133 ) )
         != ( sub @ ( X128 @ X132 @ X134 ) @ X133 ) )
     => ( ( sub @ ( X128 @ ( sK595 @ X128 ) @ ( sK597 @ X128 ) ) @ ( sK596 @ X128 ) )
       != ( X128 @ ( comp @ ( sK595 @ X128 ) @ ( sK596 @ X128 ) ) @ ( sub @ ( sK597 @ X128 ) @ ( sK596 @ X128 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f727,plain,
    ( ? [X135: subst > term > term,X136: subst,X137: term,X138: subst > term > term] :
        ( ( ( X135 @ X136 @ X137 )
         != ( X138 @ X136 @ X137 ) )
        & ! [X139: subst,X140: subst,X141: term] :
            ( ( X135 @ ( comp @ X139 @ X140 ) @ ( sub @ X141 @ X140 ) )
            = ( sub @ ( X135 @ X139 @ X141 ) @ X140 ) )
        & ! [X142: subst,X143: subst,X144: term] :
            ( ( sub @ ( X138 @ X142 @ X144 ) @ X143 )
            = ( X138 @ ( comp @ X142 @ X143 ) @ ( sub @ X144 @ X143 ) ) )
        & ( ( lam @ ( X138 @ sh @ one ) )
          = ( lam @ ( X135 @ sh @ one ) ) ) )
   => ( ( ( sK598 @ sK599 @ sK600 )
       != ( sK601 @ sK599 @ sK600 ) )
      & ! [X141: term,X140: subst,X139: subst] :
          ( ( sub @ ( sK598 @ X139 @ X141 ) @ X140 )
          = ( sK598 @ ( comp @ X139 @ X140 ) @ ( sub @ X141 @ X140 ) ) )
      & ! [X144: term,X143: subst,X142: subst] :
          ( ( sK601 @ ( comp @ X142 @ X143 ) @ ( sub @ X144 @ X143 ) )
          = ( sub @ ( sK601 @ X142 @ X144 ) @ X143 ) )
      & ( ( lam @ ( sK601 @ sh @ one ) )
        = ( lam @ ( sK598 @ sh @ one ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f728,plain,
    ( ? [X145: subst,X146: term] :
        ( ( comp @ sh @ ( push @ X146 @ X145 ) )
       != X145 )
   => ( ( comp @ sh @ ( push @ sK603 @ sK602 ) )
     != sK602 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f729,plain,
    ( ? [X151: subst,X152: term] :
        ( ( sub @ one @ ( push @ X152 @ X151 ) )
       != X152 )
   => ( ( sub @ one @ ( push @ sK605 @ sK604 ) )
     != sK605 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f730,plain,
    ( ? [X154: subst] :
        ( ( comp @ id @ X154 )
       != X154 )
   => ( sK606
     != ( comp @ id @ sK606 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f731,plain,
    ( ? [X155: term,X156: term,X157: term,X158: term] :
        ( ( X155 != X158 )
        & ( ( ap @ X156 @ X155 )
          = ( ap @ X157 @ X158 ) ) )
   => ( ( sK607 != sK610 )
      & ( ( ap @ sK608 @ sK607 )
        = ( ap @ sK609 @ sK610 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f732,plain,
    ( ? [X163: subst] :
        ( ( comp @ id @ X163 )
       != X163 )
   => ( ( comp @ id @ sK611 )
     != sK611 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f733,plain,
    ( ? [X164: subst] :
        ( ( comp @ X164 @ id )
       != X164 )
   => ( ( comp @ sK612 @ id )
     != sK612 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f734,plain,
    ( ? [X167: term] :
        ( ( sub @ X167 @ id )
       != X167 )
   => ( ( sub @ sK613 @ id )
     != sK613 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f735,plain,
    ( ? [X170: term] :
        ( ( sub @ X170 @ id )
       != X170 )
   => ( ( sub @ sK614 @ id )
     != sK614 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f736,plain,
    ( ? [X171: term] :
        ( ( sub @ X171 @ id )
       != X171 )
   => ( ( sub @ sK615 @ id )
     != sK615 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f737,plain,
    ( ? [X173: term] :
      ! [X174: subst > term > term] :
      ? [X175: term,X176: subst] :
        ( ( X174 @ X176 @ X175 )
       != ( sub @ X173 @ ( push @ X175 @ X176 ) ) )
   => ! [X174: subst > term > term] :
      ? [X176: subst,X175: term] :
        ( ( X174 @ X176 @ X175 )
       != ( sub @ sK616 @ ( push @ X175 @ X176 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f738,plain,
    ! [X174: subst > term > term] :
      ( ? [X176: subst,X175: term] :
          ( ( X174 @ X176 @ X175 )
         != ( sub @ sK616 @ ( push @ X175 @ X176 ) ) )
     => ( ( X174 @ ( sK618 @ X174 ) @ ( sK617 @ X174 ) )
       != ( sub @ sK616 @ ( push @ ( sK617 @ X174 ) @ ( sK618 @ X174 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f739,plain,
    ! [X177: term] :
      ( ? [X178: subst > term > term] :
        ! [X179: term,X180: subst] :
          ( ( X178 @ X180 @ X179 )
          = ( sub @ X177 @ ( push @ X179 @ X180 ) ) )
     => ! [X180: subst,X179: term] :
          ( ( sub @ X177 @ ( push @ X179 @ X180 ) )
          = ( sK619 @ X177 @ X180 @ X179 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f740,plain,
    ! [X181: subst > term > subst > $o] :
      ( ? [X182: term > $o] :
        ! [X183: term] :
          ( ( X182 @ X183 )
          = ( X181 @ id @ X183 @ id ) )
     => ! [X183: term] :
          ( ( sK620 @ X181 @ X183 )
          = ( X181 @ id @ X183 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f741,plain,
    ( ? [X184: subst > term > subst > $o] :
      ! [X185: term > $o] :
      ? [X186: term] :
        ( ( X184 @ id @ X186 @ id )
       != ( X185 @ X186 ) )
   => ! [X185: term > $o] :
      ? [X186: term] :
        ( ( X185 @ X186 )
       != ( sK621 @ id @ X186 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f742,plain,
    ! [X185: term > $o] :
      ( ? [X186: term] :
          ( ( X185 @ X186 )
         != ( sK621 @ id @ X186 @ id ) )
     => ( ( X185 @ ( sK622 @ X185 ) )
       != ( sK621 @ id @ ( sK622 @ X185 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f743,plain,
    ! [X187: subst,X188: term > $o,X189: term] :
      ( ? [X190: term > $o] :
        ! [X191: term] :
          ( ( X190 @ X191 )
          = ( X188 @ ( sub @ X191 @ ( push @ X189 @ X187 ) ) ) )
     => ! [X191: term] :
          ( ( sK623 @ X189 @ X188 @ X187 @ X191 )
          = ( X188 @ ( sub @ X191 @ ( push @ X189 @ X187 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f744,plain,
    ( ? [X192: subst,X193: term > $o,X194: term] :
      ! [X195: term > $o] :
      ? [X196: term] :
        ( ( X195 @ X196 )
       != ( X193 @ ( sub @ X196 @ ( push @ X194 @ X192 ) ) ) )
   => ! [X195: term > $o] :
      ? [X196: term] :
        ( ( X195 @ X196 )
       != ( sK625 @ ( sub @ X196 @ ( push @ sK626 @ sK624 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f745,plain,
    ! [X195: term > $o] :
      ( ? [X196: term] :
          ( ( X195 @ X196 )
         != ( sK625 @ ( sub @ X196 @ ( push @ sK626 @ sK624 ) ) ) )
     => ( ( X195 @ ( sK627 @ X195 ) )
       != ( sK625 @ ( sub @ ( sK627 @ X195 ) @ ( push @ sK626 @ sK624 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f746,plain,
    ( ? [X198: subst] :
        ( ( push @ ( sub @ one @ X198 ) @ ( comp @ sh @ X198 ) )
       != X198 )
   => ( ( push @ ( sub @ one @ sK628 ) @ ( comp @ sh @ sK628 ) )
     != sK628 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f747,plain,
    ( ? [X200: term] :
        ( ( sub @ X200 @ id )
       != X200 )
   => ( sK629
     != ( sub @ sK629 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f748,plain,
    ( ? [X203: term,X204: term] :
        ( ( X203 != X204 )
        & ( ( sub @ X203 @ sh )
          = ( sub @ X204 @ sh ) ) )
   => ( ( sK631 != sK630 )
      & ( ( sub @ sK630 @ sh )
        = ( sub @ sK631 @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f749,plain,
    ( ? [X207: term] :
      ! [X208: subst > term > term] :
        ( ( X208 @ sh @ one )
       != ( sub @ X207 @ ( push @ one @ sh ) ) )
   => ! [X208: subst > term > term] :
        ( ( X208 @ sh @ one )
       != ( sub @ sK632 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f750,plain,
    ! [X209: term] :
      ( ? [X210: subst > term > term] :
          ( ( X210 @ sh @ one )
          = ( sub @ X209 @ ( push @ one @ sh ) ) )
     => ( ( sK633 @ X209 @ sh @ one )
        = ( sub @ X209 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f752,plain,
    ! [X213: term] :
      ( ? [X214: d_term] :
          ( ( d2term @ X214 )
          = X213 )
     => ( ( d2term @ ( sK635 @ X213 ) )
        = X213 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f753,plain,
    ! [X215: term > $o,X216: term,X217: subst] :
      ( ? [X218: term > $o] :
        ! [X219: term] :
          ( ( X218 @ X219 )
          = ( X215 @ ( sub @ X219 @ ( push @ X216 @ X217 ) ) ) )
     => ! [X219: term] :
          ( ( X215 @ ( sub @ X219 @ ( push @ X216 @ X217 ) ) )
          = ( sK636 @ X217 @ X216 @ X215 @ X219 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f754,plain,
    ( ? [X220: term > $o,X221: term,X222: subst] :
      ! [X223: term > $o] :
      ? [X224: term] :
        ( ( X220 @ ( sub @ X224 @ ( push @ X221 @ X222 ) ) )
       != ( X223 @ X224 ) )
   => ! [X223: term > $o] :
      ? [X224: term] :
        ( ( X223 @ X224 )
       != ( sK637 @ ( sub @ X224 @ ( push @ sK638 @ sK639 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f755,plain,
    ! [X223: term > $o] :
      ( ? [X224: term] :
          ( ( X223 @ X224 )
         != ( sK637 @ ( sub @ X224 @ ( push @ sK638 @ sK639 ) ) ) )
     => ( ( X223 @ ( sK640 @ X223 ) )
       != ( sK637 @ ( sub @ ( sK640 @ X223 ) @ ( push @ sK638 @ sK639 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f757,plain,
    ( ? [X227: subst,X228: term > $o,X229: term,X230: term > $o] :
        ( ( $true
         != ( X230 @ one ) )
        & ! [X231: term] :
            ( ( X228 @ ( sub @ X231 @ ( push @ X229 @ X227 ) ) )
            = ( X230 @ X231 ) )
        & ( ( X228 @ X229 )
          = $true ) )
   => ( ( $true
       != ( sK645 @ one ) )
      & ! [X231: term] :
          ( ( sK645 @ X231 )
          = ( sK643 @ ( sub @ X231 @ ( push @ sK644 @ sK642 ) ) ) )
      & ( $true
        = ( sK643 @ sK644 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f758,plain,
    ! [X234: subst,X235: term > $o,X236: term,X237: term > $o] :
      ( ? [X238: term] :
          ( ( X235 @ ( sub @ X238 @ ( push @ X236 @ X234 ) ) )
         != ( X237 @ X238 ) )
     => ( ( X235 @ ( sub @ ( sK646 @ X237 @ X236 @ X235 @ X234 ) @ ( push @ X236 @ X234 ) ) )
       != ( X237 @ ( sK646 @ X237 @ X236 @ X235 @ X234 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f759,plain,
    ( ? [X239: term,X240: subst] :
        ( ( sub @ one @ ( push @ X239 @ X240 ) )
       != X239 )
   => ( sK647
     != ( sub @ one @ ( push @ sK647 @ sK648 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f761,plain,
    ( ? [X242: subst > term > subst > $o] :
      ! [X243: term > $o] :
      ? [X244: term] :
        ( ( X242 @ id @ X244 @ id )
       != ( X243 @ X244 ) )
   => ! [X243: term > $o] :
      ? [X244: term] :
        ( ( sK650 @ id @ X244 @ id )
       != ( X243 @ X244 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f762,plain,
    ! [X243: term > $o] :
      ( ? [X244: term] :
          ( ( sK650 @ id @ X244 @ id )
         != ( X243 @ X244 ) )
     => ( ( X243 @ ( sK651 @ X243 ) )
       != ( sK650 @ id @ ( sK651 @ X243 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f763,plain,
    ! [X246: subst > term > subst > $o] :
      ( ? [X247: term > $o] :
        ! [X248: term] :
          ( ( X246 @ id @ X248 @ id )
          = ( X247 @ X248 ) )
     => ! [X248: term] :
          ( ( sK652 @ X246 @ X248 )
          = ( X246 @ id @ X248 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f764,plain,
    ( ? [X254: term > $o,X255: term,X256: term > $o,X257: term,X258: subst] :
        ( ( $true
         != ( X256 @ ( sub @ X255 @ ( push @ X257 @ X258 ) ) ) )
        & ( $true
          = ( X254 @ X255 ) ) )
   => ( ( $true
       != ( sK655 @ ( sub @ sK654 @ ( push @ sK656 @ sK657 ) ) ) )
      & ( $true
        = ( sK653 @ sK654 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f765,plain,
    ! [X259: subst] :
      ( ? [X260: d_subst] :
          ( ( d2subst @ X260 )
          = X259 )
     => ( ( d2subst @ ( sK658 @ X259 ) )
        = X259 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f766,plain,
    ( ? [X261: term] :
        ( ( sub @ X261 @ id )
       != X261 )
   => ( sK659
     != ( sub @ sK659 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f690,plain,
    ( ( ( $true = sP113 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP113 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP111 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP111 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP107 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP107 ) )
    & ( ( hoasapinj1 = $true )
      | ? [X466: term,X467: term,X468: term,X469: term] :
          ( ( X466 != X469 )
          & ( ( ap @ ( sub @ X466 @ id ) @ X467 )
            = ( ap @ ( sub @ X469 @ id ) @ X468 ) ) ) )
    & ( ! [X466: term,X467: term,X468: term,X469: term] :
          ( ( X466 = X469 )
          | ( ( ap @ ( sub @ X466 @ id ) @ X467 )
           != ( ap @ ( sub @ X469 @ id ) @ X468 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP103 )
        & ! [X337: subst] :
            ( ( comp @ X337 @ id )
            = X337 )
        & ( $true != sP104 )
        & ! [X333: subst,X334: term] :
            ( ( sub @ one @ ( push @ X334 @ X333 ) )
            = X334 )
        & ! [X335: term,X336: subst] :
            ( ( comp @ sh @ ( push @ X335 @ X336 ) )
            = X336 ) ) )
    & ( ( $true = sP103 )
      | ? [X337: subst] :
          ( ( comp @ X337 @ id )
         != X337 )
      | ( $true = sP104 )
      | ? [X333: subst,X334: term] :
          ( ( sub @ one @ ( push @ X334 @ X333 ) )
         != X334 )
      | ? [X335: term,X336: subst] :
          ( ( comp @ sh @ ( push @ X335 @ X336 ) )
         != X336 )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP98 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP98 ) )
    & ( hoasinduction_lem1 = $true )
    & ( pushprop = $true )
    & ( ( $true = sP93 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP93 ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ? [X323: subst,X324: term] :
          ( ( sub @ one @ ( push @ X324 @ X323 ) )
         != X324 )
      | ! [X327: term > $o,X328: subst,X329: term > $o,X330: term,X331: term] :
          ( ( $true
           != ( X329 @ X330 ) )
          | ( $true
            = ( X327 @ ( sub @ X330 @ ( push @ X331 @ X328 ) ) ) ) )
      | ? [X325: subst,X326: term] :
          ( ( comp @ sh @ ( push @ X326 @ X325 ) )
         != X325 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X323: subst,X324: term] :
            ( ( sub @ one @ ( push @ X324 @ X323 ) )
            = X324 )
        & ? [X327: term > $o,X328: subst,X329: term > $o,X330: term,X331: term] :
            ( ( $true
              = ( X329 @ X330 ) )
            & ( $true
             != ( X327 @ ( sub @ X330 @ ( push @ X331 @ X328 ) ) ) ) )
        & ! [X325: subst,X326: term] :
            ( ( comp @ sh @ ( push @ X326 @ X325 ) )
            = X325 ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X424: term] :
        ! [X425: subst > term > term] :
        ? [X426: subst,X427: term] :
          ( ( X425 @ X426 @ X427 )
         != ( sub @ X424 @ ( push @ X427 @ X426 ) ) ) )
    & ( ! [X424: term] :
        ? [X425: subst > term > term] :
        ! [X426: subst,X427: term] :
          ( ( X425 @ X426 @ X427 )
          = ( sub @ X424 @ ( push @ X427 @ X426 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ! [X181: subst > term > subst > $o] :
        ? [X182: term > $o] :
        ! [X183: term] :
          ( ( X182 @ X183 )
          = ( X181 @ id @ X183 @ id ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X181: subst > term > subst > $o] :
        ! [X182: term > $o] :
        ? [X183: term] :
          ( ( X182 @ X183 )
         != ( X181 @ id @ X183 @ id ) ) )
    & ( pushprop_lem2v2 = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X291: term] :
            ( ( sub @ X291 @ id )
            = X291 )
        & ! [X287: term] :
          ? [X288: subst > term > term] :
          ! [X289: subst,X290: term] :
            ( ( sub @ X287 @ ( push @ X290 @ X289 ) )
            = ( X288 @ X289 @ X290 ) )
        & ( $true != sP90 ) ) )
    & ( ? [X291: term] :
          ( ( sub @ X291 @ id )
         != X291 )
      | ? [X287: term] :
        ! [X288: subst > term > term] :
        ? [X289: subst,X290: term] :
          ( ( sub @ X287 @ ( push @ X290 @ X289 ) )
         != ( X288 @ X289 @ X290 ) )
      | ( $true = sP90 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( hoasinduction_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( induction2lem_gthm = $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 ) ) ) ) )
    & ( ( $true = sP88 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP88 ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X184: term,X185: term,X186: term,X187: term] :
          ( ( X186 = X187 )
          | ( ( ap @ ( sub @ X185 @ id ) @ X187 )
           != ( ap @ ( sub @ X184 @ id ) @ X186 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X184: term,X185: term,X186: term,X187: term] :
          ( ( X186 != X187 )
          & ( ( ap @ ( sub @ X185 @ id ) @ X187 )
            = ( ap @ ( sub @ X184 @ id ) @ X186 ) ) ) )
    & ( ! [X0: term > $o,X1: subst,X2: term > $o,X3: term] :
          ( ? [X4: term] :
              ( ( X2 @ X4 )
             != ( X0 @ ( sub @ X4 @ ( push @ X3 @ X1 ) ) ) )
          | ( $true
           != ( X0 @ X3 ) )
          | ( ( X2 @ one )
            = $true ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X0: term > $o,X1: subst,X2: term > $o,X3: term] :
          ( ! [X4: term] :
              ( ( X2 @ X4 )
              = ( X0 @ ( sub @ X4 @ ( push @ X3 @ X1 ) ) ) )
          & ( $true
            = ( X0 @ X3 ) )
          & ( ( X2 @ one )
           != $true ) ) )
    & ( substmonoid_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( axclos = $true )
    & ( ! [X212: subst] :
          ( ( comp @ X212 @ id )
          = X212 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ? [X212: subst] :
          ( ( comp @ X212 @ id )
         != X212 ) )
    & ( ! [X188: term,X189: term] :
          ( ( ( lam @ X189 )
           != ( lam @ X188 ) )
          | ( X188 = X189 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X188: term,X189: term] :
          ( ( ( lam @ X189 )
            = ( lam @ X188 ) )
          & ( X188 != X189 ) ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP86 ) )
    & ( ( $true = sP86 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X44: term,X45: subst > term > subst > $o] :
          ( ( $true
           != ( sP84 @ X45 ) )
          & ( $true
           != ( sP83 @ X45 ) )
          & ( $true
           != ( X45 @ id @ X44 @ id ) ) ) )
    & ( ! [X44: term,X45: subst > term > subst > $o] :
          ( ( $true
            = ( sP84 @ X45 ) )
          | ( $true
            = ( sP83 @ X45 ) )
          | ( $true
            = ( X45 @ id @ X44 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ? [X257: subst > term > subst > $o] :
        ! [X258: term > $o] :
        ? [X259: term] :
          ( ( X258 @ X259 )
         != ( X257 @ id @ X259 @ id ) )
      | ( sP80 = $true )
      | ( $true = sP82 )
      | ( $true = sP81 )
      | ? [X267: term] :
          ( ( sub @ X267 @ id )
         != X267 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X257: subst > term > subst > $o] :
          ? [X258: term > $o] :
          ! [X259: term] :
            ( ( X258 @ X259 )
            = ( X257 @ id @ X259 @ id ) )
        & ( sP80 != $true )
        & ( $true != sP82 )
        & ( $true != sP81 )
        & ! [X267: term] :
            ( ( sub @ X267 @ id )
            = X267 ) ) )
    & ( ! [X138: subst > term > term,X139: term,X140: term] :
          ( ( ( lam @ ( X138 @ sh @ one ) )
           != ( ap @ ( sub @ X139 @ id ) @ X140 ) )
          | ? [X141: term,X142: subst,X143: subst] :
              ( ( sub @ ( X138 @ X143 @ X141 ) @ X142 )
             != ( X138 @ ( comp @ X143 @ X142 ) @ ( sub @ X141 @ X142 ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X138: subst > term > term,X139: term,X140: term] :
          ( ( ( lam @ ( X138 @ sh @ one ) )
            = ( ap @ ( sub @ X139 @ id ) @ X140 ) )
          & ! [X141: term,X142: subst,X143: subst] :
              ( ( sub @ ( X138 @ X143 @ X141 ) @ X142 )
              = ( X138 @ ( comp @ X143 @ X142 ) @ ( sub @ X141 @ X142 ) ) ) ) )
    & ( ( $true = sP74 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP74 ) )
    & ( hoasapnotvar = $true )
    & ( axabs = $true )
    & ( ( $true = sP69 )
      | ( $true = sP70 )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP69 )
        & ( $true != sP70 )
        & ( $true != sP67 )
        & ( $true != sP68 ) ) )
    & ( axmap = $true )
    & ( ! [X312: term] :
        ? [X313: subst > term > term] :
          ( ( X313 @ sh @ one )
          = ( sub @ X312 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X312: term] :
        ! [X313: subst > term > term] :
          ( ( X313 @ sh @ one )
         != ( sub @ X312 @ ( push @ one @ sh ) ) ) )
    & ( lamnotap != $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP54 ) )
    & ( ( $true = sP54 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( lamnotvar = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( apinj1 = $true )
      | ? [X526: term,X527: term,X528: term,X529: term] :
          ( ( X526 != X527 )
          & ( ( ap @ X526 @ X529 )
            = ( ap @ X527 @ X528 ) ) ) )
    & ( ! [X526: term,X527: term,X528: term,X529: term] :
          ( ( X526 = X527 )
          | ( ( ap @ X526 @ X529 )
           != ( ap @ X527 @ X528 ) ) )
      | ( apinj1 != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3aa != $true ) )
    & ! [X135: d_subst] : ( d_id = X135 )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP48 )
        & ( $true != sP47 )
        & ! [X490: term] :
            ( ( sub @ X490 @ id )
            = X490 ) ) )
    & ( ( $true = sP48 )
      | ( $true = sP47 )
      | ? [X490: term] :
          ( ( sub @ X490 @ id )
         != X490 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ! [X524: d_term,X525: d_term] :
        ( ( X524 = X525 )
        | ( ( d2term @ X525 )
         != ( d2term @ X524 ) ) )
    & ( ! [X150: subst > term > term,X151: subst,X152: term,X153: subst > term > term] :
          ( ( ( X153 @ X151 @ X152 )
            = ( X150 @ X151 @ X152 ) )
          | ? [X154: subst,X155: subst,X156: term] :
              ( ( X150 @ ( comp @ X154 @ X155 ) @ ( sub @ X156 @ X155 ) )
             != ( sub @ ( X150 @ X154 @ X156 ) @ X155 ) )
          | ? [X157: subst,X158: subst,X159: term] :
              ( ( sub @ ( X153 @ X157 @ X159 ) @ X158 )
             != ( X153 @ ( comp @ X157 @ X158 ) @ ( sub @ X159 @ X158 ) ) )
          | ( ( lam @ ( X153 @ sh @ one ) )
           != ( lam @ ( X150 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X150: subst > term > term,X151: subst,X152: term,X153: subst > term > term] :
          ( ( ( X153 @ X151 @ X152 )
           != ( X150 @ X151 @ X152 ) )
          & ! [X154: subst,X155: subst,X156: term] :
              ( ( X150 @ ( comp @ X154 @ X155 ) @ ( sub @ X156 @ X155 ) )
              = ( sub @ ( X150 @ X154 @ X156 ) @ X155 ) )
          & ! [X157: subst,X158: subst,X159: term] :
              ( ( sub @ ( X153 @ X157 @ X159 ) @ X158 )
              = ( X153 @ ( comp @ X157 @ X158 ) @ ( sub @ X159 @ X158 ) ) )
          & ( ( lam @ ( X153 @ sh @ one ) )
            = ( lam @ ( X150 @ sh @ one ) ) ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ( axshiftcons = $true )
      | ? [X538: subst,X539: term] :
          ( ( comp @ sh @ ( push @ X539 @ X538 ) )
         != X538 ) )
    & ( ! [X538: subst,X539: term] :
          ( ( comp @ sh @ ( push @ X539 @ X538 ) )
          = X538 )
      | ( axshiftcons != $true ) )
    & ( ( $true = sP42 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP42 ) )
    & ( ulamvar1 != $true )
    & ( ( $true = sP40 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP40 ) )
    & ( ! [X179: subst,X180: term] :
          ( ( sub @ one @ ( push @ X180 @ X179 ) )
          = X180 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X179: subst,X180: term] :
          ( ( sub @ one @ ( push @ X180 @ X179 ) )
         != X180 ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X332: subst] :
          ( ( comp @ id @ X332 )
          = X332 )
      | ( axidl != $true ) )
    & ( ( axidl = $true )
      | ? [X332: subst] :
          ( ( comp @ id @ X332 )
         != X332 ) )
    & ( ( apinj2 = $true )
      | ? [X515: term,X516: term,X517: term,X518: term] :
          ( ( X515 != X518 )
          & ( ( ap @ X516 @ X515 )
            = ( ap @ X517 @ X518 ) ) ) )
    & ( ! [X515: term,X516: term,X517: term,X518: term] :
          ( ( X515 = X518 )
          | ( ( ap @ X516 @ X515 )
           != ( ap @ X517 @ X518 ) ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( apnotvar = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( ( substmonoid = $true )
      | ? [X160: subst] :
          ( ( comp @ id @ X160 )
         != X160 )
      | ? [X161: subst] :
          ( ( comp @ X161 @ id )
         != X161 ) )
    & ( ( ! [X160: subst] :
            ( ( comp @ id @ X160 )
            = X160 )
        & ! [X161: subst] :
            ( ( comp @ X161 @ id )
            = X161 ) )
      | ( substmonoid != $true ) )
    & ( ( axvarid = $true )
      | ? [X322: term] :
          ( ( sub @ X322 @ id )
         != X322 ) )
    & ( ! [X322: term] :
          ( ( sub @ X322 @ id )
          = X322 )
      | ( axvarid != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X320: term] :
            ( ( sub @ X320 @ id )
            = X320 )
        & ? [X321: term] :
            ( ( sub @ X321 @ id )
           != X321 ) ) )
    & ( ? [X320: term] :
          ( ( sub @ X320 @ id )
         != X320 )
      | ! [X321: term] :
          ( ( sub @ X321 @ id )
          = X321 )
      | ( termmset_lthm != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X175: term] :
        ! [X176: subst > term > term] :
        ? [X177: term,X178: subst] :
          ( ( sub @ X175 @ ( push @ X177 @ X178 ) )
         != ( X176 @ X178 @ X177 ) ) )
    & ( ! [X175: term] :
        ? [X176: subst > term > term] :
        ! [X177: term,X178: subst] :
          ( ( sub @ X175 @ ( push @ X177 @ X178 ) )
          = ( X176 @ X178 @ X177 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( induction2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ! [X209: subst > term > subst > $o] :
        ? [X210: term > $o] :
        ! [X211: term] :
          ( ( X210 @ X211 )
          = ( X209 @ id @ X211 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X209: subst > term > subst > $o] :
        ! [X210: term > $o] :
        ? [X211: term] :
          ( ( X210 @ X211 )
         != ( X209 @ id @ X211 @ id ) ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( substmonoid_lthm != $true ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ! [X314: subst,X315: term > $o,X316: term] :
        ? [X317: term > $o] :
        ! [X318: term] :
          ( ( X315 @ ( sub @ X318 @ ( push @ X316 @ X314 ) ) )
          = ( X317 @ X318 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X314: subst,X315: term > $o,X316: term] :
        ! [X317: term > $o] :
        ? [X318: term] :
          ( ( X315 @ ( sub @ X318 @ ( push @ X316 @ X314 ) ) )
         != ( X317 @ X318 ) ) )
    & ( axvarshift = $true )
    & ( ! [X319: subst] :
          ( ( push @ ( sub @ one @ X319 ) @ ( comp @ sh @ X319 ) )
          = X319 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X319: subst] :
          ( ( push @ ( sub @ one @ X319 ) @ ( comp @ sh @ X319 ) )
         != X319 ) )
    & ( ( $true = sP34 )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( $true != sP34 ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X222: term] :
            ( ( sub @ X222 @ id )
            = X222 )
        & ( $true != sP31 ) ) )
    & ( ? [X222: term] :
          ( ( sub @ X222 @ id )
         != X222 )
      | ( $true = sP31 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X454: d_subst,X455: d_subst] :
        ( ( ( d2subst @ X454 )
         != ( d2subst @ X455 ) )
        | ( X454 = X455 ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP27 ) )
    & ( ( $true = sP27 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( shinj = $true )
      | ? [X456: term,X457: term] :
          ( ( X456 != X457 )
          & ( ( sub @ X456 @ sh )
            = ( sub @ X457 @ sh ) ) ) )
    & ( ! [X456: term,X457: term] :
          ( ( X456 = X457 )
          | ( ( sub @ X456 @ sh )
           != ( sub @ X457 @ sh ) ) )
      | ( shinj != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( pushprop_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X136: term] :
        ! [X137: subst > term > term] :
          ( ( sub @ X136 @ ( push @ one @ sh ) )
         != ( X137 @ sh @ one ) ) )
    & ( ! [X136: term] :
        ? [X137: subst > term > term] :
          ( ( sub @ X136 @ ( push @ one @ sh ) )
          = ( X137 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( axassoc = $true )
    & ( ( $true = sP23 )
      | ? [X99: term] :
          ( ( sub @ X99 @ id )
         != X99 )
      | ( sP24 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP23 )
        & ! [X99: term] :
            ( ( sub @ X99 @ id )
            = X99 )
        & ( sP24 != $true ) ) )
    & ! [X302: term] :
      ? [X303: d_term] :
        ( ( d2term @ X303 )
        = X302 )
    & ( ! [X519: term > $o,X520: term,X521: subst] :
        ? [X522: term > $o] :
        ! [X523: term] :
          ( ( X519 @ ( sub @ X523 @ ( push @ X520 @ X521 ) ) )
          = ( X522 @ X523 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X519: term > $o,X520: term,X521: subst] :
        ! [X522: term > $o] :
        ? [X523: term] :
          ( ( X519 @ ( sub @ X523 @ ( push @ X520 @ X521 ) ) )
         != ( X522 @ X523 ) ) )
    & ( ( $true = sP17 )
      | ? [X53: term] :
          ( ( sub @ X53 @ id )
         != X53 )
      | ( $true = sP16 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP17 )
        & ! [X53: term] :
            ( ( sub @ X53 @ id )
            = X53 )
        & ( $true != sP16 ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X460: subst,X461: term > $o,X462: term,X463: term > $o] :
            ( ( ( X463 @ one )
             != $true )
            & ! [X464: term] :
                ( ( X461 @ ( sub @ X464 @ ( push @ X462 @ X460 ) ) )
                = ( X463 @ X464 ) )
            & ( $true
              = ( X461 @ X462 ) ) )
        & ! [X458: term,X459: subst] :
            ( ( sub @ one @ ( push @ X458 @ X459 ) )
            = X458 ) ) )
    & ( ! [X460: subst,X461: term > $o,X462: term,X463: term > $o] :
          ( ( ( X463 @ one )
            = $true )
          | ? [X464: term] :
              ( ( X461 @ ( sub @ X464 @ ( push @ X462 @ X460 ) ) )
             != ( X463 @ X464 ) )
          | ( $true
           != ( X461 @ X462 ) ) )
      | ? [X458: term,X459: subst] :
          ( ( sub @ one @ ( push @ X458 @ X459 ) )
         != X458 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ? [X15: term] :
          ( ( sub @ X15 @ id )
         != X15 )
      | ( $true = sP13 )
      | ( $true = sP11 )
      | ? [X5: subst > term > subst > $o] :
        ! [X6: term > $o] :
        ? [X7: term] :
          ( ( X5 @ id @ X7 @ id )
         != ( X6 @ X7 ) )
      | ( $true = sP12 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X15: term] :
            ( ( sub @ X15 @ id )
            = X15 )
        & ( $true != sP13 )
        & ( $true != sP11 )
        & ! [X5: subst > term > subst > $o] :
          ? [X6: term > $o] :
          ! [X7: term] :
            ( ( X5 @ id @ X7 @ id )
            = ( X6 @ X7 ) )
        & ( $true != sP12 ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X477: term > $o,X478: term,X479: term > $o,X480: term,X481: subst] :
          ( ( $true
            = ( X479 @ ( sub @ X478 @ ( push @ X480 @ X481 ) ) ) )
          | ( $true
           != ( X477 @ X478 ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X477: term > $o,X478: term,X479: term > $o,X480: term,X481: subst] :
          ( ( $true
           != ( X479 @ ( sub @ X478 @ ( push @ X480 @ X481 ) ) ) )
          & ( $true
            = ( X477 @ X478 ) ) ) )
    & ! [X97: subst] :
      ? [X98: d_subst] :
        ( ( d2subst @ X98 )
        = X97 )
    & ( axapp = $true )
    & ( termmset_gthm = $true )
    & ( ( termmset = $true )
      | ? [X465: term] :
          ( ( sub @ X465 @ id )
         != X465 ) )
    & ( ! [X465: term] :
          ( ( sub @ X465 @ id )
          = X465 )
      | ( termmset != $true ) )
    & ! [X208: d_term] : ( d_one = X208 )
    & ( hoaslaminj_gthm = $true ) ),
    inference(flattening,[status(thm)],[f689]) ).

thf(f689,plain,
    ( ( ( $true = sP113 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP113 ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP111 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP111 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP107 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP107 ) )
    & ( ( hoasapinj1 = $true )
      | ? [X466: term,X467: term,X468: term,X469: term] :
          ( ( X466 != X469 )
          & ( ( ap @ ( sub @ X466 @ id ) @ X467 )
            = ( ap @ ( sub @ X469 @ id ) @ X468 ) ) ) )
    & ( ! [X466: term,X467: term,X468: term,X469: term] :
          ( ( X466 = X469 )
          | ( ( ap @ ( sub @ X466 @ id ) @ X467 )
           != ( ap @ ( sub @ X469 @ id ) @ X468 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP103 )
        & ! [X337: subst] :
            ( ( comp @ X337 @ id )
            = X337 )
        & ( $true != sP104 )
        & ! [X333: subst,X334: term] :
            ( ( sub @ one @ ( push @ X334 @ X333 ) )
            = X334 )
        & ! [X335: term,X336: subst] :
            ( ( comp @ sh @ ( push @ X335 @ X336 ) )
            = X336 ) ) )
    & ( ( $true = sP103 )
      | ? [X337: subst] :
          ( ( comp @ X337 @ id )
         != X337 )
      | ( $true = sP104 )
      | ? [X333: subst,X334: term] :
          ( ( sub @ one @ ( push @ X334 @ X333 ) )
         != X334 )
      | ? [X335: term,X336: subst] :
          ( ( comp @ sh @ ( push @ X335 @ X336 ) )
         != X336 )
      | ( induction2lem_lthm != $true ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP98 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP98 ) )
    & ( hoasinduction_lem1 = $true )
    & ( pushprop = $true )
    & ( ( $true = sP93 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP93 ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ? [X323: subst,X324: term] :
          ( ( sub @ one @ ( push @ X324 @ X323 ) )
         != X324 )
      | ! [X327: term > $o,X328: subst,X329: term > $o,X330: term,X331: term] :
          ( ( $true
           != ( X329 @ X330 ) )
          | ( $true
            = ( X327 @ ( sub @ X330 @ ( push @ X331 @ X328 ) ) ) ) )
      | ? [X325: subst,X326: term] :
          ( ( comp @ sh @ ( push @ X326 @ X325 ) )
         != X325 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X323: subst,X324: term] :
            ( ( sub @ one @ ( push @ X324 @ X323 ) )
            = X324 )
        & ? [X327: term > $o,X328: subst,X329: term > $o,X330: term,X331: term] :
            ( ( $true
              = ( X329 @ X330 ) )
            & ( $true
             != ( X327 @ ( sub @ X330 @ ( push @ X331 @ X328 ) ) ) ) )
        & ! [X325: subst,X326: term] :
            ( ( comp @ sh @ ( push @ X326 @ X325 ) )
            = X325 ) ) )
    & ( ulamvarind = $true )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X424: term] :
        ! [X425: subst > term > term] :
        ? [X426: subst,X427: term] :
          ( ( X425 @ X426 @ X427 )
         != ( sub @ X424 @ ( push @ X427 @ X426 ) ) ) )
    & ( ! [X424: term] :
        ? [X425: subst > term > term] :
        ! [X426: subst,X427: term] :
          ( ( X425 @ X426 @ X427 )
          = ( sub @ X424 @ ( push @ X427 @ X426 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ! [X181: subst > term > subst > $o] :
        ? [X182: term > $o] :
        ! [X183: term] :
          ( ( X182 @ X183 )
          = ( X181 @ id @ X183 @ id ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X181: subst > term > subst > $o] :
        ! [X182: term > $o] :
        ? [X183: term] :
          ( ( X182 @ X183 )
         != ( X181 @ id @ X183 @ id ) ) )
    & ( pushprop_lem2v2 = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X291: term] :
            ( ( sub @ X291 @ id )
            = X291 )
        & ! [X287: term] :
          ? [X288: subst > term > term] :
          ! [X289: subst,X290: term] :
            ( ( sub @ X287 @ ( push @ X290 @ X289 ) )
            = ( X288 @ X289 @ X290 ) )
        & ( $true != sP90 ) ) )
    & ( ? [X291: term] :
          ( ( sub @ X291 @ id )
         != X291 )
      | ? [X287: term] :
        ! [X288: subst > term > term] :
        ? [X289: subst,X290: term] :
          ( ( sub @ X287 @ ( push @ X290 @ X289 ) )
         != ( X288 @ X289 @ X290 ) )
      | ( $true = sP90 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( hoasinduction_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( induction2lem_gthm = $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 ) ) ) ) )
    & ( ( $true = sP88 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP88 ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X184: term,X185: term,X186: term,X187: term] :
          ( ( X186 = X187 )
          | ( ( ap @ ( sub @ X185 @ id ) @ X187 )
           != ( ap @ ( sub @ X184 @ id ) @ X186 ) ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X184: term,X185: term,X186: term,X187: term] :
          ( ( X186 != X187 )
          & ( ( ap @ ( sub @ X185 @ id ) @ X187 )
            = ( ap @ ( sub @ X184 @ id ) @ X186 ) ) ) )
    & ( ! [X0: term > $o,X1: subst,X2: term > $o,X3: term] :
          ( ? [X4: term] :
              ( ( X2 @ X4 )
             != ( X0 @ ( sub @ X4 @ ( push @ X3 @ X1 ) ) ) )
          | ( $true
           != ( X0 @ X3 ) )
          | ( ( X2 @ one )
            = $true ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X0: term > $o,X1: subst,X2: term > $o,X3: term] :
          ( ! [X4: term] :
              ( ( X2 @ X4 )
              = ( X0 @ ( sub @ X4 @ ( push @ X3 @ X1 ) ) ) )
          & ( $true
            = ( X0 @ X3 ) )
          & ( ( X2 @ one )
           != $true ) ) )
    & ( substmonoid_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( axclos = $true )
    & ( ! [X212: subst] :
          ( ( comp @ X212 @ id )
          = X212 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ? [X212: subst] :
          ( ( comp @ X212 @ id )
         != X212 ) )
    & ( ! [X188: term,X189: term] :
          ( ( ( lam @ X189 )
           != ( lam @ X188 ) )
          | ( X188 = X189 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X188: term,X189: term] :
          ( ( ( lam @ X189 )
            = ( lam @ X188 ) )
          & ( X188 != X189 ) ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP86 ) )
    & ( ( $true = sP86 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X44: term,X45: subst > term > subst > $o] :
          ( ( $true
           != ( sP84 @ X45 ) )
          & ( $true
           != ( sP83 @ X45 ) )
          & ( $true
           != ( X45 @ id @ X44 @ id ) ) ) )
    & ( ! [X44: term,X45: subst > term > subst > $o] :
          ( ( $true
            = ( sP84 @ X45 ) )
          | ( $true
            = ( sP83 @ X45 ) )
          | ( $true
            = ( X45 @ id @ X44 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ? [X257: subst > term > subst > $o] :
        ! [X258: term > $o] :
        ? [X259: term] :
          ( ( X258 @ X259 )
         != ( X257 @ id @ X259 @ id ) )
      | ( sP80 = $true )
      | ( $true = sP82 )
      | ( $true = sP81 )
      | ? [X267: term] :
          ( ( sub @ X267 @ id )
         != X267 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X257: subst > term > subst > $o] :
          ? [X258: term > $o] :
          ! [X259: term] :
            ( ( X258 @ X259 )
            = ( X257 @ id @ X259 @ id ) )
        & ( sP80 != $true )
        & ( $true != sP82 )
        & ( $true != sP81 )
        & ! [X267: term] :
            ( ( sub @ X267 @ id )
            = X267 ) ) )
    & ( ! [X138: subst > term > term,X139: term,X140: term] :
          ( ( ( lam @ ( X138 @ sh @ one ) )
           != ( ap @ ( sub @ X139 @ id ) @ X140 ) )
          | ? [X141: term,X142: subst,X143: subst] :
              ( ( sub @ ( X138 @ X143 @ X141 ) @ X142 )
             != ( X138 @ ( comp @ X143 @ X142 ) @ ( sub @ X141 @ X142 ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X138: subst > term > term,X139: term,X140: term] :
          ( ( ( lam @ ( X138 @ sh @ one ) )
            = ( ap @ ( sub @ X139 @ id ) @ X140 ) )
          & ! [X141: term,X142: subst,X143: subst] :
              ( ( sub @ ( X138 @ X143 @ X141 ) @ X142 )
              = ( X138 @ ( comp @ X143 @ X142 ) @ ( sub @ X141 @ X142 ) ) ) ) )
    & ( ( $true = sP74 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP74 ) )
    & ( hoasapnotvar = $true )
    & ( axabs = $true )
    & ( ( $true = sP69 )
      | ( $true = sP70 )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP69 )
        & ( $true != sP70 )
        & ( $true != sP67 )
        & ( $true != sP68 ) ) )
    & ( axmap = $true )
    & ( ! [X312: term] :
        ? [X313: subst > term > term] :
          ( ( X313 @ sh @ one )
          = ( sub @ X312 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X312: term] :
        ! [X313: subst > term > term] :
          ( ( X313 @ sh @ one )
         != ( sub @ X312 @ ( push @ one @ sh ) ) ) )
    & ( lamnotap != $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP54 ) )
    & ( ( $true = sP54 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( lamnotvar = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( apinj1 = $true )
      | ? [X526: term,X527: term,X528: term,X529: term] :
          ( ( X526 != X527 )
          & ( ( ap @ X526 @ X529 )
            = ( ap @ X527 @ X528 ) ) ) )
    & ( ! [X526: term,X527: term,X528: term,X529: term] :
          ( ( X526 = X527 )
          | ( ( ap @ X526 @ X529 )
           != ( ap @ X527 @ X528 ) ) )
      | ( apinj1 != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3aa != $true ) )
    & ! [X135: d_subst] : ( d_id = X135 )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ( $true != sP48 )
        & ( $true != sP47 )
        & ! [X490: term] :
            ( ( sub @ X490 @ id )
            = X490 ) ) )
    & ( ( $true = sP48 )
      | ( $true = sP47 )
      | ? [X490: term] :
          ( ( sub @ X490 @ id )
         != X490 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( pushprop_lem3v2 = $true )
    & ! [X524: d_term,X525: d_term] :
        ( ( X524 = X525 )
        | ( ( d2term @ X525 )
         != ( d2term @ X524 ) ) )
    & ( ! [X150: subst > term > term,X151: subst,X152: term,X153: subst > term > term] :
          ( ( ( X153 @ X151 @ X152 )
            = ( X150 @ X151 @ X152 ) )
          | ? [X154: subst,X155: subst,X156: term] :
              ( ( X150 @ ( comp @ X154 @ X155 ) @ ( sub @ X156 @ X155 ) )
             != ( sub @ ( X150 @ X154 @ X156 ) @ X155 ) )
          | ? [X157: subst,X158: subst,X159: term] :
              ( ( sub @ ( X153 @ X157 @ X159 ) @ X158 )
             != ( X153 @ ( comp @ X157 @ X158 ) @ ( sub @ X159 @ X158 ) ) )
          | ( ( lam @ ( X153 @ sh @ one ) )
           != ( lam @ ( X150 @ sh @ one ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X150: subst > term > term,X151: subst,X152: term,X153: subst > term > term] :
          ( ( ( X153 @ X151 @ X152 )
           != ( X150 @ X151 @ X152 ) )
          & ! [X154: subst,X155: subst,X156: term] :
              ( ( X150 @ ( comp @ X154 @ X155 ) @ ( sub @ X156 @ X155 ) )
              = ( sub @ ( X150 @ X154 @ X156 ) @ X155 ) )
          & ! [X157: subst,X158: subst,X159: term] :
              ( ( sub @ ( X153 @ X157 @ X159 ) @ X158 )
              = ( X153 @ ( comp @ X157 @ X158 ) @ ( sub @ X159 @ X158 ) ) )
          & ( ( lam @ ( X153 @ sh @ one ) )
            = ( lam @ ( X150 @ sh @ one ) ) ) ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ( axshiftcons = $true )
      | ? [X538: subst,X539: term] :
          ( ( comp @ sh @ ( push @ X539 @ X538 ) )
         != X538 ) )
    & ( ! [X538: subst,X539: term] :
          ( ( comp @ sh @ ( push @ X539 @ X538 ) )
          = X538 )
      | ( axshiftcons != $true ) )
    & ( ( $true = sP42 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP42 ) )
    & ( ulamvar1 != $true )
    & ( ( $true = sP40 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP40 ) )
    & ( ! [X179: subst,X180: term] :
          ( ( sub @ one @ ( push @ X180 @ X179 ) )
          = X180 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X179: subst,X180: term] :
          ( ( sub @ one @ ( push @ X180 @ X179 ) )
         != X180 ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X332: subst] :
          ( ( comp @ id @ X332 )
          = X332 )
      | ( axidl != $true ) )
    & ( ( axidl = $true )
      | ? [X332: subst] :
          ( ( comp @ id @ X332 )
         != X332 ) )
    & ( ( apinj2 = $true )
      | ? [X515: term,X516: term,X517: term,X518: term] :
          ( ( X515 != X518 )
          & ( ( ap @ X516 @ X515 )
            = ( ap @ X517 @ X518 ) ) ) )
    & ( ! [X515: term,X516: term,X517: term,X518: term] :
          ( ( X515 = X518 )
          | ( ( ap @ X516 @ X515 )
           != ( ap @ X517 @ X518 ) ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( apnotvar = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( ( substmonoid = $true )
      | ? [X160: subst] :
          ( ( comp @ id @ X160 )
         != X160 )
      | ? [X161: subst] :
          ( ( comp @ X161 @ id )
         != X161 ) )
    & ( ( ! [X160: subst] :
            ( ( comp @ id @ X160 )
            = X160 )
        & ! [X161: subst] :
            ( ( comp @ X161 @ id )
            = X161 ) )
      | ( substmonoid != $true ) )
    & ( ( axvarid = $true )
      | ? [X322: term] :
          ( ( sub @ X322 @ id )
         != X322 ) )
    & ( ! [X322: term] :
          ( ( sub @ X322 @ id )
          = X322 )
      | ( axvarid != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X320: term] :
            ( ( sub @ X320 @ id )
            = X320 )
        & ? [X321: term] :
            ( ( sub @ X321 @ id )
           != X321 ) ) )
    & ( ? [X320: term] :
          ( ( sub @ X320 @ id )
         != X320 )
      | ! [X321: term] :
          ( ( sub @ X321 @ id )
          = X321 )
      | ( termmset_lthm != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X175: term] :
        ! [X176: subst > term > term] :
        ? [X177: term,X178: subst] :
          ( ( sub @ X175 @ ( push @ X177 @ X178 ) )
         != ( X176 @ X178 @ X177 ) ) )
    & ( ! [X175: term] :
        ? [X176: subst > term > term] :
        ! [X177: term,X178: subst] :
          ( ( sub @ X175 @ ( push @ X177 @ X178 ) )
          = ( X176 @ X178 @ X177 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( induction2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ! [X209: subst > term > subst > $o] :
        ? [X210: term > $o] :
        ! [X211: term] :
          ( ( X210 @ X211 )
          = ( X209 @ id @ X211 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X209: subst > term > subst > $o] :
        ! [X210: term > $o] :
        ? [X211: term] :
          ( ( X210 @ X211 )
         != ( X209 @ id @ X211 @ id ) ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( substmonoid_lthm != $true ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ! [X314: subst,X315: term > $o,X316: term] :
        ? [X317: term > $o] :
        ! [X318: term] :
          ( ( X315 @ ( sub @ X318 @ ( push @ X316 @ X314 ) ) )
          = ( X317 @ X318 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X314: subst,X315: term > $o,X316: term] :
        ! [X317: term > $o] :
        ? [X318: term] :
          ( ( X315 @ ( sub @ X318 @ ( push @ X316 @ X314 ) ) )
         != ( X317 @ X318 ) ) )
    & ( axvarshift = $true )
    & ( ! [X319: subst] :
          ( ( push @ ( sub @ one @ X319 ) @ ( comp @ sh @ X319 ) )
          = X319 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X319: subst] :
          ( ( push @ ( sub @ one @ X319 ) @ ( comp @ sh @ X319 ) )
         != X319 ) )
    & ( ( $true = sP34 )
      | ( induction2 != $true ) )
    & ( ( induction2 = $true )
      | ( $true != sP34 ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X222: term] :
            ( ( sub @ X222 @ id )
            = X222 )
        & ( $true != sP31 ) ) )
    & ( ? [X222: term] :
          ( ( sub @ X222 @ id )
         != X222 )
      | ( $true = sP31 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X454: d_subst,X455: d_subst] :
        ( ( ( d2subst @ X454 )
         != ( d2subst @ X455 ) )
        | ( X454 = X455 ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP27 ) )
    & ( ( $true = sP27 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( shinj = $true )
      | ? [X456: term,X457: term] :
          ( ( X456 != X457 )
          & ( ( sub @ X456 @ sh )
            = ( sub @ X457 @ sh ) ) ) )
    & ( ! [X456: term,X457: term] :
          ( ( X456 = X457 )
          | ( ( sub @ X456 @ sh )
           != ( sub @ X457 @ sh ) ) )
      | ( shinj != $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( pushprop_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X136: term] :
        ! [X137: subst > term > term] :
          ( ( sub @ X136 @ ( push @ one @ sh ) )
         != ( X137 @ sh @ one ) ) )
    & ( ! [X136: term] :
        ? [X137: subst > term > term] :
          ( ( sub @ X136 @ ( push @ one @ sh ) )
          = ( X137 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( axassoc = $true )
    & ( ( $true = sP23 )
      | ? [X99: term] :
          ( ( sub @ X99 @ id )
         != X99 )
      | ( sP24 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP23 )
        & ! [X99: term] :
            ( ( sub @ X99 @ id )
            = X99 )
        & ( sP24 != $true ) ) )
    & ! [X302: term] :
      ? [X303: d_term] :
        ( ( d2term @ X303 )
        = X302 )
    & ( ! [X519: term > $o,X520: term,X521: subst] :
        ? [X522: term > $o] :
        ! [X523: term] :
          ( ( X519 @ ( sub @ X523 @ ( push @ X520 @ X521 ) ) )
          = ( X522 @ X523 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( pushprop_lem0 = $true )
      | ? [X519: term > $o,X520: term,X521: subst] :
        ! [X522: term > $o] :
        ? [X523: term] :
          ( ( X519 @ ( sub @ X523 @ ( push @ X520 @ X521 ) ) )
         != ( X522 @ X523 ) ) )
    & ( ( $true = sP17 )
      | ? [X53: term] :
          ( ( sub @ X53 @ id )
         != X53 )
      | ( $true = sP16 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP17 )
        & ! [X53: term] :
            ( ( sub @ X53 @ id )
            = X53 )
        & ( $true != sP16 ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X460: subst,X461: term > $o,X462: term,X463: term > $o] :
            ( ( ( X463 @ one )
             != $true )
            & ! [X464: term] :
                ( ( X461 @ ( sub @ X464 @ ( push @ X462 @ X460 ) ) )
                = ( X463 @ X464 ) )
            & ( $true
              = ( X461 @ X462 ) ) )
        & ! [X458: term,X459: subst] :
            ( ( sub @ one @ ( push @ X458 @ X459 ) )
            = X458 ) ) )
    & ( ! [X460: subst,X461: term > $o,X462: term,X463: term > $o] :
          ( ( ( X463 @ one )
            = $true )
          | ? [X464: term] :
              ( ( X461 @ ( sub @ X464 @ ( push @ X462 @ X460 ) ) )
             != ( X463 @ X464 ) )
          | ( $true
           != ( X461 @ X462 ) ) )
      | ? [X458: term,X459: subst] :
          ( ( sub @ one @ ( push @ X458 @ X459 ) )
         != X458 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ? [X15: term] :
          ( ( sub @ X15 @ id )
         != X15 )
      | ( $true = sP13 )
      | ( $true = sP11 )
      | ? [X5: subst > term > subst > $o] :
        ! [X6: term > $o] :
        ? [X7: term] :
          ( ( X5 @ id @ X7 @ id )
         != ( X6 @ X7 ) )
      | ( $true = sP12 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X15: term] :
            ( ( sub @ X15 @ id )
            = X15 )
        & ( $true != sP13 )
        & ( $true != sP11 )
        & ! [X5: subst > term > subst > $o] :
          ? [X6: term > $o] :
          ! [X7: term] :
            ( ( X5 @ id @ X7 @ id )
            = ( X6 @ X7 ) )
        & ( $true != sP12 ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X477: term > $o,X478: term,X479: term > $o,X480: term,X481: subst] :
          ( ( $true
            = ( X479 @ ( sub @ X478 @ ( push @ X480 @ X481 ) ) ) )
          | ( $true
           != ( X477 @ X478 ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X477: term > $o,X478: term,X479: term > $o,X480: term,X481: subst] :
          ( ( $true
           != ( X479 @ ( sub @ X478 @ ( push @ X480 @ X481 ) ) ) )
          & ( $true
            = ( X477 @ X478 ) ) ) )
    & ! [X97: subst] :
      ? [X98: d_subst] :
        ( ( d2subst @ X98 )
        = X97 )
    & ( axapp = $true )
    & ( termmset_gthm = $true )
    & ( ( termmset = $true )
      | ? [X465: term] :
          ( ( sub @ X465 @ id )
         != X465 ) )
    & ( ! [X465: term] :
          ( ( sub @ X465 @ id )
          = X465 )
      | ( termmset != $true ) )
    & ! [X208: d_term] : ( d_one = X208 )
    & ( hoaslaminj_gthm = $true ) ),
    inference(nnf_transformation,[status(thm)],[f130]) ).

thf(f130,plain,
    ( ( ( $true = sP113 )
    <=> ( hoasapinj1_lthm = $true ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP111 )
    <=> ( hoasinduction_lem3 = $true ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP107 )
    <=> ( hoasinduction_lem2 = $true ) )
    & ( ( hoasapinj1 = $true )
    <=> ! [X466: term,X467: term,X468: term,X469: term] :
          ( ( X466 = X469 )
          | ( ( ap @ ( sub @ X466 @ id ) @ X467 )
           != ( ap @ ( sub @ X469 @ id ) @ X468 ) ) ) )
    & ( pushprop_lthm = $true )
    & ( ( induction2lem_lthm = $true )
    <=> ( ( $true = sP103 )
        | ? [X337: subst] :
            ( ( comp @ X337 @ id )
           != X337 )
        | ( $true = sP104 )
        | ? [X333: subst,X334: term] :
            ( ( sub @ one @ ( push @ X334 @ X333 ) )
           != X334 )
        | ? [X335: term,X336: subst] :
            ( ( comp @ sh @ ( push @ X335 @ X336 ) )
           != X336 ) ) )
    & ( hoasinduction_lem2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP98 )
    <=> ( hoasinduction = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( pushprop = $true )
    & ( ( $true = sP93 )
    <=> ( induction2lem = $true ) )
    & ( hoasinduction_lem1_gthm = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ( ? [X323: subst,X324: term] :
            ( ( sub @ one @ ( push @ X324 @ X323 ) )
           != X324 )
        | ! [X327: term > $o,X328: subst,X329: term > $o,X330: term,X331: term] :
            ( ( $true
             != ( X329 @ X330 ) )
            | ( $true
              = ( X327 @ ( sub @ X330 @ ( push @ X331 @ X328 ) ) ) ) )
        | ? [X325: subst,X326: term] :
            ( ( comp @ sh @ ( push @ X326 @ X325 ) )
           != X325 ) )
    <=> ( pushprop_lem1_lthm = $true ) )
    & ( ulamvarind = $true )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
    <=> ! [X424: term] :
        ? [X425: subst > term > term] :
        ! [X426: subst,X427: term] :
          ( ( X425 @ X426 @ X427 )
          = ( sub @ X424 @ ( push @ X427 @ X426 ) ) ) )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar_gthm = $true )
    & ( ! [X181: subst > term > subst > $o] :
        ? [X182: term > $o] :
        ! [X183: term] :
          ( ( X182 @ X183 )
          = ( X181 @ id @ X183 @ id ) )
    <=> ( hoasinduction_lem0_lthm = $true ) )
    & ( pushprop_lem2v2 = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
    <=> ( ? [X291: term] :
            ( ( sub @ X291 @ id )
           != X291 )
        | ? [X287: term] :
          ! [X288: subst > term > term] :
          ? [X289: subst,X290: term] :
            ( ( sub @ X287 @ ( push @ X290 @ X289 ) )
           != ( X288 @ X289 @ X290 ) )
        | ( $true = sP90 ) ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( hoasinduction_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( induction2lem_gthm = $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 ) ) ) ) )
    & ( ( $true = sP88 )
    <=> ( hoasinduction_lem3aa_lthm = $true ) )
    & ( hoasinduction_lem1v2 = $true )
    & ( ! [X184: term,X185: term,X186: term,X187: term] :
          ( ( X186 = X187 )
          | ( ( ap @ ( sub @ X185 @ id ) @ X187 )
           != ( ap @ ( sub @ X184 @ id ) @ X186 ) ) )
    <=> ( hoasapinj2 = $true ) )
    & ( ! [X0: term > $o,X1: subst,X2: term > $o,X3: term] :
          ( ? [X4: term] :
              ( ( X2 @ X4 )
             != ( X0 @ ( sub @ X4 @ ( push @ X3 @ X1 ) ) ) )
          | ( $true
           != ( X0 @ X3 ) )
          | ( ( X2 @ one )
            = $true ) )
    <=> ( pushprop_lem1v2 = $true ) )
    & ( substmonoid_gthm = $true )
    & ( one
      = ( d2term @ d_one ) )
    & ( axclos = $true )
    & ( ! [X212: subst] :
          ( ( comp @ X212 @ id )
          = X212 )
    <=> ( axidr = $true ) )
    & ( ! [X188: term,X189: term] :
          ( ( ( lam @ X189 )
           != ( lam @ X188 ) )
          | ( X188 = X189 ) )
    <=> ( laminj = $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
    <=> ( $true = sP86 ) )
    & ( ( hoasinduction_no_psi_cond = $true )
    <=> ! [X44: term,X45: subst > term > subst > $o] :
          ( ( $true
            = ( sP84 @ X45 ) )
          | ( $true
            = ( sP83 @ X45 ) )
          | ( $true
            = ( X45 @ id @ X44 @ id ) ) ) )
    & ( ( ? [X257: subst > term > subst > $o] :
          ! [X258: term > $o] :
          ? [X259: term] :
            ( ( X258 @ X259 )
           != ( X257 @ id @ X259 @ id ) )
        | ( sP80 = $true )
        | ( $true = sP82 )
        | ( $true = sP81 )
        | ? [X267: term] :
            ( ( sub @ X267 @ id )
           != X267 ) )
    <=> ( hoasinduction_no_psi_cond_lthm = $true ) )
    & ( ! [X138: subst > term > term,X139: term,X140: term] :
          ( ( ( lam @ ( X138 @ sh @ one ) )
           != ( ap @ ( sub @ X139 @ id ) @ X140 ) )
          | ? [X141: term,X142: subst,X143: subst] :
              ( ( sub @ ( X138 @ X143 @ X141 ) @ X142 )
             != ( X138 @ ( comp @ X143 @ X142 ) @ ( sub @ X141 @ X142 ) ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( ( $true = sP74 )
    <=> ( hoasinduction_lem3v2 = $true ) )
    & ( hoasapnotvar = $true )
    & ( axabs = $true )
    & ( ( ( $true = sP69 )
        | ( $true = sP70 )
        | ( $true = sP67 )
        | ( $true = sP68 ) )
    <=> ( hoasinduction_lthm = $true ) )
    & ( axmap = $true )
    & ( ! [X312: term] :
        ? [X313: subst > term > term] :
          ( ( X313 @ sh @ one )
          = ( sub @ X312 @ ( push @ one @ sh ) ) )
    <=> ( hoasinduction_lem3b = $true ) )
    & ( lamnotap != $true )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ( $true = sP54 ) )
    & ( ( hoasinduction_lem3a = $true )
    <=> ( $true = sP52 ) )
    & ( lamnotvar = $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( apinj1 = $true )
    <=> ! [X526: term,X527: term,X528: term,X529: term] :
          ( ( X526 = X527 )
          | ( ( ap @ X526 @ X529 )
           != ( ap @ X527 @ X528 ) ) ) )
    & ( ( hoasinduction_lem3aa = $true )
    <=> ( $true = sP50 ) )
    & ! [X135: d_subst] : ( d_id = X135 )
    & ( ( hoasinduction_lem3_lthm = $true )
    <=> ( ( $true = sP48 )
        | ( $true = sP47 )
        | ? [X490: term] :
            ( ( sub @ X490 @ id )
           != X490 ) ) )
    & ( pushprop_lem3v2 = $true )
    & ! [X524: d_term,X525: d_term] :
        ( ( X524 = X525 )
        | ( ( d2term @ X525 )
         != ( d2term @ X524 ) ) )
    & ( ! [X150: subst > term > term,X151: subst,X152: term,X153: subst > term > term] :
          ( ( ( X153 @ X151 @ X152 )
            = ( X150 @ X151 @ X152 ) )
          | ? [X154: subst,X155: subst,X156: term] :
              ( ( X150 @ ( comp @ X154 @ X155 ) @ ( sub @ X156 @ X155 ) )
             != ( sub @ ( X150 @ X154 @ X156 ) @ X155 ) )
          | ? [X157: subst,X158: subst,X159: term] :
              ( ( sub @ ( X153 @ X157 @ X159 ) @ X158 )
             != ( X153 @ ( comp @ X157 @ X158 ) @ ( sub @ X159 @ X158 ) ) )
          | ( ( lam @ ( X153 @ sh @ one ) )
           != ( lam @ ( X150 @ sh @ one ) ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( hoasinduction_lem1_lthm = $true )
    & ( ( axshiftcons = $true )
    <=> ! [X538: subst,X539: term] :
          ( ( comp @ sh @ ( push @ X539 @ X538 ) )
          = X538 ) )
    & ( ( $true = sP42 )
    <=> ( hoasapinj2_lthm = $true ) )
    & ( ulamvar1 != $true )
    & ( ( $true = sP40 )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( ! [X179: subst,X180: term] :
          ( ( sub @ one @ ( push @ X180 @ X179 ) )
          = X180 )
    <=> ( axvarcons = $true ) )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ! [X332: subst] :
          ( ( comp @ id @ X332 )
          = X332 )
    <=> ( axidl = $true ) )
    & ( ( apinj2 = $true )
    <=> ! [X515: term,X516: term,X517: term,X518: term] :
          ( ( X515 = X518 )
          | ( ( ap @ X516 @ X515 )
           != ( ap @ X517 @ X518 ) ) ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( apnotvar = $true )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( $true = sP38 )
    <=> ( induction = $true ) )
    & ( ( substmonoid = $true )
    <=> ( ! [X160: subst] :
            ( ( comp @ id @ X160 )
            = X160 )
        & ! [X161: subst] :
            ( ( comp @ X161 @ id )
            = X161 ) ) )
    & ( ( axvarid = $true )
    <=> ! [X322: term] :
          ( ( sub @ X322 @ id )
          = X322 ) )
    & ( ( termmset_lthm = $true )
    <=> ( ? [X320: term] :
            ( ( sub @ X320 @ id )
           != X320 )
        | ! [X321: term] :
            ( ( sub @ X321 @ id )
            = X321 ) ) )
    & ( pushprop_lem1_gthm = $true )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y1 @ Y2 )
                = ( Y0 @ id @ Y2 @ id ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X175: term] :
        ? [X176: subst > term > term] :
        ! [X177: term,X178: subst] :
          ( ( sub @ X175 @ ( push @ X177 @ X178 ) )
          = ( X176 @ X178 @ X177 ) ) )
    & ( induction2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ! [X209: subst > term > subst > $o] :
        ? [X210: term > $o] :
        ! [X211: term] :
          ( ( X210 @ X211 )
          = ( X209 @ id @ X211 @ id ) )
    <=> ( hoasinduction_lem0 = $true ) )
    & ( ( substmonoid_lthm = $true )
    <=> ( $true = sP35 ) )
    & ( hoasapnotvar_lthm = $true )
    & ( ! [X314: subst,X315: term > $o,X316: term] :
        ? [X317: term > $o] :
        ! [X318: term] :
          ( ( X315 @ ( sub @ X318 @ ( push @ X316 @ X314 ) ) )
          = ( X317 @ X318 ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( axvarshift = $true )
    & ( ! [X319: subst] :
          ( ( push @ ( sub @ one @ X319 ) @ ( comp @ sh @ X319 ) )
          = X319 )
    <=> ( axscons = $true ) )
    & ( ( $true = sP34 )
    <=> ( induction2 = $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
    <=> ( ? [X222: term] :
            ( ( sub @ X222 @ id )
           != X222 )
        | ( $true = sP31 ) ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem1v2_gthm = $true )
    & ! [X454: d_subst,X455: d_subst] :
        ( ( ( d2subst @ X454 )
         != ( d2subst @ X455 ) )
        | ( X454 = X455 ) )
    & ( ( hoasinduction_lem2v2 = $true )
    <=> ( $true = sP27 ) )
    & ( ( shinj = $true )
    <=> ! [X456: term,X457: term] :
          ( ( X456 = X457 )
          | ( ( sub @ X456 @ sh )
           != ( sub @ X457 @ sh ) ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( pushprop_gthm = $true )
    & ( ( hoasinduction_lem3b_lthm = $true )
    <=> ! [X136: term] :
        ? [X137: subst > term > term] :
          ( ( sub @ X136 @ ( push @ one @ sh ) )
          = ( X137 @ sh @ one ) ) )
    & ( axassoc = $true )
    & ( ( ( $true = sP23 )
        | ? [X99: term] :
            ( ( sub @ X99 @ id )
           != X99 )
        | ( sP24 = $true ) )
    <=> ( induction2_lthm = $true ) )
    & ! [X302: term] :
      ? [X303: d_term] :
        ( ( d2term @ X303 )
        = X302 )
    & ( ! [X519: term > $o,X520: term,X521: subst] :
        ? [X522: term > $o] :
        ! [X523: term] :
          ( ( X519 @ ( sub @ X523 @ ( push @ X520 @ X521 ) ) )
          = ( X522 @ X523 ) )
    <=> ( pushprop_lem0 = $true ) )
    & ( ( ( $true = sP17 )
        | ? [X53: term] :
            ( ( sub @ X53 @ id )
           != X53 )
        | ( $true = sP16 ) )
    <=> ( hoasinduction_lem3a_lthm = $true ) )
    & ( hoaslamnotvar = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X460: subst,X461: term > $o,X462: term,X463: term > $o] :
            ( ( ( X463 @ one )
              = $true )
            | ? [X464: term] :
                ( ( X461 @ ( sub @ X464 @ ( push @ X462 @ X460 ) ) )
               != ( X463 @ X464 ) )
            | ( $true
             != ( X461 @ X462 ) ) )
        | ? [X458: term,X459: subst] :
            ( ( sub @ one @ ( push @ X458 @ X459 ) )
           != X458 ) ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( ? [X15: term] :
            ( ( sub @ X15 @ id )
           != X15 )
        | ( $true = sP13 )
        | ( $true = sP11 )
        | ? [X5: subst > term > subst > $o] :
          ! [X6: term > $o] :
          ? [X7: term] :
            ( ( X5 @ id @ X7 @ id )
           != ( X6 @ X7 ) )
        | ( $true = sP12 ) )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ! [X477: term > $o,X478: term,X479: term > $o,X480: term,X481: subst] :
          ( ( $true
            = ( X479 @ ( sub @ X478 @ ( push @ X480 @ X481 ) ) ) )
          | ( $true
           != ( X477 @ X478 ) ) )
    <=> ( pushprop_lem1 = $true ) )
    & ! [X97: subst] :
      ? [X98: d_subst] :
        ( ( d2subst @ X98 )
        = X97 )
    & ( axapp = $true )
    & ( termmset_gthm = $true )
    & ( ( termmset = $true )
    <=> ! [X465: term] :
          ( ( sub @ X465 @ id )
          = X465 ) )
    & ! [X208: d_term] : ( d_one = X208 )
    & ( hoaslaminj_gthm = $true ) ),
    inference(definition_folding,[status(thm)],[f14,f129,f128,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]) ).

thf(f20,plain,
    ! [X16: subst > term > subst > $o] :
      ( ( $true
        = ( sP4 @ X16 ) )
    <=> ! [X21: subst > term > term] :
          ( ? [X22: term,X23: subst,X24: subst] :
              ( ( sub @ ( X21 @ X23 @ X22 ) @ X24 )
             != ( X21 @ ( comp @ X23 @ X24 ) @ ( sub @ X22 @ X24 ) ) )
          | ? [X25: term] :
              ( ( $true
                = ( X16 @ id @ X25 @ id ) )
              & ( $true
               != ( X16 @ id @ ( X21 @ id @ X25 ) @ id ) ) )
          | ( $true
            = ( X16 @ id @ ( lam @ ( X21 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f21,plain,
    ! [X27: subst > term > subst > $o] :
      ( ( ( sP5 @ X27 )
        = $true )
    <=> ? [X39: subst > term > term] :
          ( ( $true
           != ( X27 @ id @ ( lam @ ( X39 @ sh @ one ) ) @ id ) )
          & ! [X41: subst,X42: term,X43: subst] :
              ( ( sub @ ( X39 @ X43 @ X42 ) @ X41 )
              = ( X39 @ ( comp @ X43 @ X41 ) @ ( sub @ X42 @ X41 ) ) )
          & ! [X40: term] :
              ( ( $true
                = ( X27 @ id @ ( X39 @ id @ X40 ) @ id ) )
              | ( $true
               != ( X27 @ id @ X40 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f22,plain,
    ! [X27: subst > term > subst > $o] :
      ( ( $true
        = ( sP6 @ X27 ) )
    <=> ? [X32: term,X33: term] :
          ( ( $true
            = ( X27 @ id @ X33 @ id ) )
          & ( $true
            = ( X27 @ id @ X32 @ id ) )
          & ( $true
           != ( X27 @ id @ ( ap @ ( sub @ X33 @ id ) @ X32 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f23,plain,
    ! [X27: subst > term > subst > $o] :
      ( ( ( sP7 @ X27 )
        = $true )
    <=> ? [X28: term,X29: subst,X30: subst,X31: subst] :
          ( ( $true
           != ( X27 @ X31 @ X28 @ ( comp @ X30 @ X29 ) ) )
          & ( $true
            = ( X27 @ ( comp @ X31 @ X30 ) @ ( sub @ X28 @ X30 ) @ X29 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f24,plain,
    ! [X27: subst > term > subst > $o] :
      ( ( $true
        = ( sP8 @ X27 ) )
    <=> ? [X35: subst,X36: subst,X37: term,X38: subst] :
          ( ( $true
           != ( X27 @ ( comp @ X38 @ X36 ) @ ( sub @ X37 @ X36 ) @ X35 ) )
          & ( $true
            = ( X27 @ X38 @ X37 @ ( comp @ X36 @ X35 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f25,plain,
    ! [X9: term > $o] :
      ( ( $true
        = ( sP9 @ X9 ) )
    <=> ! [X13: term,X14: term] :
          ( ( $true
           != ( X9 @ X14 ) )
          | ( $true
           != ( X9 @ X13 ) )
          | ( $true
            = ( X9 @ ( ap @ X14 @ X13 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f26,plain,
    ! [X9: term > $o] :
      ( ( $true
        = ( sP10 @ X9 ) )
    <=> ! [X11: term] :
          ( ( $true
            = ( X9 @ ( lam @ X11 ) ) )
          | ? [X12: term] :
              ( ( $true
                = ( X9 @ X12 ) )
              & ( $true
               != ( X9 @ ( sub @ X11 @ ( push @ X12 @ id ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f27,plain,
    ( ( $true = sP11 )
  <=> ! [X26: term,X27: subst > term > subst > $o] :
        ( ( $true
          = ( X27 @ id @ X26 @ id ) )
        | ? [X34: term] :
            ( ( $true
              = ( var @ ( sub @ X34 @ id ) ) )
            & ( $true
             != ( X27 @ id @ X34 @ id ) ) )
        | ( $true
          = ( sP6 @ X27 ) )
        | ( ( sP5 @ X27 )
          = $true )
        | ( $true
          = ( sP8 @ X27 ) )
        | ( ( sP7 @ X27 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f28,plain,
    ( ( $true = sP12 )
  <=> ? [X16: subst > term > subst > $o,X17: term,X18: term > $o] :
        ( ! [X19: term] :
            ( ( X18 @ X19 )
            = ( X16 @ id @ X19 @ id ) )
        & ( $true
          = ( sP4 @ X16 ) )
        & ( $true
         != ( X18 @ ( lam @ X17 ) ) )
        & ! [X20: term] :
            ( ( $true
              = ( X18 @ ( sub @ X17 @ ( push @ X20 @ id ) ) ) )
            | ( $true
             != ( X18 @ X20 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f29,plain,
    ( ( $true = sP13 )
  <=> ? [X8: term,X9: term > $o] :
        ( ! [X10: term] :
            ( ( $true
             != ( var @ X10 ) )
            | ( $true
              = ( X9 @ X10 ) ) )
        & ( $true
         != ( X9 @ X8 ) )
        & ( $true
          = ( sP10 @ X9 ) )
        & ( $true
          = ( sP9 @ X9 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f30,plain,
    ! [X63: subst > term > subst > $o] :
      ( ( $true
        = ( sP14 @ X63 ) )
    <=> ? [X65: subst > term > term] :
          ( ( $true
           != ( X63 @ id @ ( lam @ ( X65 @ sh @ one ) ) @ id ) )
          & ! [X67: term,X68: subst,X69: subst] :
              ( ( sub @ ( X65 @ X69 @ X67 ) @ X68 )
              = ( X65 @ ( comp @ X69 @ X68 ) @ ( sub @ X67 @ X68 ) ) )
          & ! [X66: term] :
              ( ( $true
                = ( X63 @ id @ ( X65 @ id @ X66 ) @ id ) )
              | ( $true
               != ( X63 @ id @ X66 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f32,plain,
    ( ( $true = sP16 )
  <=> ! [X62: term,X63: subst > term > subst > $o] :
        ( ( $true
          = ( X63 @ id @ ( lam @ X62 ) @ id ) )
        | ( $true
          = ( sP14 @ X63 ) )
        | ? [X64: term] :
            ( ( ( X63 @ id @ X64 @ id )
              = $true )
            & ( $true
             != ( X63 @ id @ ( sub @ X62 @ ( push @ X64 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f33,plain,
    ( ( $true = sP17 )
  <=> ? [X54: term,X55: subst > term > subst > $o] :
        ( ( $true
          = ( sP15 @ X55 ) )
        & ( $true
         != ( X55 @ id @ ( lam @ ( sub @ X54 @ ( push @ one @ sh ) ) ) @ id ) )
        & ! [X56: term] :
            ( ( ( X55 @ id @ X56 @ id )
             != $true )
            | ( $true
              = ( X55 @ id @ ( sub @ X54 @ ( push @ X56 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f34,plain,
    ! [X102: term > $o] :
      ( ( $true
        = ( sP18 @ X102 ) )
    <=> ! [X104: term,X105: term] :
          ( ( $true
           != ( X102 @ X105 ) )
          | ( $true
            = ( X102 @ ( ap @ X104 @ X105 ) ) )
          | ( ( X102 @ X104 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f35,plain,
    ! [X100: subst,X102: term > $o] :
      ( ( $true
        = ( sP19 @ X102 @ X100 ) )
    <=> ! [X103: term] :
          ( ( $true
            = ( X102 @ ( sub @ X103 @ X100 ) ) )
          | ( $true
           != ( var @ X103 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f36,plain,
    ! [X102: term > $o] :
      ( ( $true
        = ( sP20 @ X102 ) )
    <=> ! [X106: term] :
          ( ? [X107: term] :
              ( ( $true
                = ( X102 @ X107 ) )
              & ( $true
               != ( X102 @ ( sub @ X106 @ ( push @ X107 @ id ) ) ) ) )
          | ( ( X102 @ ( lam @ X106 ) )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f37,plain,
    ! [X109: term > $o] :
      ( ( $true
        = ( sP21 @ X109 ) )
    <=> ? [X113: term] :
          ( ! [X114: term] :
              ( ( $true
               != ( X109 @ X114 ) )
              | ( $true
                = ( X109 @ ( sub @ X113 @ ( push @ X114 @ id ) ) ) ) )
          & ( $true
           != ( X109 @ ( lam @ X113 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f38,plain,
    ! [X109: term > $o] :
      ( ( $true
        = ( sP22 @ X109 ) )
    <=> ? [X110: term,X111: term] :
          ( ( $true
            = ( X109 @ X111 ) )
          & ( $true
            = ( X109 @ X110 ) )
          & ( $true
           != ( X109 @ ( ap @ X111 @ X110 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f39,plain,
    ( ( $true = sP23 )
  <=> ! [X108: term,X109: term > $o] :
        ( ( $true
          = ( X109 @ X108 ) )
        | ( $true
          = ( sP21 @ X109 ) )
        | ( $true
          = ( sP22 @ X109 ) )
        | ? [X112: term] :
            ( ( $true
             != ( X109 @ X112 ) )
            & ( $true
              = ( var @ X112 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f40,plain,
    ( ( sP24 = $true )
  <=> ? [X100: subst,X101: term,X102: term > $o] :
        ( ( $true
          = ( sP18 @ X102 ) )
        & ( $true
         != ( X102 @ ( sub @ X101 @ X100 ) ) )
        & ( $true
          = ( sP20 @ X102 ) )
        & ( $true
          = ( sP19 @ X102 @ X100 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f41,plain,
    ! [X82: subst > term > subst > $o] :
      ( ( $true
        = ( sP25 @ X82 ) )
    <=> ? [X91: term,X92: term] :
          ( ( $true
           != ( X82 @ id @ ( ap @ ( sub @ X92 @ id ) @ X91 ) @ id ) )
          & ( $true
            = ( X82 @ id @ X91 @ id ) )
          & ( $true
            = ( X82 @ id @ X92 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f42,plain,
    ! [X82: subst > term > subst > $o] :
      ( ( $true
        = ( sP26 @ X82 ) )
    <=> ? [X86: subst,X87: term,X88: subst,X89: subst] :
          ( ( $true
            = ( X82 @ ( comp @ X89 @ X86 ) @ ( sub @ X87 @ X86 ) @ X88 ) )
          & ( $true
           != ( X82 @ X89 @ X87 @ ( comp @ X86 @ X88 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f43,plain,
    ( ( $true = sP27 )
  <=> ! [X82: subst > term > subst > $o,X83: term > $o,X84: term,X85: term] :
        ( ( $true
         != ( X83 @ X85 ) )
        | ? [X90: term] :
            ( ( X82 @ id @ X90 @ id )
           != ( X83 @ X90 ) )
        | ( $true
          = ( sP25 @ X82 ) )
        | ( $true
         != ( X83 @ X84 ) )
        | ? [X93: term,X94: subst,X95: subst,X96: subst] :
            ( ( $true
              = ( X82 @ X94 @ X93 @ ( comp @ X95 @ X96 ) ) )
            & ( $true
             != ( X82 @ ( comp @ X94 @ X95 ) @ ( sub @ X93 @ X95 ) @ X96 ) ) )
        | ( $true
          = ( X83 @ ( ap @ X85 @ X84 ) ) )
        | ( $true
          = ( sP26 @ X82 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f44,plain,
    ! [X223: subst > term > subst > $o] :
      ( ( $true
        = ( sP28 @ X223 ) )
    <=> ? [X226: subst > term > term] :
          ( ! [X227: term,X228: subst,X229: subst] :
              ( ( sub @ ( X226 @ X229 @ X227 ) @ X228 )
              = ( X226 @ ( comp @ X229 @ X228 ) @ ( sub @ X227 @ X228 ) ) )
          & ! [X230: term] :
              ( ( ( X223 @ id @ X230 @ id )
               != $true )
              | ( $true
                = ( X223 @ id @ ( X226 @ id @ X230 ) @ id ) ) )
          & ( ( X223 @ id @ ( lam @ ( X226 @ sh @ one ) ) @ id )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f45,plain,
    ! [X223: subst > term > subst > $o] :
      ( ( $true
        = ( sP29 @ X223 ) )
    <=> ? [X232: subst,X233: term,X234: subst,X235: subst] :
          ( ( $true
            = ( X223 @ ( comp @ X235 @ X232 ) @ ( sub @ X233 @ X232 ) @ X234 ) )
          & ( $true
           != ( X223 @ X235 @ X233 @ ( comp @ X232 @ X234 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f46,plain,
    ! [X223: subst > term > subst > $o] :
      ( ( $true
        = ( sP30 @ X223 ) )
    <=> ? [X236: subst,X237: subst,X238: subst,X239: term] :
          ( ( $true
           != ( X223 @ ( comp @ X237 @ X238 ) @ ( sub @ X239 @ X238 ) @ X236 ) )
          & ( $true
            = ( X223 @ X237 @ X239 @ ( comp @ X238 @ X236 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f47,plain,
    ( ( $true = sP31 )
  <=> ! [X223: subst > term > subst > $o,X224: term > $o,X225: term] :
        ( ( ( X224 @ ( lam @ X225 ) )
          = $true )
        | ? [X240: term] :
            ( ( $true
             != ( X224 @ ( sub @ X225 @ ( push @ X240 @ id ) ) ) )
            & ( $true
              = ( X224 @ X240 ) ) )
        | ( $true
          = ( sP30 @ X223 ) )
        | ( $true
          = ( sP28 @ X223 ) )
        | ( $true
          = ( sP29 @ X223 ) )
        | ? [X231: term] :
            ( ( X224 @ X231 )
           != ( X223 @ id @ X231 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f48,plain,
    ! [X471: term > $o] :
      ( ( $true
        = ( sP32 @ X471 ) )
    <=> ? [X475: term] :
          ( ( $true
           != ( X471 @ ( lam @ X475 ) ) )
          & ! [X476: term] :
              ( ( $true
                = ( X471 @ ( sub @ X475 @ ( push @ X476 @ id ) ) ) )
              | ( $true
               != ( X471 @ X476 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f49,plain,
    ! [X471: term > $o] :
      ( ( $true
        = ( sP33 @ X471 ) )
    <=> ? [X472: term,X473: term] :
          ( ( $true
            = ( X471 @ X472 ) )
          & ( $true
            = ( X471 @ X473 ) )
          & ( $true
           != ( X471 @ ( ap @ X472 @ X473 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f50,plain,
    ( ( $true = sP34 )
  <=> ! [X470: term,X471: term > $o] :
        ( ? [X474: term] :
            ( ( $true
             != ( X471 @ X474 ) )
            & ( $true
              = ( var @ X474 ) ) )
        | ( $true
          = ( sP33 @ X471 ) )
        | ( $true
          = ( X471 @ X470 ) )
        | ( $true
          = ( sP32 @ X471 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f51,plain,
    ( ( $true = sP35 )
  <=> ( ? [X115: subst] :
          ( ( comp @ id @ X115 )
         != X115 )
      | ? [X116: subst] :
          ( ( comp @ X116 @ id )
         != X116 )
      | ( ! [X117: subst] :
            ( ( comp @ X117 @ id )
            = X117 )
        & ! [X118: subst] :
            ( ( comp @ id @ X118 )
            = X118 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f52,plain,
    ! [X144: term > $o] :
      ( ( $true
        = ( sP36 @ X144 ) )
    <=> ? [X147: term,X148: term] :
          ( ( $true
           != ( X144 @ ( ap @ X147 @ X148 ) ) )
          & ( $true
            = ( X144 @ X147 ) )
          & ( $true
            = ( X144 @ X148 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f53,plain,
    ! [X144: term > $o] :
      ( ( $true
        = ( sP37 @ X144 ) )
    <=> ? [X146: term] :
          ( ( $true
            = ( X144 @ X146 ) )
          & ( $true
           != ( X144 @ ( lam @ X146 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f54,plain,
    ( ( $true = sP38 )
  <=> ! [X144: term > $o,X145: term] :
        ( ? [X149: term] :
            ( ( ( var @ X149 )
              = $true )
            & ( $true
             != ( X144 @ X149 ) ) )
        | ( $true
          = ( X144 @ X145 ) )
        | ( $true
          = ( sP36 @ X144 ) )
        | ( $true
          = ( sP37 @ X144 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f56,plain,
    ( ( $true = sP40 )
  <=> ( ? [X245: term,X246: term] :
          ( ( ( lam @ X246 )
            = ( lam @ X245 ) )
          & ( X245 != X246 ) )
      | ( $true = sP39 )
      | ? [X243: term,X244: subst] :
          ( ( comp @ sh @ ( push @ X243 @ X244 ) )
         != X244 )
      | ? [X241: subst,X242: term] :
          ( ( sub @ one @ ( push @ X242 @ X241 ) )
         != X242 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f57,plain,
    ( ( $true = sP41 )
  <=> ! [X450: term,X451: term,X452: term,X453: term] :
        ( ( ( ap @ ( sub @ X451 @ id ) @ X453 )
         != ( ap @ ( sub @ X452 @ id ) @ X450 ) )
        | ( X450 = X453 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f58,plain,
    ( ( $true = sP42 )
  <=> ( ( $true = sP41 )
      | ? [X446: term,X447: term,X448: term,X449: term] :
          ( ( ( ap @ X448 @ X446 )
            = ( ap @ X449 @ X447 ) )
          & ( X446 != X447 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f60,plain,
    ! [X500: subst > term > subst > $o] :
      ( ( $true
        = ( sP44 @ X500 ) )
    <=> ? [X510: term,X511: subst,X512: subst,X513: subst] :
          ( ( $true
            = ( X500 @ ( comp @ X511 @ X513 ) @ ( sub @ X510 @ X513 ) @ X512 ) )
          & ( $true
           != ( X500 @ X511 @ X510 @ ( comp @ X513 @ X512 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f61,plain,
    ! [X500: subst > term > subst > $o] :
      ( ( $true
        = ( sP45 @ X500 ) )
    <=> ? [X501: subst,X502: subst,X503: term,X504: subst] :
          ( ( ( X500 @ X502 @ X503 @ ( comp @ X504 @ X501 ) )
            = $true )
          & ( $true
           != ( X500 @ ( comp @ X502 @ X504 ) @ ( sub @ X503 @ X504 ) @ X501 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f62,plain,
    ! [X491: subst > term > subst > $o] :
      ( ( $true
        = ( sP46 @ X491 ) )
    <=> ! [X494: subst > term > term] :
          ( ( ( X491 @ id @ ( lam @ ( X494 @ sh @ one ) ) @ id )
            = $true )
          | ? [X495: term,X496: subst,X497: subst] :
              ( ( X494 @ ( comp @ X496 @ X497 ) @ ( sub @ X495 @ X497 ) )
             != ( sub @ ( X494 @ X496 @ X495 ) @ X497 ) )
          | ? [X498: term] :
              ( ( $true
               != ( X491 @ id @ ( X494 @ id @ X498 ) @ id ) )
              & ( $true
                = ( X491 @ id @ X498 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f63,plain,
    ( ( $true = sP47 )
  <=> ! [X499: term,X500: subst > term > subst > $o] :
        ( ? [X514: term] :
            ( ( $true
             != ( X500 @ id @ ( sub @ X499 @ ( push @ X514 @ id ) ) @ id ) )
            & ( $true
              = ( X500 @ id @ X514 @ id ) ) )
        | ( $true
          = ( sP45 @ X500 ) )
        | ( $true
          = ( X500 @ id @ ( lam @ X499 ) @ id ) )
        | ( $true
          = ( sP43 @ X500 ) )
        | ( $true
          = ( sP44 @ X500 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f64,plain,
    ( ( $true = sP48 )
  <=> ? [X491: subst > term > subst > $o,X492: term] :
        ( ( $true
         != ( X491 @ id @ ( lam @ ( sub @ X492 @ ( push @ one @ sh ) ) ) @ id ) )
        & ! [X493: term] :
            ( ( $true
              = ( X491 @ id @ ( sub @ X492 @ ( push @ X493 @ id ) ) @ id ) )
            | ( $true
             != ( X491 @ id @ X493 @ id ) ) )
        & ( $true
          = ( sP46 @ X491 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f65,plain,
    ! [X353: subst > term > subst > $o] :
      ( ( $true
        = ( sP49 @ X353 ) )
    <=> ? [X354: subst > term > term] :
          ( ! [X358: term] :
              ( ( $true
                = ( X353 @ id @ ( X354 @ id @ X358 ) @ id ) )
              | ( $true
               != ( X353 @ id @ X358 @ id ) ) )
          & ( $true
           != ( X353 @ id @ ( lam @ ( X354 @ sh @ one ) ) @ id ) )
          & ! [X355: subst,X356: term,X357: subst] :
              ( ( X354 @ ( comp @ X355 @ X357 ) @ ( sub @ X356 @ X357 ) )
              = ( sub @ ( X354 @ X355 @ X356 ) @ X357 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f66,plain,
    ( ( $true = sP50 )
  <=> ! [X352: term,X353: subst > term > subst > $o] :
        ( ( $true
          = ( X353 @ id @ ( lam @ ( sub @ X352 @ ( push @ one @ sh ) ) ) @ id ) )
        | ( $true
          = ( sP49 @ X353 ) )
        | ? [X359: term] :
            ( ( ( X353 @ id @ ( sub @ X352 @ ( push @ X359 @ id ) ) @ id )
             != $true )
            & ( $true
              = ( X353 @ id @ X359 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f67,plain,
    ! [X304: subst > term > subst > $o] :
      ( ( ( sP51 @ X304 )
        = $true )
    <=> ? [X307: subst > term > term] :
          ( ! [X308: term] :
              ( ( $true
                = ( X304 @ id @ ( X307 @ id @ X308 ) @ id ) )
              | ( $true
               != ( X304 @ id @ X308 @ id ) ) )
          & ( $true
           != ( X304 @ id @ ( lam @ ( X307 @ sh @ one ) ) @ id ) )
          & ! [X309: subst,X310: subst,X311: term] :
              ( ( X307 @ ( comp @ X310 @ X309 ) @ ( sub @ X311 @ X309 ) )
              = ( sub @ ( X307 @ X310 @ X311 ) @ X309 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

thf(f70,plain,
    ( ( $true = sP54 )
  <=> ! [X360: subst > term > subst > $o,X361: term,X362: term > $o] :
        ( ? [X368: term] :
            ( ( $true
             != ( X362 @ ( sub @ X361 @ ( push @ X368 @ id ) ) ) )
            & ( $true
              = ( X362 @ X368 ) ) )
        | ( $true
          = ( X362 @ ( lam @ X361 ) ) )
        | ? [X369: term] :
            ( ( X360 @ id @ X369 @ id )
           != ( X362 @ X369 ) )
        | ( $true
          = ( sP53 @ X360 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f71,plain,
    ! [X390: subst > term > subst > $o] :
      ( ( $true
        = ( sP55 @ X390 ) )
    <=> ! [X396: subst > term > term] :
          ( ( $true
            = ( X390 @ id @ ( lam @ ( X396 @ sh @ one ) ) @ id ) )
          | ? [X397: subst,X398: subst,X399: term] :
              ( ( sub @ ( X396 @ X398 @ X399 ) @ X397 )
             != ( X396 @ ( comp @ X398 @ X397 ) @ ( sub @ X399 @ X397 ) ) )
          | ? [X400: term] :
              ( ( $true
               != ( X390 @ id @ ( X396 @ id @ X400 ) @ id ) )
              & ( $true
                = ( X390 @ id @ X400 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f72,plain,
    ! [X390: subst > term > subst > $o] :
      ( ( $true
        = ( sP56 @ X390 ) )
    <=> ! [X402: subst,X403: subst,X404: subst,X405: term] :
          ( ( $true
            = ( X390 @ ( comp @ X403 @ X402 ) @ ( sub @ X405 @ X402 ) @ X404 ) )
          | ( ( X390 @ X403 @ X405 @ ( comp @ X402 @ X404 ) )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f73,plain,
    ! [X390: subst > term > subst > $o,X391: term] :
      ( ( $true
        = ( sP57 @ X391 @ X390 ) )
    <=> ! [X401: term] :
          ( ( ( X390 @ id @ X401 @ id )
           != $true )
          | ( $true
            = ( X390 @ id @ ( sub @ X391 @ ( push @ X401 @ id ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f75,plain,
    ! [X407: subst > term > subst > $o] :
      ( ( $true
        = ( sP59 @ X407 ) )
    <=> ? [X422: term,X423: term] :
          ( ( $true
           != ( X407 @ id @ ( ap @ ( sub @ X423 @ id ) @ X422 ) @ id ) )
          & ( $true
            = ( X407 @ id @ X423 @ id ) )
          & ( $true
            = ( X407 @ id @ X422 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f77,plain,
    ! [X407: subst > term > subst > $o] :
      ( ( $true
        = ( sP61 @ X407 ) )
    <=> ? [X418: subst,X419: term,X420: subst,X421: subst] :
          ( ( $true
           != ( X407 @ X420 @ X419 @ ( comp @ X421 @ X418 ) ) )
          & ( $true
            = ( X407 @ ( comp @ X420 @ X421 ) @ ( sub @ X419 @ X421 ) @ X418 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

thf(f81,plain,
    ! [X379: subst > term > subst > $o] :
      ( ( $true
        = ( sP65 @ X379 ) )
    <=> ! [X388: term,X389: term] :
          ( ( ( X379 @ id @ X388 @ id )
           != $true )
          | ( $true
            = ( X379 @ id @ ( ap @ ( sub @ X389 @ id ) @ X388 ) @ id ) )
          | ( $true
           != ( X379 @ id @ X389 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f82,plain,
    ! [X379: subst > term > subst > $o] :
      ( ( $true
        = ( sP66 @ X379 ) )
    <=> ! [X384: term,X385: subst,X386: subst,X387: subst] :
          ( ( $true
           != ( X379 @ X387 @ X384 @ ( comp @ X385 @ X386 ) ) )
          | ( $true
            = ( X379 @ ( comp @ X387 @ X385 ) @ ( sub @ X384 @ X385 ) @ X386 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f83,plain,
    ( ( $true = sP67 )
  <=> ! [X406: term,X407: subst > term > subst > $o] :
        ( ? [X408: term] :
            ( ( $true
             != ( X407 @ id @ X408 @ id ) )
            & ( $true
              = ( var @ ( sub @ X408 @ id ) ) ) )
        | ( $true
          = ( sP61 @ X407 ) )
        | ( $true
          = ( sP59 @ X407 ) )
        | ( $true
          = ( sP60 @ X407 ) )
        | ( $true
          = ( sP58 @ X407 ) )
        | ( $true
          = ( X407 @ id @ X406 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f84,plain,
    ( ( $true = sP68 )
  <=> ? [X390: subst > term > subst > $o,X391: term] :
        ( ( $true
         != ( X390 @ id @ ( lam @ X391 ) @ id ) )
        & ! [X392: subst,X393: subst,X394: subst,X395: term] :
            ( ( $true
              = ( X390 @ X392 @ X395 @ ( comp @ X394 @ X393 ) ) )
            | ( $true
             != ( X390 @ ( comp @ X392 @ X394 ) @ ( sub @ X395 @ X394 ) @ X393 ) ) )
        & ( $true
          = ( sP57 @ X391 @ X390 ) )
        & ( $true
          = ( sP55 @ X390 ) )
        & ( $true
          = ( sP56 @ X390 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f85,plain,
    ( ( $true = sP69 )
  <=> ? [X377: term,X378: term,X379: subst > term > subst > $o] :
        ( ( $true
         != ( X379 @ id @ ( ap @ X378 @ X377 ) @ id ) )
        & ! [X380: subst,X381: subst,X382: subst,X383: term] :
            ( ( $true
             != ( X379 @ ( comp @ X381 @ X382 ) @ ( sub @ X383 @ X382 ) @ X380 ) )
            | ( $true
              = ( X379 @ X381 @ X383 @ ( comp @ X382 @ X380 ) ) ) )
        & ( $true
          = ( sP66 @ X379 ) )
        & ( $true
          = ( sP65 @ X379 ) )
        & ( $true
          = ( X379 @ id @ X377 @ id ) )
        & ( $true
          = ( X379 @ id @ X378 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f86,plain,
    ( ( $true = sP70 )
  <=> ? [X370: term > $o,X371: term] :
        ( ( $true
          = ( sP62 @ X370 ) )
        & ( $true
          = ( sP64 @ X370 ) )
        & ( ( sP63 @ X370 )
          = $true )
        & ( $true
         != ( X370 @ X371 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f87,plain,
    ! [X192: subst > term > subst > $o] :
      ( ( $true
        = ( sP71 @ X192 ) )
    <=> ? [X195: subst > term > term] :
          ( ! [X196: subst,X197: subst,X198: term] :
              ( ( sub @ ( X195 @ X197 @ X198 ) @ X196 )
              = ( X195 @ ( comp @ X197 @ X196 ) @ ( sub @ X198 @ X196 ) ) )
          & ( $true
           != ( X192 @ id @ ( lam @ ( X195 @ sh @ one ) ) @ id ) )
          & ! [X199: term] :
              ( ( $true
               != ( X192 @ id @ X199 @ id ) )
              | ( $true
                = ( X192 @ id @ ( X195 @ id @ X199 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f88,plain,
    ! [X192: subst > term > subst > $o] :
      ( ( $true
        = ( sP72 @ X192 ) )
    <=> ? [X204: term,X205: subst,X206: subst,X207: subst] :
          ( ( $true
           != ( X192 @ ( comp @ X206 @ X205 ) @ ( sub @ X204 @ X205 ) @ X207 ) )
          & ( $true
            = ( X192 @ X206 @ X204 @ ( comp @ X205 @ X207 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f89,plain,
    ! [X191: term,X190: term > $o] :
      ( ( $true
        = ( sP73 @ X190 @ X191 ) )
    <=> ? [X194: term] :
          ( ( ( X190 @ ( sub @ X191 @ ( push @ X194 @ id ) ) )
           != $true )
          & ( $true
            = ( X190 @ X194 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f90,plain,
    ( ( $true = sP74 )
  <=> ! [X190: term > $o,X191: term,X192: subst > term > subst > $o] :
        ( ? [X200: subst,X201: subst,X202: term,X203: subst] :
            ( ( $true
              = ( X192 @ ( comp @ X201 @ X203 ) @ ( sub @ X202 @ X203 ) @ X200 ) )
            & ( $true
             != ( X192 @ X201 @ X202 @ ( comp @ X203 @ X200 ) ) ) )
        | ( $true
          = ( sP73 @ X190 @ X191 ) )
        | ( $true
          = ( X190 @ ( lam @ X191 ) ) )
        | ? [X193: term] :
            ( ( X192 @ id @ X193 @ id )
           != ( X190 @ X193 ) )
        | ( $true
          = ( sP72 @ X192 ) )
        | ( $true
          = ( sP71 @ X192 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f92,plain,
    ! [X260: term > $o] :
      ( ( ( sP76 @ X260 )
        = $true )
    <=> ! [X264: term,X265: term] :
          ( ( $true
            = ( X260 @ ( ap @ X265 @ X264 ) ) )
          | ( $true
           != ( X260 @ X265 ) )
          | ( $true
           != ( X260 @ X264 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f93,plain,
    ! [X260: term > $o] :
      ( ( $true
        = ( sP77 @ X260 ) )
    <=> ! [X262: term] :
          ( ? [X263: term] :
              ( ( $true
                = ( X260 @ X263 ) )
              & ( $true
               != ( X260 @ ( sub @ X262 @ ( push @ X263 @ id ) ) ) ) )
          | ( $true
            = ( X260 @ ( lam @ X262 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f94,plain,
    ! [X278: subst > term > subst > $o] :
      ( ( $true
        = ( sP78 @ X278 ) )
    <=> ? [X280: subst > term > term] :
          ( ( $true
           != ( X278 @ id @ ( lam @ ( X280 @ sh @ one ) ) @ id ) )
          & ! [X281: subst,X282: term,X283: subst] :
              ( ( sub @ ( X280 @ X283 @ X282 ) @ X281 )
              = ( X280 @ ( comp @ X283 @ X281 ) @ ( sub @ X282 @ X281 ) ) )
          & ! [X284: term] :
              ( ( $true
                = ( X278 @ id @ ( X280 @ id @ X284 ) @ id ) )
              | ( $true
               != ( X278 @ id @ X284 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f95,plain,
    ! [X278: subst > term > subst > $o] :
      ( ( $true
        = ( sP79 @ X278 ) )
    <=> ? [X285: term,X286: term] :
          ( ( $true
            = ( X278 @ id @ X286 @ id ) )
          & ( $true
           != ( X278 @ id @ ( ap @ ( sub @ X285 @ id ) @ X286 ) @ id ) )
          & ( $true
            = ( X278 @ id @ X285 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f96,plain,
    ( ( sP80 = $true )
  <=> ! [X278: subst > term > subst > $o,X279: term] :
        ( ( $true
          = ( sP78 @ X278 ) )
        | ( $true
          = ( sP79 @ X278 ) )
        | ( $true
          = ( X278 @ id @ X279 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f97,plain,
    ( ( $true = sP81 )
  <=> ? [X268: term,X269: subst > term > subst > $o,X270: term > $o] :
        ( ( $true
          = ( sP75 @ X269 ) )
        & ! [X272: term] :
            ( ( X270 @ X272 )
            = ( X269 @ id @ X272 @ id ) )
        & ! [X271: term] :
            ( ( $true
             != ( X270 @ X271 ) )
            | ( $true
              = ( X270 @ ( sub @ X268 @ ( push @ X271 @ id ) ) ) ) )
        & ( $true
         != ( X270 @ ( lam @ X268 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f98,plain,
    ( ( $true = sP82 )
  <=> ? [X260: term > $o,X261: term] :
        ( ( $true
         != ( X260 @ X261 ) )
        & ! [X266: term] :
            ( ( $true
             != ( var @ X266 ) )
            | ( $true
              = ( X260 @ X266 ) ) )
        & ( $true
          = ( sP77 @ X260 ) )
        & ( ( sP76 @ X260 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f99,plain,
    ! [X45: subst > term > subst > $o] :
      ( ( $true
        = ( sP83 @ X45 ) )
    <=> ? [X48: subst > term > term] :
          ( ! [X49: term] :
              ( ( $true
                = ( X45 @ id @ ( X48 @ id @ X49 ) @ id ) )
              | ( $true
               != ( X45 @ id @ X49 @ id ) ) )
          & ! [X50: subst,X51: term,X52: subst] :
              ( ( X48 @ ( comp @ X52 @ X50 ) @ ( sub @ X51 @ X50 ) )
              = ( sub @ ( X48 @ X52 @ X51 ) @ X50 ) )
          & ( $true
           != ( X45 @ id @ ( lam @ ( X48 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f101,plain,
    ! [X71: subst > term > subst > $o] :
      ( ( $true
        = ( sP85 @ X71 ) )
    <=> ? [X72: subst > term > term,X73: term] :
          ( ( $true
           != ( X71 @ id @ ( lam @ ( X72 @ sh @ one ) ) @ id ) )
          & ! [X80: term] :
              ( ( $true
               != ( X71 @ id @ X80 @ id ) )
              | ( $true
                = ( X71 @ id @ ( X72 @ id @ X80 ) @ id ) ) )
          & ! [X74: term,X75: subst,X76: subst] :
              ( ( sub @ X73 @ ( push @ ( sub @ X74 @ X75 ) @ ( comp @ X76 @ X75 ) ) )
              = ( X72 @ ( comp @ X76 @ X75 ) @ ( sub @ X74 @ X75 ) ) )
          & ! [X77: term,X78: subst,X79: subst] :
              ( ( sub @ ( X72 @ X78 @ X77 ) @ X79 )
              = ( sub @ ( sub @ X73 @ ( push @ X77 @ X78 ) ) @ X79 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f102,plain,
    ( ( $true = sP86 )
  <=> ! [X70: term,X71: subst > term > subst > $o] :
        ( ( $true
          = ( sP85 @ X71 ) )
        | ? [X81: term] :
            ( ( $true
             != ( X71 @ id @ ( sub @ X70 @ ( push @ X81 @ id ) ) @ id ) )
            & ( $true
              = ( X71 @ id @ X81 @ id ) ) )
        | ( $true
          = ( X71 @ id @ ( lam @ ( sub @ X70 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f104,plain,
    ( ( $true = sP88 )
  <=> ! [X530: term,X531: subst > term > subst > $o] :
        ( ? [X537: term] :
            ( ( $true
              = ( X531 @ id @ X537 @ id ) )
            & ( ( X531 @ id @ ( sub @ X530 @ ( push @ X537 @ id ) ) @ id )
             != $true ) )
        | ( $true
          = ( sP87 @ X531 ) )
        | ( $true
          = ( X531 @ id @ ( lam @ ( sub @ X530 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f105,plain,
    ! [X294: subst > term > subst > $o] :
      ( ( ( sP89 @ X294 )
        = $true )
    <=> ? [X295: subst > term > term] :
          ( ( $true
           != ( X294 @ id @ ( lam @ ( X295 @ sh @ one ) ) @ id ) )
          & ! [X299: term] :
              ( ( $true
               != ( X294 @ id @ X299 @ id ) )
              | ( $true
                = ( X294 @ id @ ( X295 @ id @ X299 ) @ id ) ) )
          & ! [X296: term,X297: subst,X298: subst] :
              ( ( sub @ ( X295 @ X297 @ X296 ) @ X298 )
              = ( X295 @ ( comp @ X297 @ X298 ) @ ( sub @ X296 @ X298 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f106,plain,
    ( ( $true = sP90 )
  <=> ! [X292: term,X293: term > $o,X294: subst > term > subst > $o] :
        ( ( ( sP89 @ X294 )
          = $true )
        | ? [X300: term] :
            ( ( $true
             != ( X293 @ ( sub @ X292 @ ( push @ X300 @ id ) ) ) )
            & ( $true
              = ( X293 @ X300 ) ) )
        | ? [X301: term] :
            ( ( X294 @ id @ X301 @ id )
           != ( X293 @ X301 ) )
        | ( $true
          = ( X293 @ ( lam @ X292 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f107,plain,
    ! [X484: term > $o] :
      ( ( $true
        = ( sP91 @ X484 ) )
    <=> ? [X485: term] :
          ( ! [X486: term] :
              ( ( $true
                = ( X484 @ ( sub @ X485 @ ( push @ X486 @ id ) ) ) )
              | ( $true
               != ( X484 @ X486 ) ) )
          & ( $true
           != ( X484 @ ( lam @ X485 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f108,plain,
    ! [X484: term > $o] :
      ( ( $true
        = ( sP92 @ X484 ) )
    <=> ? [X487: term,X488: term] :
          ( ( $true
            = ( X484 @ X488 ) )
          & ( $true
           != ( X484 @ ( ap @ X488 @ X487 ) ) )
          & ( $true
            = ( X484 @ X487 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f109,plain,
    ( ( $true = sP93 )
  <=> ! [X482: subst,X483: term,X484: term > $o] :
        ( ? [X489: term] :
            ( ( $true
             != ( X484 @ ( sub @ X489 @ X482 ) ) )
            & ( $true
              = ( var @ X489 ) ) )
        | ( $true
          = ( X484 @ ( sub @ X483 @ X482 ) ) )
        | ( $true
          = ( sP92 @ X484 ) )
        | ( $true
          = ( sP91 @ X484 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f110,plain,
    ! [X428: subst > term > subst > $o] :
      ( ( $true
        = ( sP94 @ X428 ) )
    <=> ? [X430: subst > term > term] :
          ( ! [X431: term,X432: subst,X433: subst] :
              ( ( sub @ ( X430 @ X432 @ X431 ) @ X433 )
              = ( X430 @ ( comp @ X432 @ X433 ) @ ( sub @ X431 @ X433 ) ) )
          & ( $true
           != ( X428 @ id @ ( lam @ ( X430 @ sh @ one ) ) @ id ) )
          & ! [X434: term] :
              ( ( $true
               != ( X428 @ id @ X434 @ id ) )
              | ( ( X428 @ id @ ( X430 @ id @ X434 ) @ id )
                = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f111,plain,
    ! [X428: subst > term > subst > $o] :
      ( ( $true
        = ( sP95 @ X428 ) )
    <=> ? [X435: term,X436: term] :
          ( ( $true
            = ( X428 @ id @ X436 @ id ) )
          & ( $true
            = ( X428 @ id @ X435 @ id ) )
          & ( $true
           != ( X428 @ id @ ( ap @ ( sub @ X435 @ id ) @ X436 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f112,plain,
    ! [X428: subst > term > subst > $o] :
      ( ( $true
        = ( sP96 @ X428 ) )
    <=> ? [X441: term,X442: subst,X443: subst,X444: subst] :
          ( ( $true
            = ( X428 @ X444 @ X441 @ ( comp @ X443 @ X442 ) ) )
          & ( $true
           != ( X428 @ ( comp @ X444 @ X443 ) @ ( sub @ X441 @ X443 ) @ X442 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f114,plain,
    ( ( $true = sP98 )
  <=> ! [X428: subst > term > subst > $o,X429: term] :
        ( ( $true
          = ( sP94 @ X428 ) )
        | ? [X445: term] :
            ( ( $true
              = ( var @ ( sub @ X445 @ id ) ) )
            & ( $true
             != ( X428 @ id @ X445 @ id ) ) )
        | ( $true
          = ( sP97 @ X428 ) )
        | ( $true
          = ( sP95 @ X428 ) )
        | ( $true
          = ( X428 @ id @ X429 @ id ) )
        | ( $true
          = ( sP96 @ X428 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f115,plain,
    ! [X338: term > $o] :
      ( ( $true
        = ( sP99 @ X338 ) )
    <=> ! [X341: term,X342: term] :
          ( ( $true
           != ( X338 @ X342 ) )
          | ( $true
           != ( X338 @ X341 ) )
          | ( $true
            = ( X338 @ ( ap @ X341 @ X342 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f116,plain,
    ! [X338: term > $o] :
      ( ( $true
        = ( sP100 @ X338 ) )
    <=> ! [X340: term] :
          ( ( $true
           != ( var @ X340 ) )
          | ( $true
            = ( X338 @ X340 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f117,plain,
    ! [X345: term > $o] :
      ( ( $true
        = ( sP101 @ X345 ) )
    <=> ? [X347: term] :
          ( ( $true
           != ( X345 @ ( lam @ X347 ) ) )
          & ! [X348: term] :
              ( ( $true
               != ( X345 @ X348 ) )
              | ( $true
                = ( X345 @ ( sub @ X347 @ ( push @ X348 @ id ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f118,plain,
    ! [X345: term > $o] :
      ( ( ( sP102 @ X345 )
        = $true )
    <=> ? [X350: term,X351: term] :
          ( ( $true
           != ( X345 @ ( ap @ X351 @ X350 ) ) )
          & ( $true
            = ( X345 @ X350 ) )
          & ( ( X345 @ X351 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f119,plain,
    ( ( $true = sP103 )
  <=> ! [X344: term,X345: term > $o,X346: subst] :
        ( ? [X349: term] :
            ( ( ( var @ X349 )
              = $true )
            & ( $true
             != ( X345 @ ( sub @ X349 @ X346 ) ) ) )
        | ( ( sP102 @ X345 )
          = $true )
        | ( $true
          = ( X345 @ ( sub @ X344 @ X346 ) ) )
        | ( $true
          = ( sP101 @ X345 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f120,plain,
    ( ( $true = sP104 )
  <=> ? [X338: term > $o,X339: term] :
        ( ! [X343: term] :
            ( ( $true
             != ( X338 @ X343 ) )
            | ( $true
              = ( X338 @ ( lam @ X343 ) ) ) )
        & ( $true
         != ( X338 @ X339 ) )
        & ( $true
          = ( sP99 @ X338 ) )
        & ( $true
          = ( sP100 @ X338 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f121,plain,
    ! [X164: subst > term > subst > $o] :
      ( ( $true
        = ( sP105 @ X164 ) )
    <=> ? [X165: term,X166: term] :
          ( ( $true
            = ( X164 @ id @ X166 @ id ) )
          & ( $true
            = ( X164 @ id @ X165 @ id ) )
          & ( $true
           != ( X164 @ id @ ( ap @ ( sub @ X165 @ id ) @ X166 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f122,plain,
    ! [X164: subst > term > subst > $o] :
      ( ( $true
        = ( sP106 @ X164 ) )
    <=> ? [X167: subst,X168: subst,X169: subst,X170: term] :
          ( ( $true
            = ( X164 @ X167 @ X170 @ ( comp @ X169 @ X168 ) ) )
          & ( $true
           != ( X164 @ ( comp @ X167 @ X169 ) @ ( sub @ X170 @ X169 ) @ X168 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f123,plain,
    ( ( $true = sP107 )
  <=> ! [X162: term,X163: term,X164: subst > term > subst > $o] :
        ( ( $true
         != ( X164 @ id @ X163 @ id ) )
        | ? [X171: subst,X172: subst,X173: subst,X174: term] :
            ( ( $true
             != ( X164 @ X172 @ X174 @ ( comp @ X173 @ X171 ) ) )
            & ( $true
              = ( X164 @ ( comp @ X172 @ X173 ) @ ( sub @ X174 @ X173 ) @ X171 ) ) )
        | ( $true
         != ( X164 @ id @ X162 @ id ) )
        | ( $true
          = ( sP106 @ X164 ) )
        | ( $true
          = ( X164 @ id @ ( ap @ X162 @ X163 ) @ id ) )
        | ( $true
          = ( sP105 @ X164 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f124,plain,
    ! [X120: subst > term > subst > $o] :
      ( ( $true
        = ( sP108 @ X120 ) )
    <=> ? [X129: subst > term > term] :
          ( ! [X130: subst,X131: subst,X132: term] :
              ( ( sub @ ( X129 @ X131 @ X132 ) @ X130 )
              = ( X129 @ ( comp @ X131 @ X130 ) @ ( sub @ X132 @ X130 ) ) )
          & ( $true
           != ( X120 @ id @ ( lam @ ( X129 @ sh @ one ) ) @ id ) )
          & ! [X133: term] :
              ( ( ( X120 @ id @ X133 @ id )
               != $true )
              | ( ( X120 @ id @ ( X129 @ id @ X133 ) @ id )
                = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f125,plain,
    ! [X120: subst > term > subst > $o,X119: term] :
      ( ( $true
        = ( sP109 @ X119 @ X120 ) )
    <=> ? [X134: term] :
          ( ( $true
            = ( X120 @ id @ X134 @ id ) )
          & ( $true
           != ( X120 @ id @ ( sub @ X119 @ ( push @ X134 @ id ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f126,plain,
    ! [X120: subst > term > subst > $o] :
      ( ( $true
        = ( sP110 @ X120 ) )
    <=> ? [X125: subst,X126: subst,X127: subst,X128: term] :
          ( ( $true
            = ( X120 @ ( comp @ X126 @ X127 ) @ ( sub @ X128 @ X127 ) @ X125 ) )
          & ( $true
           != ( X120 @ X126 @ X128 @ ( comp @ X127 @ X125 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f127,plain,
    ( ( $true = sP111 )
  <=> ! [X119: term,X120: subst > term > subst > $o] :
        ( ? [X121: subst,X122: subst,X123: subst,X124: term] :
            ( ( $true
              = ( X120 @ X121 @ X124 @ ( comp @ X123 @ X122 ) ) )
            & ( $true
             != ( X120 @ ( comp @ X121 @ X123 ) @ ( sub @ X124 @ X123 ) @ X122 ) ) )
        | ( $true
          = ( X120 @ id @ ( lam @ X119 ) @ id ) )
        | ( $true
          = ( sP110 @ X120 ) )
        | ( $true
          = ( sP108 @ X120 ) )
        | ( $true
          = ( sP109 @ X119 @ X120 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f128,plain,
    ( ( $true = sP112 )
  <=> ! [X218: term,X219: term,X220: term,X221: term] :
        ( ( ( ap @ ( sub @ X219 @ id ) @ X221 )
         != ( ap @ ( sub @ X220 @ id ) @ X218 ) )
        | ( X219 = X220 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f129,plain,
    ( ( $true = sP113 )
  <=> ( ? [X213: term] :
          ( ( sub @ X213 @ id )
         != X213 )
      | ? [X214: term,X215: term,X216: term,X217: term] :
          ( ( X214 != X215 )
          & ( ( ap @ X214 @ X216 )
            = ( ap @ X215 @ X217 ) ) )
      | ( $true = sP112 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

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

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

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

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

thf(f1339,plain,
    ! [X213: term] :
      ( ( d2term @ ( sK635 @ X213 ) )
      = X213 ),
    inference(cnf_transformation,[status(thm)],[f767]) ).

thf(f783,plain,
    ! [X0: term > $o] :
      ( ( ( sP0 @ X0 )
        = $true )
      | ( $true
        = ( X0 @ ( sK126 @ X0 ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f147]) ).

thf(f147,plain,
    ! [X0: term > $o] :
      ( ( ( ( sP0 @ X0 )
          = $true )
        | ( ( $true
           != ( X0 @ ( ap @ ( sK127 @ X0 ) @ ( sK126 @ X0 ) ) ) )
          & ( $true
            = ( X0 @ ( sK127 @ X0 ) ) )
          & ( $true
            = ( X0 @ ( sK126 @ X0 ) ) ) ) )
      & ( ! [X3: term,X4: term] :
            ( ( $true
              = ( X0 @ ( ap @ X4 @ X3 ) ) )
            | ( $true
             != ( X0 @ X4 ) )
            | ( $true
             != ( X0 @ X3 ) ) )
        | ( ( sP0 @ X0 )
         != $true ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK126,sK127])],[f145,f146]) ).

thf(f146,plain,
    ! [X0: term > $o] :
      ( ? [X1: term,X2: term] :
          ( ( $true
           != ( X0 @ ( ap @ X2 @ X1 ) ) )
          & ( $true
            = ( X0 @ X2 ) )
          & ( $true
            = ( X0 @ X1 ) ) )
     => ( ( $true
         != ( X0 @ ( ap @ ( sK127 @ X0 ) @ ( sK126 @ X0 ) ) ) )
        & ( $true
          = ( X0 @ ( sK127 @ X0 ) ) )
        & ( $true
          = ( X0 @ ( sK126 @ X0 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f145,plain,
    ! [X0: term > $o] :
      ( ( ( ( sP0 @ X0 )
          = $true )
        | ? [X1: term,X2: term] :
            ( ( $true
             != ( X0 @ ( ap @ X2 @ X1 ) ) )
            & ( $true
              = ( X0 @ X2 ) )
            & ( $true
              = ( X0 @ X1 ) ) ) )
      & ( ! [X3: term,X4: term] :
            ( ( $true
              = ( X0 @ ( ap @ X4 @ X3 ) ) )
            | ( $true
             != ( X0 @ X4 ) )
            | ( $true
             != ( X0 @ X3 ) ) )
        | ( ( sP0 @ X0 )
         != $true ) ) ),
    inference(rectify,[status(thm)],[f144]) ).

thf(f144,plain,
    ! [X1: term > $o] :
      ( ( ( $true
          = ( sP0 @ X1 ) )
        | ? [X12: term,X13: term] :
            ( ( $true
             != ( X1 @ ( ap @ X13 @ X12 ) ) )
            & ( $true
              = ( X1 @ X13 ) )
            & ( $true
              = ( X1 @ X12 ) ) ) )
      & ( ! [X12: term,X13: term] :
            ( ( $true
              = ( X1 @ ( ap @ X13 @ X12 ) ) )
            | ( $true
             != ( X1 @ X13 ) )
            | ( $true
             != ( X1 @ X12 ) ) )
        | ( $true
         != ( sP0 @ X1 ) ) ) ),
    inference(nnf_transformation,[status(thm)],[f15]) ).

thf(f15,plain,
    ! [X1: term > $o] :
      ( ( $true
        = ( sP0 @ X1 ) )
    <=> ! [X12: term,X13: term] :
          ( ( $true
            = ( X1 @ ( ap @ X13 @ X12 ) ) )
          | ( $true
           != ( X1 @ X13 ) )
          | ( $true
           != ( X1 @ X12 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f5337,plain,
    ! [X0: term > $o] :
      ( ( ( sP0 @ X0 )
        = $true )
      | ( $true
       != ( X0 @ ( d2term @ d_one ) ) ) ),
    inference(forward_demodulation,[status(thm)],[f785,f3913]) ).

thf(f785,plain,
    ! [X0: term > $o] :
      ( ( ( sP0 @ X0 )
        = $true )
      | ( $true
       != ( X0 @ ( ap @ ( sK127 @ X0 ) @ ( sK126 @ X0 ) ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f147]) ).

thf(f2253,plain,
    ( ( $true
     != ( sP0 @ sK115 ) )
    | spl660_83 ),
    inference(avatar_component_clause,[status(thm)],[f2252]) ).

thf(f2252,definition,
    ( spl660_83
  <=> ( $true
      = ( sP0 @ sK115 ) ) ),
    introduced(definition,[new_symbols(naming,[spl660_83])],[avatar_definition]) ).

thf(f4024,plain,
    ( spl660_226
    | ~ spl660_310 ),
    inference(avatar_contradiction_clause,[status(thm)],[f4023]) ).

thf(f4023,plain,
    ( $false
    | spl660_226
    | ~ spl660_310 ),
    inference(subsumption_resolution,[status(thm)],[f4022,f3928]) ).

thf(f3928,plain,
    ( ! [X0: term] :
        ( $true
        = ( sK451 @ X0 ) )
    | ~ spl660_310 ),
    inference(superposition,[status(thm)],[f3213,f3917]) ).

thf(f3917,plain,
    ! [X0: term,X1: term] : ( X0 = X1 ),
    inference(superposition,[status(thm)],[f3913,f3913]) ).

thf(f3213,plain,
    ( ( $true
      = ( sK451 @ sK453 ) )
    | ~ spl660_310 ),
    inference(avatar_component_clause,[status(thm)],[f3212]) ).

thf(f3212,definition,
    ( spl660_310
  <=> ( $true
      = ( sK451 @ sK453 ) ) ),
    introduced(definition,[new_symbols(naming,[spl660_310])],[avatar_definition]) ).

thf(f4022,plain,
    ( ( $true
     != ( sK451 @ ( d2term @ d_one ) ) )
    | spl660_226 ),
    inference(forward_demodulation,[status(thm)],[f2842,f3913]) ).

thf(f2842,plain,
    ( ( $true
     != ( sK451 @ ( ap @ sK453 @ sK452 ) ) )
    | spl660_226 ),
    inference(avatar_component_clause,[status(thm)],[f2841]) ).

thf(f2841,definition,
    ( spl660_226
  <=> ( $true
      = ( sK451 @ ( ap @ sK453 @ sK452 ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl660_226])],[avatar_definition]) ).

thf(f3284,plain,
    ( ~ spl660_82
    | ~ spl660_45 ),
    inference(avatar_split_clause,[status(thm)],[f787,f2108,f2249]) ).

thf(f2249,definition,
    ( spl660_82
  <=> ( $true = sP3 ) ),
    introduced(definition,[new_symbols(naming,[spl660_82])],[avatar_definition]) ).

thf(f2108,definition,
    ( spl660_45
  <=> ( hoasinduction_lem2v2 = $true ) ),
    introduced(definition,[new_symbols(naming,[spl660_45])],[avatar_definition]) ).

thf(f787,plain,
    ( ( hoasinduction_lem2v2 != $true )
    | ( $true != sP3 ) ),
    inference(cnf_transformation,[status(thm)],[f148]) ).

thf(f148,plain,
    ( ( ( hoasinduction_lem2v2 != $true )
      | ( $true != sP3 ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true = sP3 ) ) ),
    inference(nnf_transformation,[status(thm)],[f19]) ).

thf(f19,plain,
    ( ( $true = sP3 )
  <~> ( hoasinduction_lem2v2 = $true ) ),
    inference(definition_folding,[status(thm)],[f12,f18,f17,f16,f15]) ).

thf(f16,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP1 @ X0 ) )
    <=> ? [X10: term,X11: term] :
          ( ( $true
            = ( X0 @ id @ X11 @ id ) )
          & ( $true
            = ( X0 @ id @ X10 @ id ) )
          & ( $true
           != ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X11 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f17,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP2 @ X0 ) )
    <=> ? [X6: term,X7: subst,X8: subst,X9: subst] :
          ( ( $true
           != ( X0 @ X9 @ X6 @ ( comp @ X8 @ X7 ) ) )
          & ( ( X0 @ ( comp @ X9 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f18,plain,
    ( ( $true = sP3 )
  <=> ! [X0: subst > term > subst > $o,X1: term > $o] :
        ( ( $true
          = ( sP0 @ X1 ) )
        | ? [X2: term,X3: subst,X4: subst,X5: subst] :
            ( ( $true
             != ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
            & ( $true
              = ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
        | ( $true
          = ( sP2 @ X0 ) )
        | ( $true
          = ( sP1 @ X0 ) )
        | ( $true
         != ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f12,plain,
    ( ! [X0: subst > term > subst > $o,X1: term > $o] :
        ( ! [X12: term,X13: term] :
            ( ( $true
              = ( X1 @ ( ap @ X13 @ X12 ) ) )
            | ( $true
             != ( X1 @ X13 ) )
            | ( $true
             != ( X1 @ X12 ) ) )
        | ? [X2: term,X3: subst,X4: subst,X5: subst] :
            ( ( $true
             != ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
            & ( $true
              = ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
        | ? [X6: term,X7: subst,X8: subst,X9: subst] :
            ( ( $true
             != ( X0 @ X9 @ X6 @ ( comp @ X8 @ X7 ) ) )
            & ( ( X0 @ ( comp @ X9 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
              = $true ) )
        | ? [X10: term,X11: term] :
            ( ( $true
              = ( X0 @ id @ X11 @ id ) )
            & ( $true
              = ( X0 @ id @ X10 @ id ) )
            & ( $true
             != ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X11 ) @ id ) ) )
        | ( $true
         != ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) )
  <~> ( hoasinduction_lem2v2 = $true ) ),
    inference(flattening,[status(thm)],[f11]) ).

thf(f11,plain,
    ( ( hoasinduction_lem2v2 = $true )
  <~> ! [X0: subst > term > subst > $o,X1: term > $o] :
        ( ! [X12: term,X13: term] :
            ( ( $true
              = ( X1 @ ( ap @ X13 @ X12 ) ) )
            | ( $true
             != ( X1 @ X12 ) )
            | ( $true
             != ( X1 @ X13 ) ) )
        | ( $true
         != ( hoasinduction_p_and_p_prime @ X0 @ X1 ) )
        | ? [X10: term,X11: term] :
            ( ( $true
             != ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X11 ) @ id ) )
            & ( $true
              = ( X0 @ id @ X11 @ id ) )
            & ( $true
              = ( X0 @ id @ X10 @ id ) ) )
        | ? [X6: term,X7: subst,X8: subst,X9: subst] :
            ( ( $true
             != ( X0 @ X9 @ X6 @ ( comp @ X8 @ X7 ) ) )
            & ( ( X0 @ ( comp @ X9 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
              = $true ) )
        | ? [X2: term,X3: subst,X4: subst,X5: subst] :
            ( ( $true
             != ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
            & ( $true
              = ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) ) ) ),
    inference(ennf_transformation,[status(thm)],[f6]) ).

thf(f6,plain,
    ~ ( ( hoasinduction_lem2v2 = $true )
    <=> ! [X0: subst > term > subst > $o,X1: term > $o] :
          ( ! [X2: term,X3: subst,X4: subst,X5: subst] :
              ( ( $true
                = ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) )
             => ( $true
                = ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) ) )
         => ( ! [X6: term,X7: subst,X8: subst,X9: subst] :
                ( ( ( X0 @ ( comp @ X9 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                  = $true )
               => ( $true
                  = ( X0 @ X9 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
           => ( ! [X10: term,X11: term] :
                  ( ( $true
                    = ( X0 @ id @ X10 @ id ) )
                 => ( ( $true
                      = ( X0 @ id @ X11 @ id ) )
                   => ( $true
                      = ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X11 ) @ id ) ) ) )
             => ( ( $true
                  = ( hoasinduction_p_and_p_prime @ X0 @ X1 ) )
               => ! [X12: term,X13: term] :
                    ( ( $true
                      = ( X1 @ X13 ) )
                   => ( ( $true
                        = ( X1 @ X12 ) )
                     => ( $true
                        = ( X1 @ ( ap @ X13 @ X12 ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[status(thm)],[f5]) ).

thf(f5,plain,
    ~ ! [X0: subst > term > subst > $o,X1: term > $o] :
        ( ( ! [X2: term,X3: subst,X4: subst,X5: subst] :
              ( ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) )
             => ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
         => ( ! [X6: term,X7: subst,X8: subst,X9: subst] :
                ( ( X0 @ ( comp @ X9 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
               => ( X0 @ X9 @ X6 @ ( comp @ X8 @ X7 ) ) )
           => ( ! [X10: term,X11: term] :
                  ( ( X0 @ id @ X10 @ id )
                 => ( ( X0 @ id @ X11 @ id )
                   => ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X11 ) @ id ) ) )
             => ( ( hoasinduction_p_and_p_prime @ X0 @ X1 )
               => ! [X12: term,X13: term] :
                    ( ( X1 @ X13 )
                   => ( ( X1 @ X12 )
                     => ( X1 @ ( ap @ X13 @ X12 ) ) ) ) ) ) ) )
        = hoasinduction_lem2v2 ),
    inference(rectify,[status(thm)],[f3]) ).

thf(f3,negated_conjecture,
    ~ ! [X10: subst > term > subst > $o,X11: term > $o] :
        ( ( ! [X13: term,X25: subst,X26: subst,X14: subst] :
              ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
             => ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
         => ( ! [X13: term,X25: subst,X26: subst,X14: subst] :
                ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
               => ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
           => ( ! [X13: term,X15: term] :
                  ( ( X10 @ id @ X13 @ id )
                 => ( ( X10 @ id @ X15 @ id )
                   => ( X10 @ id @ ( hoasap @ id @ X13 @ id @ X15 ) @ id ) ) )
             => ( ( hoasinduction_p_and_p_prime @ X10 @ X11 )
               => ! [X15: term,X13: term] :
                    ( ( X11 @ X13 )
                   => ( ( X11 @ X15 )
                     => ( X11 @ ( ap @ X13 @ X15 ) ) ) ) ) ) ) )
        = hoasinduction_lem2v2 ),
    inference(negated_conjecture,[status(cth)],[f2]) ).

thf(f2,conjecture,
    ! [X10: subst > term > subst > $o,X11: term > $o] :
      ( ( ! [X13: term,X25: subst,X26: subst,X14: subst] :
            ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
           => ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
       => ( ! [X13: term,X25: subst,X26: subst,X14: subst] :
              ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
             => ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
         => ( ! [X13: term,X15: term] :
                ( ( X10 @ id @ X13 @ id )
               => ( ( X10 @ id @ X15 @ id )
                 => ( X10 @ id @ ( hoasap @ id @ X13 @ id @ X15 ) @ id ) ) )
           => ( ( hoasinduction_p_and_p_prime @ X10 @ X11 )
             => ! [X15: term,X13: term] :
                  ( ( X11 @ X13 )
                 => ( ( X11 @ X15 )
                   => ( X11 @ ( ap @ X13 @ X15 ) ) ) ) ) ) ) )
      = hoasinduction_lem2v2 ),
    file('/export/starexec/sandbox2/tmp/tmp.1J4YzlxBxw/DTF2THF_24745.p',hoasinduction_lem2v2) ).

thf(f3214,plain,
    ( spl660_46
    | spl660_310 ),
    inference(avatar_split_clause,[status(thm)],[f1199,f3212,f2111]) ).

thf(f2111,definition,
    ( spl660_46
  <=> ( $true = sP27 ) ),
    introduced(definition,[new_symbols(naming,[spl660_46])],[avatar_definition]) ).

thf(f1199,plain,
    ( ( $true
      = ( sK451 @ sK453 ) )
    | ( $true = sP27 ) ),
    inference(cnf_transformation,[status(thm)],[f578]) ).

thf(f578,plain,
    ( ( ( $true = sP27 )
      | ( ( $true
          = ( sK451 @ sK453 ) )
        & ! [X4: term] :
            ( ( sK451 @ X4 )
            = ( sK450 @ id @ X4 @ id ) )
        & ( $true
         != ( sP25 @ sK450 ) )
        & ( $true
          = ( sK451 @ sK452 ) )
        & ! [X5: term,X6: subst,X7: subst,X8: subst] :
            ( ( $true
             != ( sK450 @ X6 @ X5 @ ( comp @ X7 @ X8 ) ) )
            | ( ( sK450 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) @ X8 )
              = $true ) )
        & ( $true
         != ( sK451 @ ( ap @ sK453 @ sK452 ) ) )
        & ( $true
         != ( sP26 @ sK450 ) ) ) )
    & ( ! [X9: subst > term > subst > $o,X10: term > $o,X11: term,X12: term] :
          ( ( $true
           != ( X10 @ X12 ) )
          | ( ( X10 @ ( sK454 @ X10 @ X9 ) )
           != ( X9 @ id @ ( sK454 @ X10 @ X9 ) @ id ) )
          | ( $true
            = ( sP25 @ X9 ) )
          | ( $true
           != ( X10 @ X11 ) )
          | ( ( $true
              = ( X9 @ ( sK456 @ X9 ) @ ( sK455 @ X9 ) @ ( comp @ ( sK457 @ X9 ) @ ( sK458 @ X9 ) ) ) )
            & ( $true
             != ( X9 @ ( comp @ ( sK456 @ X9 ) @ ( sK457 @ X9 ) ) @ ( sub @ ( sK455 @ X9 ) @ ( sK457 @ X9 ) ) @ ( sK458 @ X9 ) ) ) )
          | ( $true
            = ( X10 @ ( ap @ X12 @ X11 ) ) )
          | ( $true
            = ( sP26 @ X9 ) ) )
      | ( $true != sP27 ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK450,sK451,sK452,sK453,sK454,sK455,sK456,sK457,sK458])],[f574,f577,f576,f575]) ).

thf(f575,plain,
    ( ? [X0: subst > term > subst > $o,X1: term > $o,X2: term,X3: term] :
        ( ( $true
          = ( X1 @ X3 ) )
        & ! [X4: term] :
            ( ( X0 @ id @ X4 @ id )
            = ( X1 @ X4 ) )
        & ( $true
         != ( sP25 @ X0 ) )
        & ( $true
          = ( X1 @ X2 ) )
        & ! [X5: term,X6: subst,X7: subst,X8: subst] :
            ( ( $true
             != ( X0 @ X6 @ X5 @ ( comp @ X7 @ X8 ) ) )
            | ( $true
              = ( X0 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) @ X8 ) ) )
        & ( ( X1 @ ( ap @ X3 @ X2 ) )
         != $true )
        & ( $true
         != ( sP26 @ X0 ) ) )
   => ( ( $true
        = ( sK451 @ sK453 ) )
      & ! [X4: term] :
          ( ( sK451 @ X4 )
          = ( sK450 @ id @ X4 @ id ) )
      & ( $true
       != ( sP25 @ sK450 ) )
      & ( $true
        = ( sK451 @ sK452 ) )
      & ! [X8: subst,X7: subst,X6: subst,X5: term] :
          ( ( $true
           != ( sK450 @ X6 @ X5 @ ( comp @ X7 @ X8 ) ) )
          | ( ( sK450 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) @ X8 )
            = $true ) )
      & ( $true
       != ( sK451 @ ( ap @ sK453 @ sK452 ) ) )
      & ( $true
       != ( sP26 @ sK450 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f576,plain,
    ! [X9: subst > term > subst > $o,X10: term > $o] :
      ( ? [X13: term] :
          ( ( X10 @ X13 )
         != ( X9 @ id @ X13 @ id ) )
     => ( ( X10 @ ( sK454 @ X10 @ X9 ) )
       != ( X9 @ id @ ( sK454 @ X10 @ X9 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f577,plain,
    ! [X9: subst > term > subst > $o] :
      ( ? [X14: term,X15: subst,X16: subst,X17: subst] :
          ( ( $true
            = ( X9 @ X15 @ X14 @ ( comp @ X16 @ X17 ) ) )
          & ( $true
           != ( X9 @ ( comp @ X15 @ X16 ) @ ( sub @ X14 @ X16 ) @ X17 ) ) )
     => ( ( $true
          = ( X9 @ ( sK456 @ X9 ) @ ( sK455 @ X9 ) @ ( comp @ ( sK457 @ X9 ) @ ( sK458 @ X9 ) ) ) )
        & ( $true
         != ( X9 @ ( comp @ ( sK456 @ X9 ) @ ( sK457 @ X9 ) ) @ ( sub @ ( sK455 @ X9 ) @ ( sK457 @ X9 ) ) @ ( sK458 @ X9 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f574,plain,
    ( ( ( $true = sP27 )
      | ? [X0: subst > term > subst > $o,X1: term > $o,X2: term,X3: term] :
          ( ( $true
            = ( X1 @ X3 ) )
          & ! [X4: term] :
              ( ( X0 @ id @ X4 @ id )
              = ( X1 @ X4 ) )
          & ( $true
           != ( sP25 @ X0 ) )
          & ( $true
            = ( X1 @ X2 ) )
          & ! [X5: term,X6: subst,X7: subst,X8: subst] :
              ( ( $true
               != ( X0 @ X6 @ X5 @ ( comp @ X7 @ X8 ) ) )
              | ( $true
                = ( X0 @ ( comp @ X6 @ X7 ) @ ( sub @ X5 @ X7 ) @ X8 ) ) )
          & ( ( X1 @ ( ap @ X3 @ X2 ) )
           != $true )
          & ( $true
           != ( sP26 @ X0 ) ) ) )
    & ( ! [X9: subst > term > subst > $o,X10: term > $o,X11: term,X12: term] :
          ( ( $true
           != ( X10 @ X12 ) )
          | ? [X13: term] :
              ( ( X10 @ X13 )
             != ( X9 @ id @ X13 @ id ) )
          | ( $true
            = ( sP25 @ X9 ) )
          | ( $true
           != ( X10 @ X11 ) )
          | ? [X14: term,X15: subst,X16: subst,X17: subst] :
              ( ( $true
                = ( X9 @ X15 @ X14 @ ( comp @ X16 @ X17 ) ) )
              & ( $true
               != ( X9 @ ( comp @ X15 @ X16 ) @ ( sub @ X14 @ X16 ) @ X17 ) ) )
          | ( $true
            = ( X10 @ ( ap @ X12 @ X11 ) ) )
          | ( $true
            = ( sP26 @ X9 ) ) )
      | ( $true != sP27 ) ) ),
    inference(rectify,[status(thm)],[f573]) ).

thf(f573,plain,
    ( ( ( $true = sP27 )
      | ? [X82: subst > term > subst > $o,X83: term > $o,X84: term,X85: term] :
          ( ( $true
            = ( X83 @ X85 ) )
          & ! [X90: term] :
              ( ( X82 @ id @ X90 @ id )
              = ( X83 @ X90 ) )
          & ( $true
           != ( sP25 @ X82 ) )
          & ( $true
            = ( X83 @ X84 ) )
          & ! [X93: term,X94: subst,X95: subst,X96: subst] :
              ( ( $true
               != ( X82 @ X94 @ X93 @ ( comp @ X95 @ X96 ) ) )
              | ( $true
                = ( X82 @ ( comp @ X94 @ X95 ) @ ( sub @ X93 @ X95 ) @ X96 ) ) )
          & ( $true
           != ( X83 @ ( ap @ X85 @ X84 ) ) )
          & ( $true
           != ( sP26 @ X82 ) ) ) )
    & ( ! [X82: subst > term > subst > $o,X83: term > $o,X84: term,X85: term] :
          ( ( $true
           != ( X83 @ X85 ) )
          | ? [X90: term] :
              ( ( X82 @ id @ X90 @ id )
             != ( X83 @ X90 ) )
          | ( $true
            = ( sP25 @ X82 ) )
          | ( $true
           != ( X83 @ X84 ) )
          | ? [X93: term,X94: subst,X95: subst,X96: subst] :
              ( ( $true
                = ( X82 @ X94 @ X93 @ ( comp @ X95 @ X96 ) ) )
              & ( $true
               != ( X82 @ ( comp @ X94 @ X95 ) @ ( sub @ X93 @ X95 ) @ X96 ) ) )
          | ( $true
            = ( X83 @ ( ap @ X85 @ X84 ) ) )
          | ( $true
            = ( sP26 @ X82 ) ) )
      | ( $true != sP27 ) ) ),
    inference(nnf_transformation,[status(thm)],[f43]) ).

thf(f2843,plain,
    ( ~ spl660_226
    | spl660_46 ),
    inference(avatar_split_clause,[status(thm)],[f1194,f2111,f2841]) ).

thf(f1194,plain,
    ( ( $true = sP27 )
    | ( $true
     != ( sK451 @ ( ap @ sK453 @ sK452 ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f578]) ).

thf(f2254,plain,
    ( spl660_82
    | ~ spl660_83 ),
    inference(avatar_split_clause,[status(thm)],[f774,f2252,f2249]) ).

thf(f774,plain,
    ( ( $true
     != ( sP0 @ sK115 ) )
    | ( $true = sP3 ) ),
    inference(cnf_transformation,[status(thm)],[f135]) ).

thf(f135,plain,
    ( ( ( $true = sP3 )
      | ( ( $true
         != ( sP0 @ sK115 ) )
        & ! [X2: term,X3: subst,X4: subst,X5: subst] :
            ( ( $true
              = ( sK114 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
            | ( $true
             != ( sK114 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
        & ( ( sP2 @ sK114 )
         != $true )
        & ( $true
         != ( sP1 @ sK114 ) )
        & ( $true
          = ( hoasinduction_p_and_p_prime @ sK114 @ sK115 ) ) ) )
    & ( ! [X6: subst > term > subst > $o,X7: term > $o] :
          ( ( $true
            = ( sP0 @ X7 ) )
          | ( ( $true
             != ( X6 @ ( comp @ ( sK119 @ X6 ) @ ( sK118 @ X6 ) ) @ ( sub @ ( sK116 @ X6 ) @ ( sK118 @ X6 ) ) @ ( sK117 @ X6 ) ) )
            & ( $true
              = ( X6 @ ( sK119 @ X6 ) @ ( sK116 @ X6 ) @ ( comp @ ( sK118 @ X6 ) @ ( sK117 @ X6 ) ) ) ) )
          | ( $true
            = ( sP2 @ X6 ) )
          | ( $true
            = ( sP1 @ X6 ) )
          | ( $true
           != ( hoasinduction_p_and_p_prime @ X6 @ X7 ) ) )
      | ( $true != sP3 ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK114,sK115,sK116,sK117,sK118,sK119])],[f132,f134,f133]) ).

thf(f133,plain,
    ( ? [X0: subst > term > subst > $o,X1: term > $o] :
        ( ( $true
         != ( sP0 @ X1 ) )
        & ! [X2: term,X3: subst,X4: subst,X5: subst] :
            ( ( $true
              = ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
            | ( $true
             != ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
        & ( $true
         != ( sP2 @ X0 ) )
        & ( $true
         != ( sP1 @ X0 ) )
        & ( $true
          = ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) )
   => ( ( $true
       != ( sP0 @ sK115 ) )
      & ! [X5: subst,X4: subst,X3: subst,X2: term] :
          ( ( $true
            = ( sK114 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
          | ( $true
           != ( sK114 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
      & ( ( sP2 @ sK114 )
       != $true )
      & ( $true
       != ( sP1 @ sK114 ) )
      & ( $true
        = ( hoasinduction_p_and_p_prime @ sK114 @ sK115 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f134,plain,
    ! [X6: subst > term > subst > $o] :
      ( ? [X8: term,X9: subst,X10: subst,X11: subst] :
          ( ( ( X6 @ ( comp @ X11 @ X10 ) @ ( sub @ X8 @ X10 ) @ X9 )
           != $true )
          & ( $true
            = ( X6 @ X11 @ X8 @ ( comp @ X10 @ X9 ) ) ) )
     => ( ( $true
         != ( X6 @ ( comp @ ( sK119 @ X6 ) @ ( sK118 @ X6 ) ) @ ( sub @ ( sK116 @ X6 ) @ ( sK118 @ X6 ) ) @ ( sK117 @ X6 ) ) )
        & ( $true
          = ( X6 @ ( sK119 @ X6 ) @ ( sK116 @ X6 ) @ ( comp @ ( sK118 @ X6 ) @ ( sK117 @ X6 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f132,plain,
    ( ( ( $true = sP3 )
      | ? [X0: subst > term > subst > $o,X1: term > $o] :
          ( ( $true
           != ( sP0 @ X1 ) )
          & ! [X2: term,X3: subst,X4: subst,X5: subst] :
              ( ( $true
                = ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
              | ( $true
               != ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
          & ( $true
           != ( sP2 @ X0 ) )
          & ( $true
           != ( sP1 @ X0 ) )
          & ( $true
            = ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) ) )
    & ( ! [X6: subst > term > subst > $o,X7: term > $o] :
          ( ( $true
            = ( sP0 @ X7 ) )
          | ? [X8: term,X9: subst,X10: subst,X11: subst] :
              ( ( ( X6 @ ( comp @ X11 @ X10 ) @ ( sub @ X8 @ X10 ) @ X9 )
               != $true )
              & ( $true
                = ( X6 @ X11 @ X8 @ ( comp @ X10 @ X9 ) ) ) )
          | ( $true
            = ( sP2 @ X6 ) )
          | ( $true
            = ( sP1 @ X6 ) )
          | ( $true
           != ( hoasinduction_p_and_p_prime @ X6 @ X7 ) ) )
      | ( $true != sP3 ) ) ),
    inference(rectify,[status(thm)],[f131]) ).

thf(f131,plain,
    ( ( ( $true = sP3 )
      | ? [X0: subst > term > subst > $o,X1: term > $o] :
          ( ( $true
           != ( sP0 @ X1 ) )
          & ! [X2: term,X3: subst,X4: subst,X5: subst] :
              ( ( $true
                = ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
              | ( $true
               != ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
          & ( $true
           != ( sP2 @ X0 ) )
          & ( $true
           != ( sP1 @ X0 ) )
          & ( $true
            = ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) ) )
    & ( ! [X0: subst > term > subst > $o,X1: term > $o] :
          ( ( $true
            = ( sP0 @ X1 ) )
          | ? [X2: term,X3: subst,X4: subst,X5: subst] :
              ( ( $true
               != ( X0 @ ( comp @ X5 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
              & ( $true
                = ( X0 @ X5 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
          | ( $true
            = ( sP2 @ X0 ) )
          | ( $true
            = ( sP1 @ X0 ) )
          | ( $true
           != ( hoasinduction_p_and_p_prime @ X0 @ X1 ) ) )
      | ( $true != sP3 ) ) ),
    inference(nnf_transformation,[status(thm)],[f18]) ).

thf(f2113,plain,
    ( spl660_45
    | ~ spl660_46 ),
    inference(avatar_split_clause,[status(thm)],[f1355,f2111,f2108]) ).

thf(f1355,plain,
    ( ( hoasinduction_lem2v2 = $true )
    | ( $true != sP27 ) ),
    inference(cnf_transformation,[status(thm)],[f767]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.13/0.13  % Command  : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.17/0.34  % Computer : n031.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 09:05:53 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.17/0.34  Running /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.32/0.46  ---- Original DTF file ---
% 0.32/0.46  thf(spec,logic,$$dhol).
% 0.32/0.46  %------------------------------------------------------------------------------
% 0.32/0.46  % File     : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.32/0.46  % Domain   : Software Verification
% 0.32/0.46  % Problem  : Benchmark: ALG444^1, Active target: hoasinduction_lem2v2
% 0.32/0.46  % Version  : Especial.
% 0.32/0.46  % English  :
% 0.32/0.46  
% 0.32/0.46  % Refs     : [Kon26] Kondylidou (2026), Email to Geoff Sutcliffe
% 0.32/0.46  % Source   : [Kon26]
% 0.32/0.46  % Names    : ALG444^1__005__axclos.verify [Kon26]
% 0.32/0.46  
% 0.32/0.46  % Status   : Theorem
% 0.32/0.46  % Rating   : ? v9.3.0
% 0.32/0.46  % Syntax   : Number of formulae    :  132 (   1 unt; 130 typ;   0 def)
% 0.32/0.46  %            Number of atoms       :  255 ( 128 equ;   0 cnn)
% 0.32/0.46  %            Maximal formula atoms :  248 ( 127 avg)
% 0.32/0.46  %            Number of connectives : 2623 ( 333   ~; 306   |; 129   &;1751   @)
% 0.32/0.46  %                                         (  56 <=>;  48  =>;   0  <=;   0 <~>)
% 0.32/0.46  %            Maximal formula depth :  151 (  76 avg)
% 0.32/0.46  %            Number of types       :    5 (   4 usr)
% 0.32/0.46  %            Number of type conns  :  226 ( 226   >;   0   *;   0   +;   0  <<)
% 0.32/0.46  %            Number of symbols     :  127 ( 126 usr; 113 con; 0-4 aty)
% 0.32/0.46  %            Number of variables   :  564 (   8   ^; 554   !;   2   ?; 564   :)
% 0.32/0.46  % SPC      : TH0_THM_EQU_NAR
% 0.32/0.46  
% 0.32/0.46  % Comments :
% 0.32/0.46  %------------------------------------------------------------------------------
% 0.32/0.46  thf(term_type,type,
% 0.32/0.46      term: $tType ).
% 0.32/0.46  
% 0.32/0.46  thf(subst_type,type,
% 0.32/0.46      subst: $tType ).
% 0.32/0.46  
% 0.32/0.46  thf(one_decl,type,
% 0.32/0.46      one: term ).
% 0.32/0.46  
% 0.32/0.46  thf(ap_decl,type,
% 0.32/0.46      ap: term > term > term ).
% 0.32/0.46  
% 0.32/0.46  thf(lam_decl,type,
% 0.32/0.46      lam: term > term ).
% 0.32/0.46  
% 0.32/0.46  thf(sub_decl,type,
% 0.32/0.46      sub: term > subst > term ).
% 0.32/0.46  
% 0.32/0.46  thf(id_decl,type,
% 0.32/0.46      id: subst ).
% 0.32/0.46  
% 0.32/0.46  thf(sh_decl,type,
% 0.32/0.46      sh: subst ).
% 0.32/0.46  
% 0.32/0.46  thf(push_decl,type,
% 0.32/0.46      push: term > subst > subst ).
% 0.32/0.46  
% 0.32/0.46  thf(comp_decl,type,
% 0.32/0.46      comp: subst > subst > subst ).
% 0.32/0.46  
% 0.32/0.46  thf(var_decl,type,
% 0.32/0.46      var: term > $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1v2_decl,type,
% 0.32/0.46      pushprop_lem1v2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1_gthm_decl,type,
% 0.32/0.46      pushprop_lem1_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axmap_decl,type,
% 0.32/0.46      axmap: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem0_gthm_decl,type,
% 0.32/0.46      pushprop_lem0_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(shinj_decl,type,
% 0.32/0.46      shinj: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem1v2_decl,type,
% 0.32/0.46      hoasinduction_lem1v2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem1v2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasap_decl,type,
% 0.32/0.46      hoasap: subst > term > subst > term > term ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2lem_decl,type,
% 0.32/0.46      induction2lem: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2_f_decl,type,
% 0.32/0.46      hoasinduction_lem3v2_f: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axvarshift_decl,type,
% 0.32/0.46      axvarshift: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj2_decl,type,
% 0.32/0.46      hoasapinj2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapnotvar_gthm_decl,type,
% 0.32/0.46      hoasapnotvar_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj1_decl,type,
% 0.32/0.46      hoasapinj1: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(ulamvar1_decl,type,
% 0.32/0.46      ulamvar1: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2lem_lthm_decl,type,
% 0.32/0.46      induction2lem_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem3v2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(apnotvar_decl,type,
% 0.32/0.46      apnotvar: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lthm_orig_decl,type,
% 0.32/0.46      pushprop_lthm_orig: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3v2_f_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lthm_decl,type,
% 0.32/0.46      hoasinduction_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.32/0.46      hoasinduction_no_psi_cond_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslaminj_decl,type,
% 0.32/0.46      hoaslaminj: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3aaa_decl,type,
% 0.32/0.46      hoasinduction_lem3aaa: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2lem_gthm_decl,type,
% 0.32/0.46      induction2lem_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3aa_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3_decl,type,
% 0.32/0.46      hoasinduction_lem3: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem2_decl,type,
% 0.32/0.46      hoasinduction_lem2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(termmset_lthm_decl,type,
% 0.32/0.46      termmset_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem1_decl,type,
% 0.32/0.46      hoasinduction_lem1: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotap_lthm_decl,type,
% 0.32/0.46      hoaslamnotap_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1v2_lthm_decl,type,
% 0.32/0.46      pushprop_lem1v2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapnotvar_decl,type,
% 0.32/0.46      hoasapnotvar: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem0_decl,type,
% 0.32/0.46      hoasinduction_lem0: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_decl,type,
% 0.32/0.46      hoasinduction: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_gthm_decl,type,
% 0.32/0.46      hoasinduction_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axapp_decl,type,
% 0.32/0.46      axapp: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotvar_lthm_decl,type,
% 0.32/0.46      hoaslamnotvar_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem3v2_lthm_decl,type,
% 0.32/0.46      pushprop_lem3v2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3b_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(ulamvarind_decl,type,
% 0.32/0.46      ulamvarind: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction_decl,type,
% 0.32/0.46      induction: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3a_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(termmset_gthm_decl,type,
% 0.32/0.46      termmset_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3aa_decl,type,
% 0.32/0.46      hoasinduction_lem3aa: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1v2_gthm_decl,type,
% 0.32/0.46      pushprop_lem1v2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotap_gthm_decl,type,
% 0.32/0.46      hoaslamnotap_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotvar_gthm_decl,type,
% 0.32/0.46      hoaslamnotvar_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem3b_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem2v2_decl,type,
% 0.32/0.46      pushprop_lem2v2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem3a_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axclos_decl,type,
% 0.32/0.46      axclos: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axassoc_decl,type,
% 0.32/0.46      axassoc: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem2v2_decl,type,
% 0.32/0.46      hoasinduction_lem2v2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lthm_decl,type,
% 0.32/0.46      pushprop_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(apinj2_decl,type,
% 0.32/0.46      apinj2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(apinj1_decl,type,
% 0.32/0.46      apinj1: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj2_lthm_decl,type,
% 0.32/0.46      hoasapinj2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2a_decl,type,
% 0.32/0.46      hoasinduction_lem3v2a: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj1_lthm_decl,type,
% 0.32/0.46      hoasapinj1_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslaminj_lthm_decl,type,
% 0.32/0.46      hoaslaminj_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axvarcons_decl,type,
% 0.32/0.46      axvarcons: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslam_decl,type,
% 0.32/0.46      hoaslam: subst > ( subst > term > term ) > term ).
% 0.32/0.46  
% 0.32/0.46  thf(axscons_decl,type,
% 0.32/0.46      axscons: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem2v2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axidr_decl,type,
% 0.32/0.46      axidr: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1_decl,type,
% 0.32/0.46      pushprop_lem1: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(laminj_decl,type,
% 0.32/0.46      laminj: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem0_decl,type,
% 0.32/0.46      pushprop_lem0: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_gthm_decl,type,
% 0.32/0.46      pushprop_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axabs_decl,type,
% 0.32/0.46      axabs: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem3v2a_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem2_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj2_gthm_decl,type,
% 0.32/0.46      hoasapinj2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.32/0.46      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem1_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem1_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(lamnotap_decl,type,
% 0.32/0.46      lamnotap: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasapinj1_gthm_decl,type,
% 0.32/0.46      hoasapinj1_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotvar_decl,type,
% 0.32/0.46      hoaslamnotvar: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(axidl_decl,type,
% 0.32/0.46      axidl: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslaminj_gthm_decl,type,
% 0.32/0.46      hoaslaminj_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2_lthm_decl,type,
% 0.32/0.46      induction2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem0_lthm_decl,type,
% 0.32/0.46      hoasinduction_lem0_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(substmonoid_lthm_decl,type,
% 0.32/0.46      substmonoid_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_decl,type,
% 0.32/0.46      pushprop: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem3_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem2_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3b_decl,type,
% 0.32/0.46      hoasinduction_lem3b: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(substmonoid_decl,type,
% 0.32/0.46      substmonoid: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(lamnotvar_decl,type,
% 0.32/0.46      lamnotvar: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3a_decl,type,
% 0.32/0.46      hoasinduction_lem3a: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem1_gthm_decl,type,
% 0.32/0.46      hoasinduction_lem1_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_no_psi_cond_decl,type,
% 0.32/0.46      hoasinduction_no_psi_cond: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2_gthm_decl,type,
% 0.32/0.46      induction2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem2v2_lthm_decl,type,
% 0.32/0.46      pushprop_lem2v2_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasvar_decl,type,
% 0.32/0.46      hoasvar: subst > term > subst > $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoaslamnotap_decl,type,
% 0.32/0.46      hoaslamnotap: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(substmonoid_gthm_decl,type,
% 0.32/0.46      substmonoid_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(ulamvarsh_decl,type,
% 0.32/0.46      ulamvarsh: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(induction2_decl,type,
% 0.32/0.46      induction2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem3v2_decl,type,
% 0.32/0.46      pushprop_lem3v2: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem2v2_gthm_decl,type,
% 0.32/0.46      pushprop_lem2v2_gthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(pushprop_lem1_lthm_decl,type,
% 0.32/0.46      pushprop_lem1_lthm: $o ).
% 0.32/0.46  
% 0.32/0.46  thf(hoasinduction_lem3v2_decl,type,
% 0.32/0.47      hoasinduction_lem3v2: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(axshiftcons_decl,type,
% 0.32/0.47      axshiftcons: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(termmset_decl,type,
% 0.32/0.47      termmset: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_lem0_lthm_decl,type,
% 0.32/0.47      pushprop_lem0_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasapnotvar_lthm_decl,type,
% 0.32/0.47      hoasapnotvar_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.32/0.47      hoasinduction_lem3v2_lthm: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(pushprop_p_and_p_prime_decl,type,
% 0.32/0.47      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.32/0.47  
% 0.32/0.47  thf(axvarid_decl,type,
% 0.32/0.47      axvarid: $o ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lthm_3_decl,type,
% 0.32/0.47      hoasinduction_lthm_3: $o ).
% 0.32/0.47  
% 0.32/0.47  %----Types of the domains
% 0.32/0.47  thf(d_term_type,type,
% 0.32/0.47      d_term: $tType ).
% 0.32/0.47  
% 0.32/0.47  thf(d_subst_type,type,
% 0.32/0.47      d_subst: $tType ).
% 0.32/0.47  
% 0.32/0.47  %----Types of the promotion functions
% 0.32/0.47  thf(d2term_decl,type,
% 0.32/0.47      d2term: d_term > term ).
% 0.32/0.47  
% 0.32/0.47  thf(d2subst_decl,type,
% 0.32/0.47      d2subst: d_subst > subst ).
% 0.32/0.47  
% 0.32/0.47  %----Types of the domain elements
% 0.32/0.47  thf(d_one_decl,type,
% 0.32/0.47      d_one: d_term ).
% 0.32/0.47  
% 0.32/0.47  thf(d_id_decl,type,
% 0.32/0.47      d_id: d_subst ).
% 0.32/0.47  
% 0.32/0.47  thf(alg444_1,axiom,
% 0.32/0.47      ( ! [T: term] :
% 0.32/0.47        ? [DT: d_term] :
% 0.32/0.47          ( T
% 0.32/0.47          = ( d2term @ DT ) )
% 0.32/0.47      & ! [DT: d_term] : ( DT = d_one )
% 0.32/0.47      & ! [DT1: d_term,DT2: d_term] :
% 0.32/0.47          ( ( ( d2term @ DT1 )
% 0.32/0.47            = ( d2term @ DT2 ) )
% 0.32/0.47         => ( DT1 = DT2 ) )
% 0.32/0.47      & ! [S: subst] :
% 0.32/0.47        ? [DS: d_subst] :
% 0.32/0.47          ( S
% 0.32/0.47          = ( d2subst @ DS ) )
% 0.32/0.47      & ! [DS: d_subst] : ( DS = d_id )
% 0.32/0.47      & ! [DS1: d_subst,DS2: d_subst] :
% 0.32/0.47          ( ( ( d2subst @ DS1 )
% 0.32/0.47            = ( d2subst @ DS2 ) )
% 0.32/0.47         => ( DS1 = DS2 ) )
% 0.32/0.47      & ( one
% 0.32/0.47        = ( d2term @ d_one ) )
% 0.32/0.47      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.32/0.47        = ( d2term @ d_one ) )
% 0.32/0.47      & ( ( lam @ ( d2term @ d_one ) )
% 0.32/0.47        = ( d2term @ d_one ) )
% 0.32/0.47      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.47        = ( d2term @ d_one ) )
% 0.32/0.47      & ( id
% 0.32/0.47        = ( d2subst @ d_id ) )
% 0.32/0.47      & ( sh
% 0.32/0.47        = ( d2subst @ d_id ) )
% 0.32/0.47      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.47        = ( d2subst @ d_id ) )
% 0.32/0.47      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.32/0.47        = ( d2subst @ d_id ) )
% 0.32/0.47      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.32/0.47        = ( d2term @ d_one ) )
% 0.32/0.47      & ( hoaslam
% 0.32/0.47        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.32/0.47      & ( hoasinduction_p_and_p_prime
% 0.32/0.47        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.32/0.47            ! [X: term] :
% 0.32/0.47              ( ( Q @ X )
% 0.32/0.47              = ( P @ id @ X @ id ) ) ) )
% 0.32/0.47      & ( pushprop_p_and_p_prime
% 0.32/0.47        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.32/0.47            ! [X: term] :
% 0.32/0.47              ( ( Q @ X )
% 0.32/0.47              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.32/0.47      & ~ ( var @ ( d2term @ d_one ) )
% 0.32/0.47      & ( pushprop_lem1v2
% 0.32/0.47      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.32/0.47            ( ~ ( P @ A )
% 0.32/0.47            | ~ ! [X: term] :
% 0.32/0.47                  ( ( Q @ X )
% 0.32/0.47                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.32/0.47            | ( Q @ one ) ) )
% 0.32/0.47      & pushprop_lem1_gthm
% 0.32/0.47      & axmap
% 0.32/0.47      & pushprop_lem0_gthm
% 0.32/0.47      & ( shinj
% 0.32/0.47      <=> ! [A: term,B: term] :
% 0.32/0.47            ( ( ( sub @ A @ sh )
% 0.32/0.47             != ( sub @ B @ sh ) )
% 0.32/0.47            | ( A = B ) ) )
% 0.32/0.47      & hoasinduction_lem1v2
% 0.32/0.47      & hoasinduction_lem1v2_gthm
% 0.32/0.47      & ( induction2lem
% 0.32/0.47      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.47            ( ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ A )
% 0.32/0.47                  | ~ ( P @ B )
% 0.32/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47            | ~ ! [A: term] :
% 0.32/0.47                  ( ~ ! [B: term] :
% 0.32/0.47                        ( ~ ( P @ B )
% 0.32/0.47                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                  | ( P @ ( lam @ A ) ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( var @ B )
% 0.32/0.47                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.47            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.32/0.47      & ( hoasinduction_lem3v2_f
% 0.32/0.47      <=> ! [B: term] :
% 0.32/0.47            ~ ! [F: subst > term > term] :
% 0.32/0.47                ~ ! [A: term,M: subst] :
% 0.32/0.47                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.47                    = ( F @ M @ A ) ) )
% 0.32/0.47      & axvarshift
% 0.32/0.47      & ( hoasapinj2
% 0.32/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.47             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.47            | ( C = D ) ) )
% 0.32/0.47      & hoasapnotvar_gthm
% 0.32/0.47      & ( hoasapinj1
% 0.32/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.47             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.47            | ( A = B ) ) )
% 0.32/0.47      & ~ ulamvar1
% 0.32/0.47      & ( induction2lem_lthm
% 0.32/0.47      <=> ( ! [A: term,M: subst] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.47         => ( ! [A: term,M: subst] :
% 0.32/0.47                ( M
% 0.32/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.47           => ( ! [M: subst] :
% 0.32/0.47                  ( M
% 0.32/0.47                  = ( comp @ M @ id ) )
% 0.32/0.47             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.32/0.47                    ( ~ ! [A: term] :
% 0.32/0.47                          ( ~ ( var @ A )
% 0.32/0.47                          | ( P @ A ) )
% 0.32/0.47                    | ~ ! [A: term,B: term] :
% 0.32/0.47                          ( ~ ( P @ A )
% 0.32/0.47                          | ~ ( P @ B )
% 0.32/0.47                          | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                    | ~ ! [A: term] :
% 0.32/0.47                          ( ~ ( P @ A )
% 0.32/0.47                          | ( P @ ( lam @ A ) ) )
% 0.32/0.47                    | ( P @ Bound_variable_2140 ) )
% 0.32/0.47               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.47                    ( ~ ! [A: term,B: term] :
% 0.32/0.47                          ( ~ ( P @ A )
% 0.32/0.47                          | ~ ( P @ B )
% 0.32/0.47                          | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                    | ~ ! [A: term] :
% 0.32/0.47                          ( ~ ! [B: term] :
% 0.32/0.47                                ( ~ ( P @ B )
% 0.32/0.47                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                          | ( P @ ( lam @ A ) ) )
% 0.32/0.47                    | ~ ! [B: term] :
% 0.32/0.47                          ( ~ ( var @ B )
% 0.32/0.47                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.47                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.32/0.47      & hoasinduction_lem3v2_gthm
% 0.32/0.47      & apnotvar
% 0.32/0.47      & pushprop_lthm_orig
% 0.32/0.47      & ( hoasinduction_lem3v2_f_lthm
% 0.32/0.47      <=> ! [B: term] :
% 0.32/0.47            ~ ! [F: subst > term > term] :
% 0.32/0.47                ~ ! [A: term,M: subst] :
% 0.32/0.47                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.47                    = ( F @ M @ A ) ) )
% 0.32/0.47      & ( hoasinduction_lthm
% 0.32/0.47      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.47              ( ~ ! [A: term] :
% 0.32/0.47                    ( ~ ( var @ A )
% 0.32/0.47                    | ( P @ A ) )
% 0.32/0.47              | ~ ! [A: term,B: term] :
% 0.32/0.47                    ( ~ ( P @ A )
% 0.32/0.47                    | ~ ( P @ B )
% 0.32/0.47                    | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47              | ~ ! [A: term] :
% 0.32/0.47                    ( ~ ! [B: term] :
% 0.32/0.47                          ( ~ ( P @ B )
% 0.32/0.47                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                    | ( P @ ( lam @ A ) ) )
% 0.32/0.47              | ( P @ Bound_variable_2367 ) )
% 0.32/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.32/0.47                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47                | ~ ! [A: term,B: term] :
% 0.32/0.47                      ( ~ ( P @ id @ A @ id )
% 0.32/0.47                      | ~ ( P @ id @ B @ id )
% 0.32/0.47                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.32/0.47                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.32/0.47                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.32/0.47           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47                  | ~ ! [F: subst > term > term] :
% 0.32/0.47                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                        | ~ ! [A: term] :
% 0.32/0.47                              ( ~ ( P @ id @ A @ id )
% 0.32/0.47                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                  | ~ ! [B: term] :
% 0.32/0.47                        ( ~ ( P @ id @ B @ id )
% 0.32/0.47                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.32/0.47             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.47                        | ( P @ id @ A @ id ) )
% 0.32/0.47                  | ~ ! [A: term,B: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ~ ( P @ id @ B @ id )
% 0.32/0.47                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47                  | ~ ! [F: subst > term > term] :
% 0.32/0.47                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                        | ~ ! [A: term] :
% 0.32/0.47                              ( ~ ( P @ id @ A @ id )
% 0.32/0.47                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.32/0.47      & ( hoasinduction_no_psi_cond_lthm
% 0.32/0.47      <=> ( ! [P: subst > term > subst > $o] :
% 0.32/0.47              ~ ! [Q: term > $o] :
% 0.32/0.47                  ~ ! [X: term] :
% 0.32/0.47                      ( ( Q @ X )
% 0.32/0.47                      = ( P @ id @ X @ id ) )
% 0.32/0.47         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.47                ( ~ ! [A: term] :
% 0.32/0.47                      ( ~ ( var @ A )
% 0.32/0.47                      | ( P @ A ) )
% 0.32/0.47                | ~ ! [A: term,B: term] :
% 0.32/0.47                      ( ~ ( P @ A )
% 0.32/0.47                      | ~ ( P @ B )
% 0.32/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                | ~ ! [A: term] :
% 0.32/0.47                      ( ~ ! [B: term] :
% 0.32/0.47                            ( ~ ( P @ B )
% 0.32/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                      | ( P @ ( lam @ A ) ) )
% 0.32/0.47                | ( P @ Bound_variable_2367 ) )
% 0.32/0.47           => ( ! [A: term] :
% 0.32/0.47                  ( A
% 0.32/0.47                  = ( sub @ A @ id ) )
% 0.32/0.47             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.47                    ( ~ ! [F: subst > term > term] :
% 0.32/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                          | ~ ! [A: term] :
% 0.32/0.47                                ( ~ ( P @ id @ A @ id )
% 0.32/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                    | ~ ! [X: term] :
% 0.32/0.47                          ( ( Q @ X )
% 0.32/0.47                          = ( P @ id @ X @ id ) )
% 0.32/0.47                    | ~ ! [B: term] :
% 0.32/0.47                          ( ~ ( Q @ B )
% 0.32/0.47                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.47                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.32/0.47               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.32/0.47                    ( ~ ! [A: term,B: term] :
% 0.32/0.47                          ( ~ ( P @ id @ A @ id )
% 0.32/0.47                          | ~ ( P @ id @ B @ id )
% 0.32/0.47                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47                    | ~ ! [F: subst > term > term] :
% 0.32/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                          | ~ ! [A: term] :
% 0.32/0.47                                ( ~ ( P @ id @ A @ id )
% 0.32/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.32/0.47      & ( hoaslaminj
% 0.32/0.47      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.32/0.47                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47            | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.47             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.32/0.47            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.32/0.47              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.32/0.47      & ( hoasinduction_lem3aaa
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.32/0.47            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.32/0.47                  ( ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.32/0.47                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.32/0.47                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.32/0.47                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.32/0.47                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.32/0.47                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.47      & induction2lem_gthm
% 0.32/0.47      & ( hoasinduction_lem3aa_lthm
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.47            ( ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.47      & ( hoasinduction_lem3
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47            | ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.32/0.47      & ( hoasinduction_lem2
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47            | ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ A @ id )
% 0.32/0.47                  | ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.32/0.47            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.32/0.47            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.32/0.47      & ( termmset_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) ) ) )
% 0.32/0.47      & hoasinduction_lem1
% 0.32/0.47      & hoaslamnotap_lthm
% 0.32/0.47      & ( pushprop_lem1v2_lthm
% 0.32/0.47      <=> ( ! [A: term,M: subst] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.47         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.32/0.47              ( ~ ( P @ A )
% 0.32/0.47              | ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.32/0.47              | ( Q @ one ) ) ) )
% 0.32/0.47      & hoasapnotvar
% 0.32/0.47      & ( hoasinduction_lem0
% 0.32/0.47      <=> ! [P: subst > term > subst > $o] :
% 0.32/0.47            ~ ! [Q: term > $o] :
% 0.32/0.47                ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ id @ X @ id ) ) )
% 0.32/0.47      & ( hoasinduction
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47            | ~ ! [A: term] :
% 0.32/0.47                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.47                  | ( P @ id @ A @ id ) )
% 0.32/0.47            | ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ A @ id )
% 0.32/0.47                  | ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47            | ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.32/0.47      & hoasinduction_gthm
% 0.32/0.47      & axapp
% 0.32/0.47      & hoaslamnotvar_lthm
% 0.32/0.47      & pushprop_lem3v2_lthm
% 0.32/0.47      & ( hoasinduction_lem3b_lthm
% 0.32/0.47      <=> ! [B: term] :
% 0.32/0.47            ~ ! [F: subst > term > term] :
% 0.32/0.47                ( ( F @ sh @ one )
% 0.32/0.47               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.32/0.47      & ulamvarind
% 0.32/0.47      & ( induction
% 0.32/0.47      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.32/0.47            ( ~ ! [A: term] :
% 0.32/0.47                  ( ~ ( var @ A )
% 0.32/0.47                  | ( P @ A ) )
% 0.32/0.47            | ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ A )
% 0.32/0.47                  | ~ ( P @ B )
% 0.32/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47            | ~ ! [A: term] :
% 0.32/0.47                  ( ~ ( P @ A )
% 0.32/0.47                  | ( P @ ( lam @ A ) ) )
% 0.32/0.47            | ( P @ Bound_variable_2140 ) ) )
% 0.32/0.47      & ( hoasinduction_lem3a_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.47                ( ~ ! [F: subst > term > term] :
% 0.32/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                      | ~ ! [A: term] :
% 0.32/0.47                            ( ~ ( P @ id @ A @ id )
% 0.32/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( P @ id @ B @ id )
% 0.32/0.47                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.32/0.47           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.32/0.47                ( ~ ! [F: subst > term > term] :
% 0.32/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                      | ~ ! [A: term] :
% 0.32/0.47                            ( ~ ( P @ id @ A @ id )
% 0.32/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( P @ id @ B @ id )
% 0.32/0.47                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.32/0.47      & termmset_gthm
% 0.32/0.47      & ( hoasinduction_lem3aa
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.47            ( ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.32/0.47      & pushprop_lem1v2_gthm
% 0.32/0.47      & hoaslamnotap_gthm
% 0.32/0.47      & hoaslamnotvar_gthm
% 0.32/0.47      & hoasinduction_lem3b_gthm
% 0.32/0.47      & pushprop_lem2v2
% 0.32/0.47      & hoasinduction_lem3a_gthm
% 0.32/0.47      & axclos
% 0.32/0.47      & axassoc
% 0.32/0.47      & ( hoasinduction_lem2v2
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47            | ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ A @ id )
% 0.32/0.47                  | ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47            | ~ ! [X: term] :
% 0.32/0.47                  ( ( Q @ X )
% 0.32/0.47                  = ( P @ id @ X @ id ) )
% 0.32/0.47            | ~ ( Q @ Bound_variable_2820 )
% 0.32/0.47            | ~ ( Q @ Bound_variable_2822 )
% 0.32/0.47            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.32/0.47      & pushprop_lthm
% 0.32/0.47      & ( apinj2
% 0.32/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47            ( ( ( ap @ A @ C )
% 0.32/0.47             != ( ap @ B @ D ) )
% 0.32/0.47            | ( C = D ) ) )
% 0.32/0.47      & ( apinj1
% 0.32/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47            ( ( ( ap @ A @ C )
% 0.32/0.47             != ( ap @ B @ D ) )
% 0.32/0.47            | ( A = B ) ) )
% 0.32/0.47      & ( hoasapinj2_lthm
% 0.32/0.47      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47              ( ( ( ap @ A @ C )
% 0.32/0.47               != ( ap @ B @ D ) )
% 0.32/0.47              | ( C = D ) )
% 0.32/0.47         => ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.47               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.47              | ( C = D ) ) ) )
% 0.32/0.47      & ( hoasinduction_lem3v2a
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.47            ( ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [X: term] :
% 0.32/0.47                  ( ( Q @ X )
% 0.32/0.47                  = ( P @ id @ X @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( Q @ B )
% 0.32/0.47                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.47            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.32/0.47      & ( hoasapinj1_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ( ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47                ( ( ( ap @ A @ C )
% 0.32/0.47                 != ( ap @ B @ D ) )
% 0.32/0.47                | ( A = B ) )
% 0.32/0.47           => ! [A: term,B: term,C: term,D: term] :
% 0.32/0.47                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.32/0.47                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.32/0.47                | ( A = B ) ) ) ) )
% 0.32/0.47      & ( hoaslaminj_lthm
% 0.32/0.47      <=> ( ! [A: term,M: subst] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.47         => ( ! [A: term,M: subst] :
% 0.32/0.47                ( M
% 0.32/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.47           => ( ! [A: term,B: term] :
% 0.32/0.47                  ( ( ( lam @ A )
% 0.32/0.47                   != ( lam @ B ) )
% 0.32/0.47                  | ( A = B ) )
% 0.32/0.47             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.32/0.47                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.47                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.32/0.47                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.32/0.47                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.32/0.47      & ( axvarcons
% 0.32/0.47      <=> ! [A: term,M: subst] :
% 0.32/0.47            ( A
% 0.32/0.47            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.32/0.47      & ( axscons
% 0.32/0.47      <=> ! [M: subst] :
% 0.32/0.47            ( M
% 0.32/0.47            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.32/0.47      & hoasinduction_lem2v2_gthm
% 0.32/0.47      & ( axidr
% 0.32/0.47      <=> ! [M: subst] :
% 0.32/0.47            ( M
% 0.32/0.47            = ( comp @ M @ id ) ) )
% 0.32/0.47      & ( pushprop_lem1
% 0.32/0.47      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.32/0.47            ( ~ ( P @ A )
% 0.32/0.47            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.32/0.47      & ( laminj
% 0.32/0.47      <=> ! [A: term,B: term] :
% 0.32/0.47            ( ( ( lam @ A )
% 0.32/0.47             != ( lam @ B ) )
% 0.32/0.47            | ( A = B ) ) )
% 0.32/0.47      & ( hoasinduction_lem3_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.32/0.47                ( ~ ! [F: subst > term > term] :
% 0.32/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                      | ~ ! [A: term] :
% 0.32/0.47                            ( ~ ( P @ id @ A @ id )
% 0.32/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( P @ id @ B @ id )
% 0.32/0.47                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.32/0.47           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.32/0.47                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47                | ~ ! [F: subst > term > term] :
% 0.32/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                      | ~ ! [A: term] :
% 0.32/0.47                            ( ~ ( P @ id @ A @ id )
% 0.32/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( P @ id @ B @ id )
% 0.32/0.47                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.32/0.47      & ( pushprop_lem0
% 0.32/0.47      <=> ! [P: term > $o,A: term,M: subst] :
% 0.32/0.47            ~ ! [Q: term > $o] :
% 0.32/0.47                ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.32/0.47      & pushprop_gthm
% 0.32/0.47      & axabs
% 0.32/0.47      & ( hoasinduction_lem3v2a_lthm
% 0.32/0.47      <=> ( ! [B: term] :
% 0.32/0.47              ~ ! [F: subst > term > term] :
% 0.32/0.47                  ~ ! [A: term,M: subst] :
% 0.32/0.47                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.32/0.47                      = ( F @ M @ A ) )
% 0.32/0.47         => ( ! [A: term] :
% 0.32/0.47                ( A
% 0.32/0.47                = ( sub @ A @ id ) )
% 0.32/0.47           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.47                ( ~ ! [F: subst > term > term] :
% 0.32/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                      | ~ ! [A: term] :
% 0.32/0.47                            ( ~ ( P @ id @ A @ id )
% 0.32/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                | ~ ! [X: term] :
% 0.32/0.47                      ( ( Q @ X )
% 0.32/0.47                      = ( P @ id @ X @ id ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( Q @ B )
% 0.32/0.47                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.47                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.32/0.47      & hoasinduction_lem2_lthm
% 0.32/0.47      & hoasapinj2_gthm
% 0.32/0.47      & hoasinduction_lem1_lthm
% 0.32/0.47      & ~ lamnotap
% 0.32/0.47      & hoasapinj1_gthm
% 0.32/0.47      & hoaslamnotvar
% 0.32/0.47      & ( axidl
% 0.32/0.47      <=> ! [M: subst] :
% 0.32/0.47            ( M
% 0.32/0.47            = ( comp @ id @ M ) ) )
% 0.32/0.47      & hoaslaminj_gthm
% 0.32/0.47      & ( induction2_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.32/0.47                ( ~ ! [A: term,B: term] :
% 0.32/0.47                      ( ~ ( P @ A )
% 0.32/0.47                      | ~ ( P @ B )
% 0.32/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                | ~ ! [A: term] :
% 0.32/0.47                      ( ~ ! [B: term] :
% 0.32/0.47                            ( ~ ( P @ B )
% 0.32/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                      | ( P @ ( lam @ A ) ) )
% 0.32/0.47                | ~ ! [B: term] :
% 0.32/0.47                      ( ~ ( var @ B )
% 0.32/0.47                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.32/0.47                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.32/0.47           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.47                ( ~ ! [A: term] :
% 0.32/0.47                      ( ~ ( var @ A )
% 0.32/0.47                      | ( P @ A ) )
% 0.32/0.47                | ~ ! [A: term,B: term] :
% 0.32/0.47                      ( ~ ( P @ A )
% 0.32/0.47                      | ~ ( P @ B )
% 0.32/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                | ~ ! [A: term] :
% 0.32/0.47                      ( ~ ! [B: term] :
% 0.32/0.47                            ( ~ ( P @ B )
% 0.32/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                      | ( P @ ( lam @ A ) ) )
% 0.32/0.47                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.32/0.47      & ( hoasinduction_lem0_lthm
% 0.32/0.47      <=> ! [P: subst > term > subst > $o] :
% 0.32/0.47            ~ ! [Q: term > $o] :
% 0.32/0.47                ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ id @ X @ id ) ) )
% 0.32/0.47      & ( substmonoid_lthm
% 0.32/0.47      <=> ( ! [M: subst] :
% 0.32/0.47              ( M
% 0.32/0.47              = ( comp @ id @ M ) )
% 0.32/0.47         => ( ! [M: subst] :
% 0.32/0.47                ( M
% 0.32/0.47                = ( comp @ M @ id ) )
% 0.32/0.47           => ( ! [M: subst] :
% 0.32/0.47                  ( M
% 0.32/0.47                  = ( comp @ id @ M ) )
% 0.32/0.47              & ! [M: subst] :
% 0.32/0.47                  ( M
% 0.32/0.47                  = ( comp @ M @ id ) ) ) ) ) )
% 0.32/0.47      & pushprop
% 0.32/0.47      & hoasinduction_lem3_gthm
% 0.32/0.47      & hoasinduction_lem2_gthm
% 0.32/0.47      & ( hoasinduction_lem3b
% 0.32/0.47      <=> ! [B: term] :
% 0.32/0.47            ~ ! [F: subst > term > term] :
% 0.32/0.47                ( ( F @ sh @ one )
% 0.32/0.47               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.32/0.47      & ( substmonoid
% 0.32/0.47      <=> ( ! [M: subst] :
% 0.32/0.47              ( M
% 0.32/0.47              = ( comp @ id @ M ) )
% 0.32/0.47          & ! [M: subst] :
% 0.32/0.47              ( M
% 0.32/0.47              = ( comp @ M @ id ) ) ) )
% 0.32/0.47      & lamnotvar
% 0.32/0.47      & ( hoasinduction_lem3a
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.32/0.47            ( ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.32/0.47      & hoasinduction_lem1_gthm
% 0.32/0.47      & ( hoasinduction_no_psi_cond
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.32/0.47            ( ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ id @ A @ id )
% 0.32/0.47                  | ~ ( P @ id @ B @ id )
% 0.32/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47            | ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.32/0.47      & induction2_gthm
% 0.32/0.47      & pushprop_lem2v2_lthm
% 0.32/0.47      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.32/0.47      & ( hoaslamnotap
% 0.32/0.47      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47            | ( ( lam @ ( F @ sh @ one ) )
% 0.32/0.47             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.32/0.47      & substmonoid_gthm
% 0.32/0.47      & ulamvarsh
% 0.32/0.47      & ( induction2
% 0.32/0.47      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.47            ( ~ ! [A: term] :
% 0.32/0.47                  ( ~ ( var @ A )
% 0.32/0.47                  | ( P @ A ) )
% 0.32/0.47            | ~ ! [A: term,B: term] :
% 0.32/0.47                  ( ~ ( P @ A )
% 0.32/0.47                  | ~ ( P @ B )
% 0.32/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47            | ~ ! [A: term] :
% 0.32/0.47                  ( ~ ! [B: term] :
% 0.32/0.47                        ( ~ ( P @ B )
% 0.32/0.47                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                  | ( P @ ( lam @ A ) ) )
% 0.32/0.47            | ( P @ Bound_variable_2367 ) ) )
% 0.32/0.47      & pushprop_lem3v2
% 0.32/0.47      & pushprop_lem2v2_gthm
% 0.32/0.47      & ( pushprop_lem1_lthm
% 0.32/0.47      <=> ( ! [A: term,M: subst] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.32/0.47         => ( ! [A: term,M: subst] :
% 0.32/0.47                ( M
% 0.32/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.32/0.47           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.32/0.47                ( ~ ( P @ A )
% 0.32/0.47                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.32/0.47      & ( hoasinduction_lem3v2
% 0.32/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.32/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47            | ~ ! [F: subst > term > term] :
% 0.32/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                  | ~ ! [A: term] :
% 0.32/0.47                        ( ~ ( P @ id @ A @ id )
% 0.32/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47            | ~ ! [X: term] :
% 0.32/0.47                  ( ( Q @ X )
% 0.32/0.47                  = ( P @ id @ X @ id ) )
% 0.32/0.47            | ~ ! [B: term] :
% 0.32/0.47                  ( ~ ( Q @ B )
% 0.32/0.47                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.32/0.47            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.32/0.47      & ( axshiftcons
% 0.32/0.47      <=> ! [A: term,M: subst] :
% 0.32/0.47            ( M
% 0.32/0.47            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.32/0.47      & ( termmset
% 0.32/0.47      <=> ! [A: term] :
% 0.32/0.47            ( A
% 0.32/0.47            = ( sub @ A @ id ) ) )
% 0.32/0.47      & ( pushprop_lem0_lthm
% 0.32/0.47      <=> ! [P: term > $o,A: term,M: subst] :
% 0.32/0.47            ~ ! [Q: term > $o] :
% 0.32/0.47                ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.32/0.47      & hoasapnotvar_lthm
% 0.32/0.47      & ( hoasinduction_lem3v2_lthm
% 0.32/0.47      <=> ( ! [A: term] :
% 0.32/0.47              ( A
% 0.32/0.47              = ( sub @ A @ id ) )
% 0.32/0.47         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.32/0.47              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47              | ~ ! [F: subst > term > term] :
% 0.32/0.47                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                    | ~ ! [A: term] :
% 0.32/0.47                          ( ~ ( P @ id @ A @ id )
% 0.32/0.47                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47              | ~ ! [X: term] :
% 0.32/0.47                    ( ( Q @ X )
% 0.32/0.47                    = ( P @ id @ X @ id ) )
% 0.32/0.47              | ~ ! [B: term] :
% 0.32/0.47                    ( ~ ( Q @ B )
% 0.32/0.47                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.32/0.47              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.32/0.47      & ( axvarid
% 0.32/0.47      <=> ! [A: term] :
% 0.32/0.47            ( A
% 0.32/0.47            = ( sub @ A @ id ) ) )
% 0.32/0.47      & ( hoasinduction_lthm_3
% 0.32/0.47      <=> ( ! [P: subst > term > subst > $o] :
% 0.32/0.47              ~ ! [Q: term > $o] :
% 0.32/0.47                  ~ ! [X: term] :
% 0.32/0.47                      ( ( Q @ X )
% 0.32/0.47                      = ( P @ id @ X @ id ) )
% 0.32/0.47         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.32/0.47                ( ~ ! [A: term] :
% 0.32/0.47                      ( ~ ( var @ A )
% 0.32/0.47                      | ( P @ A ) )
% 0.32/0.47                | ~ ! [A: term,B: term] :
% 0.32/0.47                      ( ~ ( P @ A )
% 0.32/0.47                      | ~ ( P @ B )
% 0.32/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.32/0.47                | ~ ! [A: term] :
% 0.32/0.47                      ( ~ ! [B: term] :
% 0.32/0.47                            ( ~ ( P @ B )
% 0.32/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.32/0.47                      | ( P @ ( lam @ A ) ) )
% 0.32/0.47                | ( P @ Bound_variable_2367 ) )
% 0.32/0.47           => ( ! [A: term] :
% 0.32/0.47                  ( A
% 0.32/0.47                  = ( sub @ A @ id ) )
% 0.32/0.47             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.32/0.47                    ( ~ ! [F: subst > term > term] :
% 0.32/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                          | ~ ! [A: term] :
% 0.32/0.47                                ( ~ ( P @ id @ A @ id )
% 0.32/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                    | ~ ! [X: term] :
% 0.32/0.47                          ( ( Q @ X )
% 0.32/0.47                          = ( P @ id @ X @ id ) )
% 0.32/0.47                    | ~ ! [B: term] :
% 0.32/0.47                          ( ~ ( Q @ B )
% 0.32/0.47                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.32/0.47                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.32/0.47               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.32/0.47                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47                    | ~ ! [A: term] :
% 0.32/0.47                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.32/0.47                          | ( P @ id @ A @ id ) )
% 0.32/0.47                    | ~ ! [A: term,B: term] :
% 0.32/0.47                          ( ~ ( P @ id @ A @ id )
% 0.32/0.47                          | ~ ( P @ id @ B @ id )
% 0.32/0.47                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.32/0.47                    | ~ ! [F: subst > term > term] :
% 0.32/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.32/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.32/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.32/0.47                          | ~ ! [A: term] :
% 0.32/0.47                                ( ~ ( P @ id @ A @ id )
% 0.32/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.32/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.32/0.47                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.32/0.47  
% 0.32/0.47  thf(hoasinduction_lem2v2,conjecture,
% 0.32/0.47      ( hoasinduction_lem2v2
% 0.32/0.47      = ( ! [P: subst > term > subst > $o,Q: term > $o] :
% 0.32/0.47            ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                ( ( P @ M @ A @ ( comp @ K @ N ) )
% 0.32/0.47               => ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.32/0.47           => ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.32/0.47                  ( ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.32/0.47                 => ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.32/0.47             => ( ! [A: term,B: term] :
% 0.32/0.47                    ( ( P @ id @ A @ id )
% 0.32/0.47                   => ( ( P @ id @ B @ id )
% 0.32/0.47                     => ( P @ id @ ( hoasap @ id @ A @ id @ B ) @ id ) ) )
% 0.32/0.47               => ( ( hoasinduction_p_and_p_prime @ P @ Q )
% 0.32/0.47                 => ! [A: term,B: term] :
% 0.32/0.47                      ( ( Q @ A )
% 0.32/0.47                     => ( ( Q @ B )
% 0.32/0.47                       => ( Q @ ( ap @ A @ B ) ) ) ) ) ) ) ) ) ) ).
% 0.32/0.47  
% 0.32/0.47  %------------------------------------------------------------------------------
% 0.32/0.47  ------------------------
% 0.33/1.51  ---- Embedded in THF ---
% 0.33/1.51  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 0.33/1.51  %%% Generated on Tue May 05 09:05:55 EDT 2026
% 0.33/1.51  %%% using '$$dhol' embedding, version 1.3.0.
% 0.33/1.51  %%% Logic specification used:
% 0.33/1.51  %%% thf(spec, logic, $$dhol).
% 0.33/1.51  
% 0.33/1.51  % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.1J4YzlxBxw/DTF2DTF24745.p
% See solution above
% 0.33/1.51  ------------------------
% 0.33/1.53  ---- Cleaned THF ---
% 0.33/1.53  thf(term_type,type,
% 0.33/1.53      term: $tType ).
% 0.33/1.53  
% 0.33/1.53  thf(subst_type,type,
% 0.33/1.53      subst: $tType ).
% 0.33/1.53  
% 0.33/1.53  thf(one_decl,type,
% 0.33/1.53      one: term ).
% 0.33/1.53  
% 0.33/1.53  thf(ap_decl,type,
% 0.33/1.53      ap: term > term > term ).
% 0.33/1.53  
% 0.33/1.53  thf(lam_decl,type,
% 0.33/1.53      lam: term > term ).
% 0.33/1.53  
% 0.33/1.53  thf(sub_decl,type,
% 0.33/1.53      sub: term > subst > term ).
% 0.33/1.53  
% 0.33/1.53  thf(id_decl,type,
% 0.33/1.53      id: subst ).
% 0.33/1.53  
% 0.33/1.53  thf(sh_decl,type,
% 0.33/1.53      sh: subst ).
% 0.33/1.53  
% 0.33/1.53  thf(push_decl,type,
% 0.33/1.53      push: term > subst > subst ).
% 0.33/1.53  
% 0.33/1.53  thf(comp_decl,type,
% 0.33/1.53      comp: subst > subst > subst ).
% 0.33/1.53  
% 0.33/1.53  thf(var_decl,type,
% 0.33/1.53      var: term > $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1v2_decl,type,
% 0.33/1.53      pushprop_lem1v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1_gthm_decl,type,
% 0.33/1.53      pushprop_lem1_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axmap_decl,type,
% 0.33/1.53      axmap: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem0_gthm_decl,type,
% 0.33/1.53      pushprop_lem0_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(shinj_decl,type,
% 0.33/1.53      shinj: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem1v2_decl,type,
% 0.33/1.53      hoasinduction_lem1v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem1v2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasap_decl,type,
% 0.33/1.53      hoasap: subst > term > subst > term > term ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2lem_decl,type,
% 0.33/1.53      induction2lem: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2_f_decl,type,
% 0.33/1.53      hoasinduction_lem3v2_f: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axvarshift_decl,type,
% 0.33/1.53      axvarshift: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj2_decl,type,
% 0.33/1.53      hoasapinj2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapnotvar_gthm_decl,type,
% 0.33/1.53      hoasapnotvar_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj1_decl,type,
% 0.33/1.53      hoasapinj1: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(ulamvar1_decl,type,
% 0.33/1.53      ulamvar1: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2lem_lthm_decl,type,
% 0.33/1.53      induction2lem_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem3v2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(apnotvar_decl,type,
% 0.33/1.53      apnotvar: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lthm_orig_decl,type,
% 0.33/1.53      pushprop_lthm_orig: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3v2_f_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lthm_decl,type,
% 0.33/1.53      hoasinduction_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.33/1.53      hoasinduction_no_psi_cond_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslaminj_decl,type,
% 0.33/1.53      hoaslaminj: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3aaa_decl,type,
% 0.33/1.53      hoasinduction_lem3aaa: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2lem_gthm_decl,type,
% 0.33/1.53      induction2lem_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3aa_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3_decl,type,
% 0.33/1.53      hoasinduction_lem3: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2_decl,type,
% 0.33/1.53      hoasinduction_lem2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(termmset_lthm_decl,type,
% 0.33/1.53      termmset_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem1_decl,type,
% 0.33/1.53      hoasinduction_lem1: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotap_lthm_decl,type,
% 0.33/1.53      hoaslamnotap_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1v2_lthm_decl,type,
% 0.33/1.53      pushprop_lem1v2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapnotvar_decl,type,
% 0.33/1.53      hoasapnotvar: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem0_decl,type,
% 0.33/1.53      hoasinduction_lem0: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_decl,type,
% 0.33/1.53      hoasinduction: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_gthm_decl,type,
% 0.33/1.53      hoasinduction_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axapp_decl,type,
% 0.33/1.53      axapp: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotvar_lthm_decl,type,
% 0.33/1.53      hoaslamnotvar_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem3v2_lthm_decl,type,
% 0.33/1.53      pushprop_lem3v2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3b_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(ulamvarind_decl,type,
% 0.33/1.53      ulamvarind: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction_decl,type,
% 0.33/1.53      induction: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3a_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(termmset_gthm_decl,type,
% 0.33/1.53      termmset_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3aa_decl,type,
% 0.33/1.53      hoasinduction_lem3aa: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1v2_gthm_decl,type,
% 0.33/1.53      pushprop_lem1v2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotap_gthm_decl,type,
% 0.33/1.53      hoaslamnotap_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotvar_gthm_decl,type,
% 0.33/1.53      hoaslamnotvar_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem3b_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem2v2_decl,type,
% 0.33/1.53      pushprop_lem2v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem3a_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axclos_decl,type,
% 0.33/1.53      axclos: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axassoc_decl,type,
% 0.33/1.53      axassoc: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2v2_decl,type,
% 0.33/1.53      hoasinduction_lem2v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lthm_decl,type,
% 0.33/1.53      pushprop_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(apinj2_decl,type,
% 0.33/1.53      apinj2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(apinj1_decl,type,
% 0.33/1.53      apinj1: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj2_lthm_decl,type,
% 0.33/1.53      hoasapinj2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2a_decl,type,
% 0.33/1.53      hoasinduction_lem3v2a: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj1_lthm_decl,type,
% 0.33/1.53      hoasapinj1_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslaminj_lthm_decl,type,
% 0.33/1.53      hoaslaminj_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axvarcons_decl,type,
% 0.33/1.53      axvarcons: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslam_decl,type,
% 0.33/1.53      hoaslam: subst > ( subst > term > term ) > term ).
% 0.33/1.53  
% 0.33/1.53  thf(axscons_decl,type,
% 0.33/1.53      axscons: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem2v2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axidr_decl,type,
% 0.33/1.53      axidr: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1_decl,type,
% 0.33/1.53      pushprop_lem1: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(laminj_decl,type,
% 0.33/1.53      laminj: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem0_decl,type,
% 0.33/1.53      pushprop_lem0: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_gthm_decl,type,
% 0.33/1.53      pushprop_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axabs_decl,type,
% 0.33/1.53      axabs: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3v2a_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj2_gthm_decl,type,
% 0.33/1.53      hoasapinj2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.33/1.53      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem1_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem1_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(lamnotap_decl,type,
% 0.33/1.53      lamnotap: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapinj1_gthm_decl,type,
% 0.33/1.53      hoasapinj1_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotvar_decl,type,
% 0.33/1.53      hoaslamnotvar: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axidl_decl,type,
% 0.33/1.53      axidl: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslaminj_gthm_decl,type,
% 0.33/1.53      hoaslaminj_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2_lthm_decl,type,
% 0.33/1.53      induction2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem0_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem0_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(substmonoid_lthm_decl,type,
% 0.33/1.53      substmonoid_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_decl,type,
% 0.33/1.53      pushprop: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem3_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3b_decl,type,
% 0.33/1.53      hoasinduction_lem3b: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(substmonoid_decl,type,
% 0.33/1.53      substmonoid: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(lamnotvar_decl,type,
% 0.33/1.53      lamnotvar: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3a_decl,type,
% 0.33/1.53      hoasinduction_lem3a: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem1_gthm_decl,type,
% 0.33/1.53      hoasinduction_lem1_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_no_psi_cond_decl,type,
% 0.33/1.53      hoasinduction_no_psi_cond: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2_gthm_decl,type,
% 0.33/1.53      induction2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem2v2_lthm_decl,type,
% 0.33/1.53      pushprop_lem2v2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasvar_decl,type,
% 0.33/1.53      hoasvar: subst > term > subst > $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoaslamnotap_decl,type,
% 0.33/1.53      hoaslamnotap: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(substmonoid_gthm_decl,type,
% 0.33/1.53      substmonoid_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(ulamvarsh_decl,type,
% 0.33/1.53      ulamvarsh: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(induction2_decl,type,
% 0.33/1.53      induction2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem3v2_decl,type,
% 0.33/1.53      pushprop_lem3v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem2v2_gthm_decl,type,
% 0.33/1.53      pushprop_lem2v2_gthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem1_lthm_decl,type,
% 0.33/1.53      pushprop_lem1_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2_decl,type,
% 0.33/1.53      hoasinduction_lem3v2: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axshiftcons_decl,type,
% 0.33/1.53      axshiftcons: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(termmset_decl,type,
% 0.33/1.53      termmset: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_lem0_lthm_decl,type,
% 0.33/1.53      pushprop_lem0_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasapnotvar_lthm_decl,type,
% 0.33/1.53      hoasapnotvar_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.33/1.53      hoasinduction_lem3v2_lthm: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(pushprop_p_and_p_prime_decl,type,
% 0.33/1.53      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.33/1.53  
% 0.33/1.53  thf(axvarid_decl,type,
% 0.33/1.53      axvarid: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lthm_3_decl,type,
% 0.33/1.53      hoasinduction_lthm_3: $o ).
% 0.33/1.53  
% 0.33/1.53  thf(d_term_type,type,
% 0.33/1.53      d_term: $tType ).
% 0.33/1.53  
% 0.33/1.53  thf(d_subst_type,type,
% 0.33/1.53      d_subst: $tType ).
% 0.33/1.53  
% 0.33/1.53  thf(d2term_decl,type,
% 0.33/1.53      d2term: d_term > term ).
% 0.33/1.53  
% 0.33/1.53  thf(d2subst_decl,type,
% 0.33/1.53      d2subst: d_subst > subst ).
% 0.33/1.53  
% 0.33/1.53  thf(d_one_decl,type,
% 0.33/1.53      d_one: d_term ).
% 0.33/1.53  
% 0.33/1.53  thf(d_id_decl,type,
% 0.33/1.53      d_id: d_subst ).
% 0.33/1.53  
% 0.33/1.53  thf(alg444_1,axiom,
% 0.33/1.53      ( ! [T: term] :
% 0.33/1.53        ? [DT: d_term] :
% 0.33/1.53          ( T
% 0.33/1.53          = ( d2term @ DT ) )
% 0.33/1.53      & ! [DT: d_term] : ( DT = d_one )
% 0.33/1.53      & ! [DT1: d_term,DT2: d_term] :
% 0.33/1.53          ( ( ( d2term @ DT1 )
% 0.33/1.53            = ( d2term @ DT2 ) )
% 0.33/1.53         => ( DT1 = DT2 ) )
% 0.33/1.53      & ! [S: subst] :
% 0.33/1.53        ? [DS: d_subst] :
% 0.33/1.53          ( S
% 0.33/1.53          = ( d2subst @ DS ) )
% 0.33/1.53      & ! [DS: d_subst] : ( DS = d_id )
% 0.33/1.53      & ! [DS1: d_subst,DS2: d_subst] :
% 0.33/1.53          ( ( ( d2subst @ DS1 )
% 0.33/1.53            = ( d2subst @ DS2 ) )
% 0.33/1.53         => ( DS1 = DS2 ) )
% 0.33/1.53      & ( one
% 0.33/1.53        = ( d2term @ d_one ) )
% 0.33/1.53      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.33/1.53        = ( d2term @ d_one ) )
% 0.33/1.53      & ( ( lam @ ( d2term @ d_one ) )
% 0.33/1.53        = ( d2term @ d_one ) )
% 0.33/1.53      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.33/1.53        = ( d2term @ d_one ) )
% 0.33/1.53      & ( id
% 0.33/1.53        = ( d2subst @ d_id ) )
% 0.33/1.53      & ( sh
% 0.33/1.53        = ( d2subst @ d_id ) )
% 0.33/1.53      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.33/1.53        = ( d2subst @ d_id ) )
% 0.33/1.53      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.33/1.53        = ( d2subst @ d_id ) )
% 0.33/1.53      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.33/1.53        = ( d2term @ d_one ) )
% 0.33/1.53      & ( hoaslam
% 0.33/1.53        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.33/1.53      & ( hoasinduction_p_and_p_prime
% 0.33/1.53        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.33/1.53            ! [X: term] :
% 0.33/1.53              ( ( Q @ X )
% 0.33/1.53              = ( P @ id @ X @ id ) ) ) )
% 0.33/1.53      & ( pushprop_p_and_p_prime
% 0.33/1.53        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.33/1.53            ! [X: term] :
% 0.33/1.53              ( ( Q @ X )
% 0.33/1.53              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.33/1.53      & ~ ( var @ ( d2term @ d_one ) )
% 0.33/1.53      & ( pushprop_lem1v2
% 0.33/1.53      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.33/1.53            ( ~ ( P @ A )
% 0.33/1.53            | ~ ! [X: term] :
% 0.33/1.53                  ( ( Q @ X )
% 0.33/1.53                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.33/1.53            | ( Q @ one ) ) )
% 0.33/1.53      & pushprop_lem1_gthm
% 0.33/1.53      & axmap
% 0.33/1.53      & pushprop_lem0_gthm
% 0.33/1.53      & ( shinj
% 0.33/1.53      <=> ! [A: term,B: term] :
% 0.33/1.53            ( ( ( sub @ A @ sh )
% 0.33/1.53             != ( sub @ B @ sh ) )
% 0.33/1.53            | ( A = B ) ) )
% 0.33/1.53      & hoasinduction_lem1v2
% 0.33/1.53      & hoasinduction_lem1v2_gthm
% 0.33/1.53      & ( induction2lem
% 0.33/1.53      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.33/1.53            ( ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ A )
% 0.33/1.53                  | ~ ( P @ B )
% 0.33/1.53                  | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53            | ~ ! [A: term] :
% 0.33/1.53                  ( ~ ! [B: term] :
% 0.33/1.53                        ( ~ ( P @ B )
% 0.33/1.53                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                  | ( P @ ( lam @ A ) ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( var @ B )
% 0.33/1.53                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.33/1.53            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.33/1.53      & ( hoasinduction_lem3v2_f
% 0.33/1.53      <=> ! [B: term] :
% 0.33/1.53            ~ ! [F: subst > term > term] :
% 0.33/1.53                ~ ! [A: term,M: subst] :
% 0.33/1.53                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.33/1.53                    = ( F @ M @ A ) ) )
% 0.33/1.53      & axvarshift
% 0.33/1.53      & ( hoasapinj2
% 0.33/1.53      <=> ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.33/1.53             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.33/1.53            | ( C = D ) ) )
% 0.33/1.53      & hoasapnotvar_gthm
% 0.33/1.53      & ( hoasapinj1
% 0.33/1.53      <=> ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.33/1.53             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.33/1.53            | ( A = B ) ) )
% 0.33/1.53      & ~ ulamvar1
% 0.33/1.53      & ( induction2lem_lthm
% 0.33/1.53      <=> ( ! [A: term,M: subst] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.33/1.53         => ( ! [A: term,M: subst] :
% 0.33/1.53                ( M
% 0.33/1.53                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.33/1.53           => ( ! [M: subst] :
% 0.33/1.53                  ( M
% 0.33/1.53                  = ( comp @ M @ id ) )
% 0.33/1.53             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.33/1.53                    ( ~ ! [A: term] :
% 0.33/1.53                          ( ~ ( var @ A )
% 0.33/1.53                          | ( P @ A ) )
% 0.33/1.53                    | ~ ! [A: term,B: term] :
% 0.33/1.53                          ( ~ ( P @ A )
% 0.33/1.53                          | ~ ( P @ B )
% 0.33/1.53                          | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                    | ~ ! [A: term] :
% 0.33/1.53                          ( ~ ( P @ A )
% 0.33/1.53                          | ( P @ ( lam @ A ) ) )
% 0.33/1.53                    | ( P @ Bound_variable_2140 ) )
% 0.33/1.53               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.33/1.53                    ( ~ ! [A: term,B: term] :
% 0.33/1.53                          ( ~ ( P @ A )
% 0.33/1.53                          | ~ ( P @ B )
% 0.33/1.53                          | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                    | ~ ! [A: term] :
% 0.33/1.53                          ( ~ ! [B: term] :
% 0.33/1.53                                ( ~ ( P @ B )
% 0.33/1.53                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                          | ( P @ ( lam @ A ) ) )
% 0.33/1.53                    | ~ ! [B: term] :
% 0.33/1.53                          ( ~ ( var @ B )
% 0.33/1.53                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.33/1.53                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.33/1.53      & hoasinduction_lem3v2_gthm
% 0.33/1.53      & apnotvar
% 0.33/1.53      & pushprop_lthm_orig
% 0.33/1.53      & ( hoasinduction_lem3v2_f_lthm
% 0.33/1.53      <=> ! [B: term] :
% 0.33/1.53            ~ ! [F: subst > term > term] :
% 0.33/1.53                ~ ! [A: term,M: subst] :
% 0.33/1.53                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.33/1.53                    = ( F @ M @ A ) ) )
% 0.33/1.53      & ( hoasinduction_lthm
% 0.33/1.53      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.33/1.53              ( ~ ! [A: term] :
% 0.33/1.53                    ( ~ ( var @ A )
% 0.33/1.53                    | ( P @ A ) )
% 0.33/1.53              | ~ ! [A: term,B: term] :
% 0.33/1.53                    ( ~ ( P @ A )
% 0.33/1.53                    | ~ ( P @ B )
% 0.33/1.53                    | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53              | ~ ! [A: term] :
% 0.33/1.53                    ( ~ ! [B: term] :
% 0.33/1.53                          ( ~ ( P @ B )
% 0.33/1.53                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                    | ( P @ ( lam @ A ) ) )
% 0.33/1.53              | ( P @ Bound_variable_2367 ) )
% 0.33/1.53         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.33/1.53                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53                | ~ ! [A: term,B: term] :
% 0.33/1.53                      ( ~ ( P @ id @ A @ id )
% 0.33/1.53                      | ~ ( P @ id @ B @ id )
% 0.33/1.53                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.33/1.53                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.33/1.53                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.33/1.53           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53                  | ~ ! [F: subst > term > term] :
% 0.33/1.53                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                        | ~ ! [A: term] :
% 0.33/1.53                              ( ~ ( P @ id @ A @ id )
% 0.33/1.53                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                  | ~ ! [B: term] :
% 0.33/1.53                        ( ~ ( P @ id @ B @ id )
% 0.33/1.53                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.33/1.53             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.33/1.53                        | ( P @ id @ A @ id ) )
% 0.33/1.53                  | ~ ! [A: term,B: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ~ ( P @ id @ B @ id )
% 0.33/1.53                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53                  | ~ ! [F: subst > term > term] :
% 0.33/1.53                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                        | ~ ! [A: term] :
% 0.33/1.53                              ( ~ ( P @ id @ A @ id )
% 0.33/1.53                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.33/1.53      & ( hoasinduction_no_psi_cond_lthm
% 0.33/1.53      <=> ( ! [P: subst > term > subst > $o] :
% 0.33/1.53              ~ ! [Q: term > $o] :
% 0.33/1.53                  ~ ! [X: term] :
% 0.33/1.53                      ( ( Q @ X )
% 0.33/1.53                      = ( P @ id @ X @ id ) )
% 0.33/1.53         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.33/1.53                ( ~ ! [A: term] :
% 0.33/1.53                      ( ~ ( var @ A )
% 0.33/1.53                      | ( P @ A ) )
% 0.33/1.53                | ~ ! [A: term,B: term] :
% 0.33/1.53                      ( ~ ( P @ A )
% 0.33/1.53                      | ~ ( P @ B )
% 0.33/1.53                      | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                | ~ ! [A: term] :
% 0.33/1.53                      ( ~ ! [B: term] :
% 0.33/1.53                            ( ~ ( P @ B )
% 0.33/1.53                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                      | ( P @ ( lam @ A ) ) )
% 0.33/1.53                | ( P @ Bound_variable_2367 ) )
% 0.33/1.53           => ( ! [A: term] :
% 0.33/1.53                  ( A
% 0.33/1.53                  = ( sub @ A @ id ) )
% 0.33/1.53             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.33/1.53                    ( ~ ! [F: subst > term > term] :
% 0.33/1.53                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                          | ~ ! [A: term] :
% 0.33/1.53                                ( ~ ( P @ id @ A @ id )
% 0.33/1.53                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                    | ~ ! [X: term] :
% 0.33/1.53                          ( ( Q @ X )
% 0.33/1.53                          = ( P @ id @ X @ id ) )
% 0.33/1.53                    | ~ ! [B: term] :
% 0.33/1.53                          ( ~ ( Q @ B )
% 0.33/1.53                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.33/1.53                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.33/1.53               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.33/1.53                    ( ~ ! [A: term,B: term] :
% 0.33/1.53                          ( ~ ( P @ id @ A @ id )
% 0.33/1.53                          | ~ ( P @ id @ B @ id )
% 0.33/1.53                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53                    | ~ ! [F: subst > term > term] :
% 0.33/1.53                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                          | ~ ! [A: term] :
% 0.33/1.53                                ( ~ ( P @ id @ A @ id )
% 0.33/1.53                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.33/1.53      & ( hoaslaminj
% 0.33/1.53      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.33/1.53                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53            | ( ( lam @ ( F @ sh @ one ) )
% 0.33/1.53             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.33/1.53            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.33/1.53              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.33/1.53      & ( hoasinduction_lem3aaa
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.33/1.53            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.33/1.53                  ( ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.33/1.53                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.33/1.53                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.33/1.53                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.33/1.53                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.33/1.53                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.33/1.53      & induction2lem_gthm
% 0.33/1.53      & ( hoasinduction_lem3aa_lthm
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.33/1.53            ( ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.33/1.53      & ( hoasinduction_lem3
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53            | ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.33/1.53      & ( hoasinduction_lem2
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53            | ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ A @ id )
% 0.33/1.53                  | ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.33/1.53            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.33/1.53            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.33/1.53      & ( termmset_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) ) ) )
% 0.33/1.53      & hoasinduction_lem1
% 0.33/1.53      & hoaslamnotap_lthm
% 0.33/1.53      & ( pushprop_lem1v2_lthm
% 0.33/1.53      <=> ( ! [A: term,M: subst] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.33/1.53         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.33/1.53              ( ~ ( P @ A )
% 0.33/1.53              | ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.33/1.53              | ( Q @ one ) ) ) )
% 0.33/1.53      & hoasapnotvar
% 0.33/1.53      & ( hoasinduction_lem0
% 0.33/1.53      <=> ! [P: subst > term > subst > $o] :
% 0.33/1.53            ~ ! [Q: term > $o] :
% 0.33/1.53                ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ id @ X @ id ) ) )
% 0.33/1.53      & ( hoasinduction
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53            | ~ ! [A: term] :
% 0.33/1.53                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.33/1.53                  | ( P @ id @ A @ id ) )
% 0.33/1.53            | ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ A @ id )
% 0.33/1.53                  | ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53            | ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.33/1.53      & hoasinduction_gthm
% 0.33/1.53      & axapp
% 0.33/1.53      & hoaslamnotvar_lthm
% 0.33/1.53      & pushprop_lem3v2_lthm
% 0.33/1.53      & ( hoasinduction_lem3b_lthm
% 0.33/1.53      <=> ! [B: term] :
% 0.33/1.53            ~ ! [F: subst > term > term] :
% 0.33/1.53                ( ( F @ sh @ one )
% 0.33/1.53               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.33/1.53      & ulamvarind
% 0.33/1.53      & ( induction
% 0.33/1.53      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.33/1.53            ( ~ ! [A: term] :
% 0.33/1.53                  ( ~ ( var @ A )
% 0.33/1.53                  | ( P @ A ) )
% 0.33/1.53            | ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ A )
% 0.33/1.53                  | ~ ( P @ B )
% 0.33/1.53                  | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53            | ~ ! [A: term] :
% 0.33/1.53                  ( ~ ( P @ A )
% 0.33/1.53                  | ( P @ ( lam @ A ) ) )
% 0.33/1.53            | ( P @ Bound_variable_2140 ) ) )
% 0.33/1.53      & ( hoasinduction_lem3a_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.33/1.53                ( ~ ! [F: subst > term > term] :
% 0.33/1.53                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                      | ~ ! [A: term] :
% 0.33/1.53                            ( ~ ( P @ id @ A @ id )
% 0.33/1.53                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( P @ id @ B @ id )
% 0.33/1.53                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.33/1.53           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.33/1.53                ( ~ ! [F: subst > term > term] :
% 0.33/1.53                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                      | ~ ! [A: term] :
% 0.33/1.53                            ( ~ ( P @ id @ A @ id )
% 0.33/1.53                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( P @ id @ B @ id )
% 0.33/1.53                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.33/1.53      & termmset_gthm
% 0.33/1.53      & ( hoasinduction_lem3aa
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.33/1.53            ( ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.33/1.53      & pushprop_lem1v2_gthm
% 0.33/1.53      & hoaslamnotap_gthm
% 0.33/1.53      & hoaslamnotvar_gthm
% 0.33/1.53      & hoasinduction_lem3b_gthm
% 0.33/1.53      & pushprop_lem2v2
% 0.33/1.53      & hoasinduction_lem3a_gthm
% 0.33/1.53      & axclos
% 0.33/1.53      & axassoc
% 0.33/1.53      & ( hoasinduction_lem2v2
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53            | ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ A @ id )
% 0.33/1.53                  | ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53            | ~ ! [X: term] :
% 0.33/1.53                  ( ( Q @ X )
% 0.33/1.53                  = ( P @ id @ X @ id ) )
% 0.33/1.53            | ~ ( Q @ Bound_variable_2820 )
% 0.33/1.53            | ~ ( Q @ Bound_variable_2822 )
% 0.33/1.53            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.33/1.53      & pushprop_lthm
% 0.33/1.53      & ( apinj2
% 0.33/1.53      <=> ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53            ( ( ( ap @ A @ C )
% 0.33/1.53             != ( ap @ B @ D ) )
% 0.33/1.53            | ( C = D ) ) )
% 0.33/1.53      & ( apinj1
% 0.33/1.53      <=> ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53            ( ( ( ap @ A @ C )
% 0.33/1.53             != ( ap @ B @ D ) )
% 0.33/1.53            | ( A = B ) ) )
% 0.33/1.53      & ( hoasapinj2_lthm
% 0.33/1.53      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53              ( ( ( ap @ A @ C )
% 0.33/1.53               != ( ap @ B @ D ) )
% 0.33/1.53              | ( C = D ) )
% 0.33/1.53         => ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.33/1.53               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.33/1.53              | ( C = D ) ) ) )
% 0.33/1.53      & ( hoasinduction_lem3v2a
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.33/1.53            ( ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [X: term] :
% 0.33/1.53                  ( ( Q @ X )
% 0.33/1.53                  = ( P @ id @ X @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( Q @ B )
% 0.33/1.53                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.33/1.53            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.33/1.53      & ( hoasapinj1_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ( ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53                ( ( ( ap @ A @ C )
% 0.33/1.53                 != ( ap @ B @ D ) )
% 0.33/1.53                | ( A = B ) )
% 0.33/1.53           => ! [A: term,B: term,C: term,D: term] :
% 0.33/1.53                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.33/1.53                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.33/1.53                | ( A = B ) ) ) ) )
% 0.33/1.53      & ( hoaslaminj_lthm
% 0.33/1.53      <=> ( ! [A: term,M: subst] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.33/1.53         => ( ! [A: term,M: subst] :
% 0.33/1.53                ( M
% 0.33/1.53                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.33/1.53           => ( ! [A: term,B: term] :
% 0.33/1.53                  ( ( ( lam @ A )
% 0.33/1.53                   != ( lam @ B ) )
% 0.33/1.53                  | ( A = B ) )
% 0.33/1.53             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.33/1.53                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ( ( lam @ ( F @ sh @ one ) )
% 0.33/1.53                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.33/1.53                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.33/1.53                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.33/1.53      & ( axvarcons
% 0.33/1.53      <=> ! [A: term,M: subst] :
% 0.33/1.53            ( A
% 0.33/1.53            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.33/1.53      & ( axscons
% 0.33/1.53      <=> ! [M: subst] :
% 0.33/1.53            ( M
% 0.33/1.53            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.33/1.53      & hoasinduction_lem2v2_gthm
% 0.33/1.53      & ( axidr
% 0.33/1.53      <=> ! [M: subst] :
% 0.33/1.53            ( M
% 0.33/1.53            = ( comp @ M @ id ) ) )
% 0.33/1.53      & ( pushprop_lem1
% 0.33/1.53      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.33/1.53            ( ~ ( P @ A )
% 0.33/1.53            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.33/1.53      & ( laminj
% 0.33/1.53      <=> ! [A: term,B: term] :
% 0.33/1.53            ( ( ( lam @ A )
% 0.33/1.53             != ( lam @ B ) )
% 0.33/1.53            | ( A = B ) ) )
% 0.33/1.53      & ( hoasinduction_lem3_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.33/1.53                ( ~ ! [F: subst > term > term] :
% 0.33/1.53                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                      | ~ ! [A: term] :
% 0.33/1.53                            ( ~ ( P @ id @ A @ id )
% 0.33/1.53                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( P @ id @ B @ id )
% 0.33/1.53                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.33/1.53           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.33/1.53                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53                | ~ ! [F: subst > term > term] :
% 0.33/1.53                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                      | ~ ! [A: term] :
% 0.33/1.53                            ( ~ ( P @ id @ A @ id )
% 0.33/1.53                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( P @ id @ B @ id )
% 0.33/1.53                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.33/1.53      & ( pushprop_lem0
% 0.33/1.53      <=> ! [P: term > $o,A: term,M: subst] :
% 0.33/1.53            ~ ! [Q: term > $o] :
% 0.33/1.53                ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.33/1.53      & pushprop_gthm
% 0.33/1.53      & axabs
% 0.33/1.53      & ( hoasinduction_lem3v2a_lthm
% 0.33/1.53      <=> ( ! [B: term] :
% 0.33/1.53              ~ ! [F: subst > term > term] :
% 0.33/1.53                  ~ ! [A: term,M: subst] :
% 0.33/1.53                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.33/1.53                      = ( F @ M @ A ) )
% 0.33/1.53         => ( ! [A: term] :
% 0.33/1.53                ( A
% 0.33/1.53                = ( sub @ A @ id ) )
% 0.33/1.53           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.33/1.53                ( ~ ! [F: subst > term > term] :
% 0.33/1.53                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                      | ~ ! [A: term] :
% 0.33/1.53                            ( ~ ( P @ id @ A @ id )
% 0.33/1.53                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                | ~ ! [X: term] :
% 0.33/1.53                      ( ( Q @ X )
% 0.33/1.53                      = ( P @ id @ X @ id ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( Q @ B )
% 0.33/1.53                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.33/1.53                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.33/1.53      & hoasinduction_lem2_lthm
% 0.33/1.53      & hoasapinj2_gthm
% 0.33/1.53      & hoasinduction_lem1_lthm
% 0.33/1.53      & ~ lamnotap
% 0.33/1.53      & hoasapinj1_gthm
% 0.33/1.53      & hoaslamnotvar
% 0.33/1.53      & ( axidl
% 0.33/1.53      <=> ! [M: subst] :
% 0.33/1.53            ( M
% 0.33/1.53            = ( comp @ id @ M ) ) )
% 0.33/1.53      & hoaslaminj_gthm
% 0.33/1.53      & ( induction2_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.33/1.53                ( ~ ! [A: term,B: term] :
% 0.33/1.53                      ( ~ ( P @ A )
% 0.33/1.53                      | ~ ( P @ B )
% 0.33/1.53                      | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                | ~ ! [A: term] :
% 0.33/1.53                      ( ~ ! [B: term] :
% 0.33/1.53                            ( ~ ( P @ B )
% 0.33/1.53                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                      | ( P @ ( lam @ A ) ) )
% 0.33/1.53                | ~ ! [B: term] :
% 0.33/1.53                      ( ~ ( var @ B )
% 0.33/1.53                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.33/1.53                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.33/1.53           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.33/1.53                ( ~ ! [A: term] :
% 0.33/1.53                      ( ~ ( var @ A )
% 0.33/1.53                      | ( P @ A ) )
% 0.33/1.53                | ~ ! [A: term,B: term] :
% 0.33/1.53                      ( ~ ( P @ A )
% 0.33/1.53                      | ~ ( P @ B )
% 0.33/1.53                      | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                | ~ ! [A: term] :
% 0.33/1.53                      ( ~ ! [B: term] :
% 0.33/1.53                            ( ~ ( P @ B )
% 0.33/1.53                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                      | ( P @ ( lam @ A ) ) )
% 0.33/1.53                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.33/1.53      & ( hoasinduction_lem0_lthm
% 0.33/1.53      <=> ! [P: subst > term > subst > $o] :
% 0.33/1.53            ~ ! [Q: term > $o] :
% 0.33/1.53                ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ id @ X @ id ) ) )
% 0.33/1.53      & ( substmonoid_lthm
% 0.33/1.53      <=> ( ! [M: subst] :
% 0.33/1.53              ( M
% 0.33/1.53              = ( comp @ id @ M ) )
% 0.33/1.53         => ( ! [M: subst] :
% 0.33/1.53                ( M
% 0.33/1.53                = ( comp @ M @ id ) )
% 0.33/1.53           => ( ! [M: subst] :
% 0.33/1.53                  ( M
% 0.33/1.53                  = ( comp @ id @ M ) )
% 0.33/1.53              & ! [M: subst] :
% 0.33/1.53                  ( M
% 0.33/1.53                  = ( comp @ M @ id ) ) ) ) ) )
% 0.33/1.53      & pushprop
% 0.33/1.53      & hoasinduction_lem3_gthm
% 0.33/1.53      & hoasinduction_lem2_gthm
% 0.33/1.53      & ( hoasinduction_lem3b
% 0.33/1.53      <=> ! [B: term] :
% 0.33/1.53            ~ ! [F: subst > term > term] :
% 0.33/1.53                ( ( F @ sh @ one )
% 0.33/1.53               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.33/1.53      & ( substmonoid
% 0.33/1.53      <=> ( ! [M: subst] :
% 0.33/1.53              ( M
% 0.33/1.53              = ( comp @ id @ M ) )
% 0.33/1.53          & ! [M: subst] :
% 0.33/1.53              ( M
% 0.33/1.53              = ( comp @ M @ id ) ) ) )
% 0.33/1.53      & lamnotvar
% 0.33/1.53      & ( hoasinduction_lem3a
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.33/1.53            ( ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.33/1.53      & hoasinduction_lem1_gthm
% 0.33/1.53      & ( hoasinduction_no_psi_cond
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.33/1.53            ( ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ id @ A @ id )
% 0.33/1.53                  | ~ ( P @ id @ B @ id )
% 0.33/1.53                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53            | ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.33/1.53      & induction2_gthm
% 0.33/1.53      & pushprop_lem2v2_lthm
% 0.33/1.53      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.33/1.53      & ( hoaslamnotap
% 0.33/1.53      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53            | ( ( lam @ ( F @ sh @ one ) )
% 0.33/1.53             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.33/1.53      & substmonoid_gthm
% 0.33/1.53      & ulamvarsh
% 0.33/1.53      & ( induction2
% 0.33/1.53      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.33/1.53            ( ~ ! [A: term] :
% 0.33/1.53                  ( ~ ( var @ A )
% 0.33/1.53                  | ( P @ A ) )
% 0.33/1.53            | ~ ! [A: term,B: term] :
% 0.33/1.53                  ( ~ ( P @ A )
% 0.33/1.53                  | ~ ( P @ B )
% 0.33/1.53                  | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53            | ~ ! [A: term] :
% 0.33/1.53                  ( ~ ! [B: term] :
% 0.33/1.53                        ( ~ ( P @ B )
% 0.33/1.53                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                  | ( P @ ( lam @ A ) ) )
% 0.33/1.53            | ( P @ Bound_variable_2367 ) ) )
% 0.33/1.53      & pushprop_lem3v2
% 0.33/1.53      & pushprop_lem2v2_gthm
% 0.33/1.53      & ( pushprop_lem1_lthm
% 0.33/1.53      <=> ( ! [A: term,M: subst] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.33/1.53         => ( ! [A: term,M: subst] :
% 0.33/1.53                ( M
% 0.33/1.53                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.33/1.53           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.33/1.53                ( ~ ( P @ A )
% 0.33/1.53                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.33/1.53      & ( hoasinduction_lem3v2
% 0.33/1.53      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.33/1.53            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53            | ~ ! [F: subst > term > term] :
% 0.33/1.53                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                  | ~ ! [A: term] :
% 0.33/1.53                        ( ~ ( P @ id @ A @ id )
% 0.33/1.53                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53            | ~ ! [X: term] :
% 0.33/1.53                  ( ( Q @ X )
% 0.33/1.53                  = ( P @ id @ X @ id ) )
% 0.33/1.53            | ~ ! [B: term] :
% 0.33/1.53                  ( ~ ( Q @ B )
% 0.33/1.53                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.33/1.53            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.33/1.53      & ( axshiftcons
% 0.33/1.53      <=> ! [A: term,M: subst] :
% 0.33/1.53            ( M
% 0.33/1.53            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.33/1.53      & ( termmset
% 0.33/1.53      <=> ! [A: term] :
% 0.33/1.53            ( A
% 0.33/1.53            = ( sub @ A @ id ) ) )
% 0.33/1.53      & ( pushprop_lem0_lthm
% 0.33/1.53      <=> ! [P: term > $o,A: term,M: subst] :
% 0.33/1.53            ~ ! [Q: term > $o] :
% 0.33/1.53                ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.33/1.53      & hoasapnotvar_lthm
% 0.33/1.53      & ( hoasinduction_lem3v2_lthm
% 0.33/1.53      <=> ( ! [A: term] :
% 0.33/1.53              ( A
% 0.33/1.53              = ( sub @ A @ id ) )
% 0.33/1.53         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.33/1.53              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53              | ~ ! [F: subst > term > term] :
% 0.33/1.53                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                    | ~ ! [A: term] :
% 0.33/1.53                          ( ~ ( P @ id @ A @ id )
% 0.33/1.53                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53              | ~ ! [X: term] :
% 0.33/1.53                    ( ( Q @ X )
% 0.33/1.53                    = ( P @ id @ X @ id ) )
% 0.33/1.53              | ~ ! [B: term] :
% 0.33/1.53                    ( ~ ( Q @ B )
% 0.33/1.53                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.33/1.53              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.33/1.53      & ( axvarid
% 0.33/1.53      <=> ! [A: term] :
% 0.33/1.53            ( A
% 0.33/1.53            = ( sub @ A @ id ) ) )
% 0.33/1.53      & ( hoasinduction_lthm_3
% 0.33/1.53      <=> ( ! [P: subst > term > subst > $o] :
% 0.33/1.53              ~ ! [Q: term > $o] :
% 0.33/1.53                  ~ ! [X: term] :
% 0.33/1.53                      ( ( Q @ X )
% 0.33/1.53                      = ( P @ id @ X @ id ) )
% 0.33/1.53         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.33/1.53                ( ~ ! [A: term] :
% 0.33/1.53                      ( ~ ( var @ A )
% 0.33/1.53                      | ( P @ A ) )
% 0.33/1.53                | ~ ! [A: term,B: term] :
% 0.33/1.53                      ( ~ ( P @ A )
% 0.33/1.53                      | ~ ( P @ B )
% 0.33/1.53                      | ( P @ ( ap @ A @ B ) ) )
% 0.33/1.53                | ~ ! [A: term] :
% 0.33/1.53                      ( ~ ! [B: term] :
% 0.33/1.53                            ( ~ ( P @ B )
% 0.33/1.53                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.33/1.53                      | ( P @ ( lam @ A ) ) )
% 0.33/1.53                | ( P @ Bound_variable_2367 ) )
% 0.33/1.53           => ( ! [A: term] :
% 0.33/1.53                  ( A
% 0.33/1.53                  = ( sub @ A @ id ) )
% 0.33/1.53             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.33/1.53                    ( ~ ! [F: subst > term > term] :
% 0.33/1.53                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                          | ~ ! [A: term] :
% 0.33/1.53                                ( ~ ( P @ id @ A @ id )
% 0.33/1.53                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                    | ~ ! [X: term] :
% 0.33/1.53                          ( ( Q @ X )
% 0.33/1.53                          = ( P @ id @ X @ id ) )
% 0.33/1.53                    | ~ ! [B: term] :
% 0.33/1.53                          ( ~ ( Q @ B )
% 0.33/1.53                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.33/1.53                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.33/1.53               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.33/1.53                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53                    | ~ ! [A: term] :
% 0.33/1.53                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.33/1.53                          | ( P @ id @ A @ id ) )
% 0.33/1.53                    | ~ ! [A: term,B: term] :
% 0.33/1.53                          ( ~ ( P @ id @ A @ id )
% 0.33/1.53                          | ~ ( P @ id @ B @ id )
% 0.33/1.53                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.33/1.53                    | ~ ! [F: subst > term > term] :
% 0.33/1.53                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.33/1.53                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.33/1.53                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.33/1.53                          | ~ ! [A: term] :
% 0.33/1.53                                ( ~ ( P @ id @ A @ id )
% 0.33/1.53                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.33/1.53                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.33/1.53                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.33/1.53  
% 0.33/1.53  thf(hoasinduction_lem2v2,conjecture,
% 0.33/1.53      ( hoasinduction_lem2v2
% 0.33/1.53      = ( ! [P: subst > term > subst > $o,Q: term > $o] :
% 0.33/1.53            ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                ( ( P @ M @ A @ ( comp @ K @ N ) )
% 0.33/1.53               => ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.33/1.53           => ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.33/1.53                  ( ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.33/1.53                 => ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.33/1.53             => ( ! [A: term,B: term] :
% 0.33/1.53                    ( ( P @ id @ A @ id )
% 0.33/1.53                   => ( ( P @ id @ B @ id )
% 0.33/1.53                     => ( P @ id @ ( hoasap @ id @ A @ id @ B ) @ id ) ) )
% 0.33/1.53               => ( ( hoasinduction_p_and_p_prime @ P @ Q )
% 0.33/1.53                 => ! [A: term,B: term] :
% 0.33/1.53                      ( ( Q @ A )
% 0.33/1.53                     => ( ( Q @ B )
% 0.33/1.53                       => ( Q @ ( ap @ A @ B ) ) ) ) ) ) ) ) ) ) ).
% 0.33/1.53  ------------------------
% 0.33/1.56  % (25016)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_24745 for (2999ds/4Mi)
% 0.33/1.56  % (25017)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_24745 for (2999ds/27Mi)
% 0.33/1.56  % (25018)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/2Mi)
% 0.33/1.56  % (25016)Instruction limit reached!
% 0.33/1.56  % (25016)------------------------------
% 0.33/1.56  % (25016)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.56  % (25016)Termination reason: Unknown
% 0.33/1.56  % (25016)Termination phase: shuffling
% 0.33/1.56  
% 0.33/1.56  % (25016)Memory used [KB]: 1407
% 0.33/1.56  % (25016)Time elapsed: 0.003 s
% 0.33/1.56  % (25016)Instructions burned: 6 (million)
% 0.33/1.56  % (25016)------------------------------
% 0.33/1.56  % (25016)------------------------------
% 0.33/1.56  % (25018)Instruction limit reached!
% 0.33/1.56  % (25018)------------------------------
% 0.33/1.56  % (25018)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.56  % (25018)Termination reason: Unknown
% 0.33/1.56  % (25018)Termination phase: shuffling
% 0.33/1.56  
% 0.33/1.56  % (25018)Memory used [KB]: 1151
% 0.33/1.56  % (25018)Time elapsed: 0.002 s
% 0.33/1.56  % (25018)Instructions burned: 3 (million)
% 0.33/1.56  % (25018)------------------------------
% 0.33/1.56  % (25018)------------------------------
% 0.33/1.57  % (25015)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/183Mi)
% 0.33/1.57  % (25019)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_24745 for (2999ds/2Mi)
% 0.33/1.57  % (25020)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_24745 for (2999ds/275Mi)
% 0.33/1.57  % (25021)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/18Mi)
% 0.33/1.57  % (25017)Instruction limit reached!
% 0.33/1.57  % (25017)------------------------------
% 0.33/1.57  % (25017)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.57  % (25017)Termination reason: Unknown
% 0.33/1.57  % (25017)Termination phase: Property scanning
% 0.33/1.57  
% 0.33/1.57  % (25017)Memory used [KB]: 2174
% 0.33/1.57  % (25017)Time elapsed: 0.010 s
% 0.33/1.57  % (25017)Instructions burned: 28 (million)
% 0.33/1.57  % (25017)------------------------------
% 0.33/1.57  % (25017)------------------------------
% 0.33/1.57  % (25019)Instruction limit reached!
% 0.33/1.57  % (25019)------------------------------
% 0.33/1.57  % (25019)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.57  % (25019)Termination reason: Unknown
% 0.33/1.57  % (25019)Termination phase: shuffling
% 0.33/1.57  
% 0.33/1.57  % (25019)Memory used [KB]: 1279
% 0.33/1.57  % (25019)Time elapsed: 0.004 s
% 0.33/1.57  % (25019)Instructions burned: 3 (million)
% 0.33/1.57  % (25019)------------------------------
% 0.33/1.57  % (25019)------------------------------
% 0.33/1.57  % (25022)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/3Mi)
% 0.33/1.57  % (25023)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_24745 for (2999ds/37Mi)
% 0.33/1.57  % (25022)Instruction limit reached!
% 0.33/1.57  % (25022)------------------------------
% 0.33/1.57  % (25022)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.57  % (25022)Termination reason: Unknown
% 0.33/1.57  % (25022)Termination phase: shuffling
% 0.33/1.57  
% 0.33/1.57  % (25022)Memory used [KB]: 1279
% 0.33/1.57  % (25022)Time elapsed: 0.002 s
% 0.33/1.57  % (25022)Instructions burned: 4 (million)
% 0.33/1.57  % (25022)------------------------------
% 0.33/1.57  % (25022)------------------------------
% 0.33/1.58  % (25024)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_24745 for (2999ds/15Mi)
% 0.33/1.58  % (25021)Instruction limit reached!
% 0.33/1.58  % (25021)------------------------------
% 0.33/1.58  % (25021)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.58  % (25021)Termination reason: Unknown
% 0.33/1.58  % (25021)Termination phase: shuffling
% 0.33/1.58  
% 0.33/1.58  % (25021)Memory used [KB]: 2046
% 0.33/1.58  % (25021)Time elapsed: 0.013 s
% 0.33/1.58  % (25021)Instructions burned: 18 (million)
% 0.33/1.58  % (25021)------------------------------
% 0.33/1.58  % (25021)------------------------------
% 0.33/1.58  % (25026)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_24745 for (2999ds/1041Mi)
% 0.33/1.58  % (25024)Instruction limit reached!
% 0.33/1.58  % (25024)------------------------------
% 0.33/1.58  % (25024)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.58  % (25024)Termination reason: Unknown
% 0.33/1.58  % (25024)Termination phase: shuffling
% 0.33/1.58  
% 0.33/1.58  % (25024)Memory used [KB]: 1918
% 0.33/1.58  % (25024)Time elapsed: 0.006 s
% 0.33/1.58  % (25024)Instructions burned: 16 (million)
% 0.33/1.58  % (25024)------------------------------
% 0.33/1.58  % (25024)------------------------------
% 0.33/1.58  % (25023)Instruction limit reached!
% 0.33/1.58  % (25023)------------------------------
% 0.33/1.58  % (25023)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.58  % (25023)Termination reason: Unknown
% 0.33/1.58  % (25023)Termination phase: Property scanning
% 0.33/1.58  
% 0.33/1.58  % (25023)Memory used [KB]: 1918
% 0.33/1.58  % (25023)Time elapsed: 0.013 s
% 0.33/1.58  % (25023)Instructions burned: 39 (million)
% 0.33/1.58  % (25023)------------------------------
% 0.33/1.58  % (25023)------------------------------
% 0.33/1.59  % (25025)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_24745 for (2999ds/3Mi)
% 0.33/1.59  % (25025)Instruction limit reached!
% 0.33/1.59  % (25025)------------------------------
% 0.33/1.59  % (25025)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.59  % (25025)Termination reason: Unknown
% 0.33/1.59  % (25025)Termination phase: shuffling
% 0.33/1.59  
% 0.33/1.59  % (25025)Memory used [KB]: 1279
% 0.33/1.59  % (25025)Time elapsed: 0.004 s
% 0.33/1.59  % (25025)Instructions burned: 4 (million)
% 0.33/1.59  % (25025)------------------------------
% 0.33/1.59  % (25025)------------------------------
% 0.33/1.59  % (25028)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/16Mi)
% 0.33/1.59  % (25020)Refutation not found, incomplete strategy
% 0.33/1.59  % (25020)------------------------------
% 0.33/1.59  % (25020)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.59  % (25020)Termination reason: Refutation not found, incomplete strategy
% 0.33/1.59  
% 0.33/1.59  
% 0.33/1.59  % (25020)Memory used [KB]: 6780
% 0.33/1.59  % (25020)Time elapsed: 0.026 s
% 0.33/1.59  % (25020)Instructions burned: 42 (million)
% 0.33/1.59  % (25020)------------------------------
% 0.33/1.59  % (25020)------------------------------
% 0.33/1.59  % (25029)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_24745 for (2999ds/3Mi)
% 0.33/1.60  % (25029)Instruction limit reached!
% 0.33/1.60  % (25029)------------------------------
% 0.33/1.60  % (25029)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 0.33/1.60  % (25029)Termination reason: Unknown
% 0.33/1.60  % (25029)Termination phase: shuffling
% 0.33/1.60  
% 0.33/1.60  % (25029)Memory used [KB]: 1279
% 0.33/1.60  % (25029)Time elapsed: 0.003 s
% 0.33/1.60  % (25029)Instructions burned: 4 (million)
% 0.33/1.60  % (25029)------------------------------
% 0.33/1.60  % (25029)------------------------------
% 2.61/1.60  % (25027)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/7Mi)
% 2.61/1.60  % (25028)Instruction limit reached!
% 2.61/1.60  % (25028)------------------------------
% 2.61/1.60  % (25028)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.60  % (25028)Termination reason: Unknown
% 2.61/1.60  % (25028)Termination phase: shuffling
% 2.61/1.60  
% 2.61/1.60  % (25028)Memory used [KB]: 1918
% 2.61/1.60  % (25028)Time elapsed: 0.006 s
% 2.61/1.60  % (25028)Instructions burned: 17 (million)
% 2.61/1.60  % (25028)------------------------------
% 2.61/1.60  % (25028)------------------------------
% 2.61/1.60  % (25027)Instruction limit reached!
% 2.61/1.60  % (25027)------------------------------
% 2.61/1.60  % (25027)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.60  % (25027)Termination reason: Unknown
% 2.61/1.60  % (25027)Termination phase: shuffling
% 2.61/1.60  
% 2.61/1.60  % (25027)Memory used [KB]: 1407
% 2.61/1.60  % (25027)Time elapsed: 0.006 s
% 2.61/1.60  % (25027)Instructions burned: 8 (million)
% 2.61/1.60  % (25027)------------------------------
% 2.61/1.60  % (25027)------------------------------
% 2.61/1.61  % (25032)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/3Mi)
% 2.61/1.61  % (25032)Instruction limit reached!
% 2.61/1.61  % (25032)------------------------------
% 2.61/1.61  % (25032)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.61  % (25032)Termination reason: Unknown
% 2.61/1.61  % (25032)Termination phase: shuffling
% 2.61/1.61  
% 2.61/1.61  % (25032)Memory used [KB]: 1279
% 2.61/1.61  % (25032)Time elapsed: 0.003 s
% 2.61/1.61  % (25032)Instructions burned: 4 (million)
% 2.61/1.61  % (25032)------------------------------
% 2.61/1.61  % (25032)------------------------------
% 2.61/1.61  % (25033)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/4Mi)
% 2.61/1.61  % (25030)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_24745 for (2999ds/3Mi)
% 2.61/1.61  % (25033)Instruction limit reached!
% 2.61/1.61  % (25033)------------------------------
% 2.61/1.61  % (25033)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.61  % (25033)Termination reason: Unknown
% 2.61/1.61  % (25033)Termination phase: shuffling
% 2.61/1.61  
% 2.61/1.61  % (25033)Memory used [KB]: 1279
% 2.61/1.61  % (25033)Time elapsed: 0.002 s
% 2.61/1.61  % (25033)Instructions burned: 4 (million)
% 2.61/1.61  % (25033)------------------------------
% 2.61/1.61  % (25033)------------------------------
% 2.61/1.61  % (25030)Instruction limit reached!
% 2.61/1.61  % (25030)------------------------------
% 2.61/1.61  % (25030)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.61  % (25030)Termination reason: Unknown
% 2.61/1.61  % (25030)Termination phase: shuffling
% 2.61/1.61  
% 2.61/1.61  % (25030)Memory used [KB]: 1279
% 2.61/1.61  % (25030)Time elapsed: 0.004 s
% 2.61/1.61  % (25030)Instructions burned: 4 (million)
% 2.61/1.61  % (25030)------------------------------
% 2.61/1.61  % (25030)------------------------------
% 2.61/1.61  % (25031)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/7Mi)
% 2.61/1.62  % (25031)Instruction limit reached!
% 2.61/1.62  % (25031)------------------------------
% 2.61/1.62  % (25031)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.62  % (25031)Termination reason: Unknown
% 2.61/1.62  % (25031)Termination phase: shuffling
% 2.61/1.62  
% 2.61/1.62  % (25031)Memory used [KB]: 1407
% 2.61/1.62  % (25031)Time elapsed: 0.006 s
% 2.61/1.62  % (25031)Instructions burned: 8 (million)
% 2.61/1.62  % (25031)------------------------------
% 2.61/1.62  % (25031)------------------------------
% 2.61/1.62  % (25035)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/710Mi)
% 2.61/1.62  % (25036)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/6Mi)
% 2.61/1.62  % (25034)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/18Mi)
% 2.61/1.62  % (25036)Instruction limit reached!
% 2.61/1.62  % (25036)------------------------------
% 2.61/1.62  % (25036)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.62  % (25036)Termination reason: Unknown
% 2.61/1.62  % (25036)Termination phase: shuffling
% 2.61/1.62  
% 2.61/1.62  % (25036)Memory used [KB]: 1407
% 2.61/1.62  % (25036)Time elapsed: 0.003 s
% 2.61/1.62  % (25036)Instructions burned: 8 (million)
% 2.61/1.62  % (25036)------------------------------
% 2.61/1.62  % (25036)------------------------------
% 2.61/1.63  % (25037)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_24745 for (2999ds/902Mi)
% 2.61/1.63  % (25039)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/5Mi)
% 2.61/1.63  % (25034)Instruction limit reached!
% 2.61/1.63  % (25034)------------------------------
% 2.61/1.63  % (25034)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.63  % (25034)Termination reason: Unknown
% 2.61/1.63  % (25034)Termination phase: shuffling
% 2.61/1.63  
% 2.61/1.63  % (25034)Memory used [KB]: 2046
% 2.61/1.63  % (25034)Time elapsed: 0.013 s
% 2.61/1.63  % (25034)Instructions burned: 19 (million)
% 2.61/1.63  % (25034)------------------------------
% 2.61/1.63  % (25034)------------------------------
% 2.61/1.63  % (25039)Instruction limit reached!
% 2.61/1.63  % (25039)------------------------------
% 2.61/1.63  % (25039)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.63  % (25039)Termination reason: Unknown
% 2.61/1.63  % (25039)Termination phase: shuffling
% 2.61/1.63  
% 2.61/1.63  % (25039)Memory used [KB]: 1407
% 2.61/1.63  % (25039)Time elapsed: 0.003 s
% 2.61/1.63  % (25039)Instructions burned: 7 (million)
% 2.61/1.63  % (25039)------------------------------
% 2.61/1.63  % (25039)------------------------------
% 2.61/1.63  % (25038)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_24745 for (2999ds/21Mi)
% 2.61/1.64  % (25041)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_24745 for (2999ds/377Mi)
% 2.61/1.65  % (25038)Instruction limit reached!
% 2.61/1.65  % (25038)------------------------------
% 2.61/1.65  % (25038)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.65  % (25038)Termination reason: Unknown
% 2.61/1.65  % (25038)Termination phase: shuffling
% 2.61/1.65  
% 2.61/1.65  % (25038)Memory used [KB]: 2174
% 2.61/1.65  % (25038)Time elapsed: 0.015 s
% 2.61/1.65  % (25038)Instructions burned: 22 (million)
% 2.61/1.65  % (25038)------------------------------
% 2.61/1.65  % (25038)------------------------------
% 2.61/1.65  % (25040)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_24745 for (2999ds/6Mi)
% 2.61/1.65  % (25040)Instruction limit reached!
% 2.61/1.65  % (25040)------------------------------
% 2.61/1.65  % (25040)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.65  % (25040)Termination reason: Unknown
% 2.61/1.65  % (25040)Termination phase: shuffling
% 2.61/1.65  
% 2.61/1.65  % (25040)Memory used [KB]: 1407
% 2.61/1.65  % (25040)Time elapsed: 0.005 s
% 2.61/1.65  % (25040)Instructions burned: 6 (million)
% 2.61/1.65  % (25040)------------------------------
% 2.61/1.65  % (25040)------------------------------
% 2.61/1.65  % (25015)Instruction limit reached!
% 2.61/1.65  % (25015)------------------------------
% 2.61/1.65  % (25015)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.65  % (25015)Termination reason: Unknown
% 2.61/1.65  % (25015)Termination phase: Property scanning
% 2.61/1.65  
% 2.61/1.65  % (25015)Memory used [KB]: 4349
% 2.61/1.65  % (25015)Time elapsed: 0.087 s
% 2.61/1.65  % (25015)Instructions burned: 184 (million)
% 2.61/1.65  % (25015)------------------------------
% 2.61/1.65  % (25015)------------------------------
% 2.61/1.66  % (25042)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_24745 for (2999ds/779Mi)
% 2.61/1.66  % (25044)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/879Mi)
% 2.61/1.67  % (25043)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_24745 for (2999ds/19Mi)
% 2.61/1.68  % (25043)Instruction limit reached!
% 2.61/1.68  % (25043)------------------------------
% 2.61/1.68  % (25043)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.68  % (25043)Termination reason: Unknown
% 2.61/1.68  % (25043)Termination phase: shuffling
% 2.61/1.68  
% 2.61/1.68  % (25043)Memory used [KB]: 1663
% 2.61/1.68  % (25043)Time elapsed: 0.012 s
% 2.61/1.68  % (25043)Instructions burned: 20 (million)
% 2.61/1.68  % (25043)------------------------------
% 2.61/1.68  % (25043)------------------------------
% 2.61/1.69  % (25045)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/17Mi)
% 2.61/1.70  % (25037)Refutation not found, incomplete strategy
% 2.61/1.70  % (25037)------------------------------
% 2.61/1.70  % (25037)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.70  % (25037)Termination reason: Refutation not found, incomplete strategy
% 2.61/1.70  
% 2.61/1.70  
% 2.61/1.70  % (25037)Memory used [KB]: 9466
% 2.61/1.70  % (25037)Time elapsed: 0.075 s
% 2.61/1.70  % (25037)Instructions burned: 206 (million)
% 2.61/1.70  % (25037)------------------------------
% 2.61/1.70  % (25037)------------------------------
% 2.61/1.70  % (25045)Instruction limit reached!
% 2.61/1.70  % (25045)------------------------------
% 2.61/1.70  % (25045)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.70  % (25045)Termination reason: Unknown
% 2.61/1.70  % (25045)Termination phase: shuffling
% 2.61/1.70  
% 2.61/1.70  % (25045)Memory used [KB]: 1918
% 2.61/1.70  % (25045)Time elapsed: 0.010 s
% 2.61/1.70  % (25045)Instructions burned: 18 (million)
% 2.61/1.70  % (25045)------------------------------
% 2.61/1.70  % (25045)------------------------------
% 2.61/1.71  % (25046)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/3Mi)
% 2.61/1.71  % (25046)Instruction limit reached!
% 2.61/1.71  % (25046)------------------------------
% 2.61/1.71  % (25046)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.71  % (25046)Termination reason: Unknown
% 2.61/1.71  % (25046)Termination phase: shuffling
% 2.61/1.71  
% 2.61/1.71  % (25046)Memory used [KB]: 1279
% 2.61/1.71  % (25046)Time elapsed: 0.003 s
% 2.61/1.71  % (25046)Instructions burned: 4 (million)
% 2.61/1.71  % (25046)------------------------------
% 2.61/1.71  % (25046)------------------------------
% 2.61/1.71  % (25047)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/30Mi)
% 2.61/1.72  % (25048)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/127Mi)
% 2.61/1.72  % (25047)Instruction limit reached!
% 2.61/1.72  % (25047)------------------------------
% 2.61/1.72  % (25047)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.72  % (25047)Termination reason: Unknown
% 2.61/1.72  % (25047)Termination phase: Property scanning
% 2.61/1.72  
% 2.61/1.72  % (25047)Memory used [KB]: 2174
% 2.61/1.72  % (25047)Time elapsed: 0.011 s
% 2.61/1.72  % (25047)Instructions burned: 30 (million)
% 2.61/1.72  % (25047)------------------------------
% 2.61/1.72  % (25047)------------------------------
% 2.61/1.73  % (25049)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_24745 for (2998ds/100Mi)
% 2.61/1.75  % (25041)Instruction limit reached!
% 2.61/1.75  % (25041)------------------------------
% 2.61/1.75  % (25041)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.75  % (25041)Termination reason: Unknown
% 2.61/1.75  % (25041)Termination phase: Saturation
% 2.61/1.75  
% 2.61/1.75  % (25041)Memory used [KB]: 11001
% 2.61/1.75  % (25041)Time elapsed: 0.107 s
% 2.61/1.75  % (25041)Instructions burned: 378 (million)
% 2.61/1.75  % (25041)------------------------------
% 2.61/1.75  % (25041)------------------------------
% 2.61/1.76  % (25050)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_24745 for (2997ds/3Mi)
% 2.61/1.76  % (25050)Instruction limit reached!
% 2.61/1.76  % (25050)------------------------------
% 2.61/1.76  % (25050)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.76  % (25050)Termination reason: Unknown
% 2.61/1.76  % (25050)Termination phase: shuffling
% 2.61/1.76  
% 2.61/1.76  % (25050)Memory used [KB]: 1407
% 2.61/1.76  % (25050)Time elapsed: 0.003 s
% 2.61/1.76  % (25050)Instructions burned: 6 (million)
% 2.61/1.76  % (25050)------------------------------
% 2.61/1.76  % (25050)------------------------------
% 2.61/1.76  % (25049)Instruction limit reached!
% 2.61/1.76  % (25049)------------------------------
% 2.61/1.76  % (25049)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.76  % (25049)Termination reason: Unknown
% 2.61/1.76  % (25049)Termination phase: Saturation
% 2.61/1.76  
% 2.61/1.76  % (25049)Memory used [KB]: 6524
% 2.61/1.76  % (25049)Time elapsed: 0.029 s
% 2.61/1.76  % (25049)Instructions burned: 100 (million)
% 2.61/1.76  % (25049)------------------------------
% 2.61/1.76  % (25049)------------------------------
% 2.61/1.76  % (25048)Instruction limit reached!
% 2.61/1.76  % (25048)------------------------------
% 2.61/1.76  % (25048)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.76  % (25048)Termination reason: Unknown
% 2.61/1.76  % (25048)Termination phase: Property scanning
% 2.61/1.76  
% 2.61/1.76  % (25048)Memory used [KB]: 4221
% 2.61/1.76  % (25048)Time elapsed: 0.040 s
% 2.61/1.76  % (25048)Instructions burned: 129 (million)
% 2.61/1.76  % (25048)------------------------------
% 2.61/1.76  % (25048)------------------------------
% 2.61/1.77  % (25051)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_24745 for (2997ds/20Mi)
% 2.61/1.77  % (25052)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_24745 for (2997ds/86Mi)
% 2.61/1.77  % (25053)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_24745 for (2997ds/107Mi)
% 2.61/1.77  % (25051)Instruction limit reached!
% 2.61/1.77  % (25051)------------------------------
% 2.61/1.77  % (25051)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.77  % (25051)Termination reason: Unknown
% 2.61/1.77  % (25051)Termination phase: shuffling
% 2.61/1.77  
% 2.61/1.77  % (25051)Memory used [KB]: 2174
% 2.61/1.77  % (25051)Time elapsed: 0.008 s
% 2.61/1.77  % (25051)Instructions burned: 21 (million)
% 2.61/1.77  % (25051)------------------------------
% 2.61/1.77  % (25051)------------------------------
% 2.61/1.78  % (25054)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_24745 for (2997ds/39Mi)
% 2.61/1.79  % (25054)Instruction limit reached!
% 2.61/1.79  % (25054)------------------------------
% 2.61/1.79  % (25054)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.79  % (25054)Termination reason: Unknown
% 2.61/1.79  % (25054)Termination phase: Property scanning
% 2.61/1.79  
% 2.61/1.79  % (25054)Memory used [KB]: 1918
% 2.61/1.79  % (25054)Time elapsed: 0.011 s
% 2.61/1.79  % (25054)Instructions burned: 39 (million)
% 2.61/1.79  % (25054)------------------------------
% 2.61/1.79  % (25054)------------------------------
% 2.61/1.80  % (25052)Instruction limit reached!
% 2.61/1.80  % (25052)------------------------------
% 2.61/1.80  % (25052)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.80  % (25052)Termination reason: Unknown
% 2.61/1.80  % (25052)Termination phase: Preprocessing 3
% 2.61/1.80  
% 2.61/1.80  % (25052)Memory used [KB]: 3965
% 2.61/1.80  % (25052)Time elapsed: 0.029 s
% 2.61/1.80  % (25052)Instructions burned: 87 (million)
% 2.61/1.80  % (25052)------------------------------
% 2.61/1.80  % (25052)------------------------------
% 2.61/1.80  % (25055)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_24745 for (2997ds/448Mi)
% 2.61/1.80  % (25053)Instruction limit reached!
% 2.61/1.80  % (25053)------------------------------
% 2.61/1.80  % (25053)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.80  % (25053)Termination reason: Unknown
% 2.61/1.80  % (25053)Termination phase: Property scanning
% 2.61/1.80  
% 2.61/1.80  % (25053)Memory used [KB]: 4477
% 2.61/1.80  % (25053)Time elapsed: 0.035 s
% 2.61/1.80  % (25053)Instructions burned: 107 (million)
% 2.61/1.80  % (25053)------------------------------
% 2.61/1.80  % (25053)------------------------------
% 2.61/1.81  % (25056)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_24745 for (2997ds/46Mi)
% 2.61/1.82  % (25057)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_24745 for (2997ds/98Mi)
% 2.61/1.82  % (25056)Instruction limit reached!
% 2.61/1.82  % (25056)------------------------------
% 2.61/1.82  % (25056)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.82  % (25056)Termination reason: Unknown
% 2.61/1.82  % (25056)Termination phase: Preprocessing 1
% 2.61/1.82  
% 2.61/1.82  % (25056)Memory used [KB]: 2302
% 2.61/1.82  % (25056)Time elapsed: 0.016 s
% 2.61/1.82  % (25056)Instructions burned: 46 (million)
% 2.61/1.82  % (25056)------------------------------
% 2.61/1.82  % (25056)------------------------------
% 2.61/1.83  % (25035)Instruction limit reached!
% 2.61/1.83  % (25035)------------------------------
% 2.61/1.83  % (25035)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.83  % (25035)Termination reason: Unknown
% 2.61/1.83  % (25035)Termination phase: Saturation
% 2.61/1.83  
% 2.61/1.83  % (25035)Memory used [KB]: 11513
% 2.61/1.83  % (25035)Time elapsed: 0.217 s
% 2.61/1.83  % (25035)Instructions burned: 710 (million)
% 2.61/1.83  % (25035)------------------------------
% 2.61/1.83  % (25035)------------------------------
% 2.61/1.83  % (25058)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_24745 for (2997ds/507Mi)
% 2.61/1.84  % (25059)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_24745 for (2997ds/149Mi)
% 2.61/1.84  % (25057)Instruction limit reached!
% 2.61/1.84  % (25057)------------------------------
% 2.61/1.84  % (25057)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.84  % (25057)Termination reason: Unknown
% 2.61/1.84  % (25057)Termination phase: Saturation
% 2.61/1.84  
% 2.61/1.84  % (25057)Memory used [KB]: 2046
% 2.61/1.84  % (25057)Time elapsed: 0.029 s
% 2.61/1.84  % (25057)Instructions burned: 100 (million)
% 2.61/1.84  % (25057)------------------------------
% 2.61/1.84  % (25057)------------------------------
% 2.61/1.85  % (25026)Instruction limit reached!
% 2.61/1.85  % (25026)------------------------------
% 2.61/1.85  % (25026)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.85  % (25026)Termination reason: Unknown
% 2.61/1.85  % (25026)Termination phase: Saturation
% 2.61/1.85  
% 2.61/1.85  % (25026)Memory used [KB]: 7547
% 2.61/1.85  % (25026)Time elapsed: 0.265 s
% 2.61/1.85  % (25026)Instructions burned: 1043 (million)
% 2.61/1.85  % (25026)------------------------------
% 2.61/1.85  % (25026)------------------------------
% 2.61/1.85  % (25060)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on DTF2THF_24745 for (2996ds/39Mi)
% 2.61/1.86  % (25061)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_24745 for (2996ds/6Mi)
% 2.61/1.86  % (25061)Instruction limit reached!
% 2.61/1.86  % (25061)------------------------------
% 2.61/1.86  % (25061)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.86  % (25061)Termination reason: Unknown
% 2.61/1.86  % (25061)Termination phase: shuffling
% 2.61/1.86  
% 2.61/1.86  % (25061)Memory used [KB]: 1407
% 2.61/1.86  % (25061)Time elapsed: 0.003 s
% 2.61/1.86  % (25061)Instructions burned: 7 (million)
% 2.61/1.86  % (25061)------------------------------
% 2.61/1.86  % (25061)------------------------------
% 2.61/1.86  % (25060)Instruction limit reached!
% 2.61/1.86  % (25060)------------------------------
% 2.61/1.86  % (25060)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.86  % (25060)Termination reason: Unknown
% 2.61/1.86  % (25060)Termination phase: Preprocessing 1
% 2.61/1.86  
% 2.61/1.86  % (25060)Memory used [KB]: 2174
% 2.61/1.86  % (25060)Time elapsed: 0.014 s
% 2.61/1.86  % (25060)Instructions burned: 39 (million)
% 2.61/1.86  % (25060)------------------------------
% 2.61/1.86  % (25060)------------------------------
% 2.61/1.87  % (25062)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_24745 for (2996ds/1087Mi)
% 2.61/1.87  % (25063)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on DTF2THF_24745 for (2996ds/47Mi)
% 2.61/1.88  % (25042)Instruction limit reached!
% 2.61/1.88  % (25042)------------------------------
% 2.61/1.88  % (25042)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.88  % (25042)Termination reason: Unknown
% 2.61/1.88  % (25042)Termination phase: Saturation
% 2.61/1.88  
% 2.61/1.88  % (25042)Memory used [KB]: 7036
% 2.61/1.88  % (25042)Time elapsed: 0.214 s
% 2.61/1.88  % (25042)Instructions burned: 781 (million)
% 2.61/1.88  % (25042)------------------------------
% 2.61/1.88  % (25042)------------------------------
% 2.61/1.88  % (25059)Instruction limit reached!
% 2.61/1.88  % (25059)------------------------------
% 2.61/1.88  % (25059)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.88  % (25059)Termination reason: Unknown
% 2.61/1.88  % (25059)Termination phase: Property scanning
% 2.61/1.88  
% 2.61/1.88  % (25059)Memory used [KB]: 7803
% 2.61/1.88  % (25059)Time elapsed: 0.043 s
% 2.61/1.88  % (25059)Instructions burned: 151 (million)
% 2.61/1.88  % (25059)------------------------------
% 2.61/1.88  % (25059)------------------------------
% 2.61/1.89  % (25064)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_24745 for (2996ds/44Mi)
% 2.61/1.89  % (25063)Instruction limit reached!
% 2.61/1.89  % (25063)------------------------------
% 2.61/1.89  % (25063)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.89  % (25063)Termination reason: Unknown
% 2.61/1.89  % (25063)Termination phase: Naming
% 2.61/1.89  
% 2.61/1.89  % (25063)Memory used [KB]: 2686
% 2.61/1.89  % (25063)Time elapsed: 0.017 s
% 2.61/1.89  % (25063)Instructions burned: 47 (million)
% 2.61/1.89  % (25063)------------------------------
% 2.61/1.89  % (25063)------------------------------
% 2.61/1.89  % (25065)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_24745 for (2996ds/432Mi)
% 2.61/1.90  % (25064)Instruction limit reached!
% 2.61/1.90  % (25064)------------------------------
% 2.61/1.90  % (25064)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.90  % (25064)Termination reason: Unknown
% 2.61/1.90  % (25064)Termination phase: Property scanning
% 2.61/1.90  
% 2.61/1.90  % (25064)Memory used [KB]: 1918
% 2.61/1.90  % (25064)Time elapsed: 0.014 s
% 2.61/1.90  % (25064)Instructions burned: 47 (million)
% 2.61/1.90  % (25064)------------------------------
% 2.61/1.90  % (25064)------------------------------
% 2.61/1.90  % (25066)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on DTF2THF_24745 for (2996ds/62Mi)
% 2.61/1.91  % (25067)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_24745 for (2996ds/31Mi)
% 2.61/1.92  % (25066)Instruction limit reached!
% 2.61/1.92  % (25066)------------------------------
% 2.61/1.92  % (25066)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.92  % (25066)Termination reason: Unknown
% 2.61/1.92  % (25066)Termination phase: Property scanning
% 2.61/1.92  
% 2.61/1.92  % (25066)Memory used [KB]: 1918
% 2.61/1.92  % (25066)Time elapsed: 0.019 s
% 2.61/1.92  % (25066)Instructions burned: 63 (million)
% 2.61/1.92  % (25066)------------------------------
% 2.61/1.92  % (25066)------------------------------
% 2.61/1.92  % (25058)Refutation not found, incomplete strategy
% 2.61/1.92  % (25058)------------------------------
% 2.61/1.92  % (25058)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.92  % (25058)Termination reason: Refutation not found, incomplete strategy
% 2.61/1.92  
% 2.61/1.92  
% 2.61/1.92  % (25058)Memory used [KB]: 9978
% 2.61/1.92  % (25058)Time elapsed: 0.087 s
% 2.61/1.92  % (25058)Instructions burned: 281 (million)
% 2.61/1.92  % (25058)------------------------------
% 2.61/1.92  % (25058)------------------------------
% 2.61/1.92  % (25067)Instruction limit reached!
% 2.61/1.92  % (25067)------------------------------
% 2.61/1.92  % (25067)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.92  % (25067)Termination reason: Unknown
% 2.61/1.92  % (25067)Termination phase: Property scanning
% 2.61/1.92  
% 2.61/1.92  % (25067)Memory used [KB]: 2174
% 2.61/1.92  % (25067)Time elapsed: 0.012 s
% 2.61/1.92  % (25067)Instructions burned: 31 (million)
% 2.61/1.92  % (25067)------------------------------
% 2.61/1.92  % (25067)------------------------------
% 2.61/1.93  % (25055)Instruction limit reached!
% 2.61/1.93  % (25055)------------------------------
% 2.61/1.93  % (25055)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.93  % (25055)Termination reason: Unknown
% 2.61/1.93  % (25055)Termination phase: Saturation
% 2.61/1.93  
% 2.61/1.93  % (25055)Memory used [KB]: 7291
% 2.61/1.93  % (25055)Time elapsed: 0.123 s
% 2.61/1.93  % (25055)Instructions burned: 448 (million)
% 2.61/1.93  % (25055)------------------------------
% 2.61/1.93  % (25055)------------------------------
% 2.61/1.93  % (25069)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_24745 for (2996ds/453Mi)
% 2.61/1.93  % (25070)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_24745 for (2996ds/71Mi)
% 2.61/1.94  % (25071)dis+1002_1:1_bd=off:fsr=off:ntd=on:s2a=on:ss=axioms:i=83:si=on:rtra=on_0 on DTF2THF_24745 for (2996ds/83Mi)
% 2.61/1.94  % (25068)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on DTF2THF_24745 for (2996ds/96Mi)
% 2.61/1.95  % (25044)Instruction limit reached!
% 2.61/1.95  % (25044)------------------------------
% 2.61/1.95  % (25044)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.95  % (25044)Termination reason: Unknown
% 2.61/1.95  % (25044)Termination phase: Saturation
% 2.61/1.95  
% 2.61/1.95  % (25044)Memory used [KB]: 11513
% 2.61/1.95  % (25044)Time elapsed: 0.288 s
% 2.61/1.95  % (25044)Instructions burned: 881 (million)
% 2.61/1.95  % (25044)------------------------------
% 2.61/1.95  % (25044)------------------------------
% 2.61/1.95  % (25070)Instruction limit reached!
% 2.61/1.95  % (25070)------------------------------
% 2.61/1.95  % (25070)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.95  % (25070)Termination reason: Unknown
% 2.61/1.95  % (25070)Termination phase: Preprocessing 3
% 2.61/1.95  
% 2.61/1.95  % (25070)Memory used [KB]: 3326
% 2.61/1.95  % (25070)Time elapsed: 0.025 s
% 2.61/1.95  % (25070)Instructions burned: 73 (million)
% 2.61/1.95  % (25070)------------------------------
% 2.61/1.95  % (25070)------------------------------
% 2.61/1.96  % (25071)Instruction limit reached!
% 2.61/1.96  % (25071)------------------------------
% 2.61/1.96  % (25071)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.96  % (25071)Termination reason: Unknown
% 2.61/1.96  % (25071)Termination phase: Saturation
% 2.61/1.96  
% 2.61/1.96  % (25071)Memory used [KB]: 7036
% 2.61/1.96  % (25071)Time elapsed: 0.025 s
% 2.61/1.96  % (25071)Instructions burned: 84 (million)
% 2.61/1.96  % (25071)------------------------------
% 2.61/1.96  % (25071)------------------------------
% 2.61/1.96  % (25072)lrs+10_1:128_cnfonf=lazy_not_gen_be_off:hud=1:ins=1:i=11:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/11Mi)
% 2.61/1.96  % (25073)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_24745 for (2995ds/41Mi)
% 2.61/1.97  % (25072)Instruction limit reached!
% 2.61/1.97  % (25072)------------------------------
% 2.61/1.97  % (25072)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.97  % (25072)Termination reason: Unknown
% 2.61/1.97  % (25072)Termination phase: shuffling
% 2.61/1.97  
% 2.61/1.97  % (25072)Memory used [KB]: 1535
% 2.61/1.97  % (25072)Time elapsed: 0.004 s
% 2.61/1.97  % (25072)Instructions burned: 11 (million)
% 2.61/1.97  % (25072)------------------------------
% 2.61/1.97  % (25072)------------------------------
% 2.61/1.97  % (25074)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/6Mi)
% 2.61/1.97  % (25074)Instruction limit reached!
% 2.61/1.97  % (25074)------------------------------
% 2.61/1.97  % (25074)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.97  % (25074)Termination reason: Unknown
% 2.61/1.97  % (25074)Termination phase: shuffling
% 2.61/1.97  
% 2.61/1.97  % (25074)Memory used [KB]: 1407
% 2.61/1.97  % (25074)Time elapsed: 0.003 s
% 2.61/1.97  % (25074)Instructions burned: 6 (million)
% 2.61/1.97  % (25074)------------------------------
% 2.61/1.97  % (25074)------------------------------
% 2.61/1.97  % (25075)dis+10_1:1_avsq=on:cnfonf=off:e2e=on:nm=32:i=150:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/150Mi)
% 2.61/1.98  % (25073)Instruction limit reached!
% 2.61/1.98  % (25073)------------------------------
% 2.61/1.98  % (25073)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.98  % (25073)Termination reason: Unknown
% 2.61/1.98  % (25073)Termination phase: Property scanning
% 2.61/1.98  
% 2.61/1.98  % (25073)Memory used [KB]: 1918
% 2.61/1.98  % (25073)Time elapsed: 0.013 s
% 2.61/1.98  % (25073)Instructions burned: 43 (million)
% 2.61/1.98  % (25073)------------------------------
% 2.61/1.98  % (25073)------------------------------
% 2.61/1.98  % (25076)ott+1010_1:1_au=on:s2a=on:sd=7:ss=axioms:st=1.5:i=343:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/343Mi)
% 2.61/1.99  % (25077)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_24745 for (2995ds/109Mi)
% 2.61/1.99  % (25068)Instruction limit reached!
% 2.61/1.99  % (25068)------------------------------
% 2.61/1.99  % (25068)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/1.99  % (25068)Termination reason: Unknown
% 2.61/1.99  % (25068)Termination phase: Property scanning
% 2.61/1.99  
% 2.61/1.99  % (25068)Memory used [KB]: 4221
% 2.61/1.99  % (25068)Time elapsed: 0.055 s
% 2.61/1.99  % (25068)Instructions burned: 97 (million)
% 2.61/1.99  % (25068)------------------------------
% 2.61/1.99  % (25068)------------------------------
% 2.61/2.00  % (25076)Refutation not found, incomplete strategy
% 2.61/2.00  % (25076)------------------------------
% 2.61/2.00  % (25076)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/2.00  % (25076)Termination reason: Refutation not found, incomplete strategy
% 2.61/2.00  
% 2.61/2.00  
% 2.61/2.00  % (25076)Memory used [KB]: 6780
% 2.61/2.00  % (25076)Time elapsed: 0.019 s
% 2.61/2.00  % (25076)Instructions burned: 63 (million)
% 2.61/2.00  % (25076)------------------------------
% 2.61/2.00  % (25076)------------------------------
% 2.61/2.00  % (25065)Instruction limit reached!
% 2.61/2.00  % (25065)------------------------------
% 2.61/2.00  % (25065)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/2.00  % (25065)Termination reason: Unknown
% 2.61/2.00  % (25065)Termination phase: Saturation
% 2.61/2.00  
% 2.61/2.00  % (25065)Memory used [KB]: 2430
% 2.61/2.00  % (25065)Time elapsed: 0.110 s
% 2.61/2.00  % (25065)Instructions burned: 432 (million)
% 2.61/2.00  % (25065)------------------------------
% 2.61/2.00  % (25065)------------------------------
% 2.61/2.00  % (25078)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_24745 for (2995ds/253Mi)
% 2.61/2.01  % (25079)lrs+10_1:1_au=on:cnfonf=off:sd=1:sgt=16:ss=axioms:i=140:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/140Mi)
% 2.61/2.01  % (25080)dis+1010_16:1_acc=model:au=on:avsq=on:cond=fast:plsq=on:plsqc=2:plsqr=9267,262144:i=614:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/614Mi)
% 2.61/2.01  % (25075)Instruction limit reached!
% 2.61/2.01  % (25075)------------------------------
% 2.61/2.01  % (25075)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/2.01  % (25075)Termination reason: Unknown
% 2.61/2.01  % (25075)Termination phase: Property scanning
% 2.61/2.01  
% 2.61/2.01  % (25075)Memory used [KB]: 4221
% 2.61/2.01  % (25075)Time elapsed: 0.041 s
% 2.61/2.01  % (25075)Instructions burned: 151 (million)
% 2.61/2.01  % (25075)------------------------------
% 2.61/2.01  % (25075)------------------------------
% 2.61/2.02  % (25077)Instruction limit reached!
% 2.61/2.02  % (25077)------------------------------
% 2.61/2.02  % (25077)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.61/2.02  % (25077)Termination reason: Unknown
% 2.61/2.02  % (25077)Termination phase: Property scanning
% 2.61/2.02  
% 2.61/2.02  % (25077)Memory used [KB]: 4221
% 2.61/2.02  % (25077)Time elapsed: 0.034 s
% 2.61/2.02  % (25077)Instructions burned: 111 (million)
% 2.61/2.02  % (25077)------------------------------
% 2.61/2.02  % (25077)------------------------------
% 2.61/2.02  % (25081)lrs+1002_1:1_e2e=on:fde=unused:fe=axiom:prag=on:sd=1:sos=on:ss=axioms:st=2.0:i=202:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/202Mi)
% 5.84/2.03  % (25082)dis+1002_1:1_au=on:cs=on:ins=3:kws=inv_frequency:nwc=10.0:ss=axioms:st=3.0:i=339:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/339Mi)
% 5.84/2.03  % (25062)First to succeed.
% 5.84/2.05  % (25079)Instruction limit reached!
% 5.84/2.05  % (25079)------------------------------
% 5.84/2.05  % (25079)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.84/2.05  % (25079)Termination reason: Unknown
% 5.84/2.05  % (25079)Termination phase: Property scanning
% 5.84/2.05  
% 5.84/2.05  % (25079)Memory used [KB]: 4349
% 5.84/2.05  % (25079)Time elapsed: 0.039 s
% 5.84/2.05  % (25079)Instructions burned: 140 (million)
% 5.84/2.05  % (25079)------------------------------
% 5.84/2.05  % (25079)------------------------------
% 5.84/2.05  % (25069)Instruction limit reached!
% 5.84/2.05  % (25069)------------------------------
% 5.84/2.05  % (25069)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.84/2.05  % (25069)Termination reason: Unknown
% 5.84/2.05  % (25069)Termination phase: Saturation
% 5.84/2.05  
% 5.84/2.05  % (25069)Memory used [KB]: 6652
% 5.84/2.05  % (25069)Time elapsed: 0.121 s
% 5.84/2.05  % (25069)Instructions burned: 455 (million)
% 5.84/2.05  % (25069)------------------------------
% 5.84/2.05  % (25069)------------------------------
% 5.84/2.06  % (25083)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=283:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/283Mi)
% 5.84/2.06  % (25084)dis+2_1:1_cha=on:hud=7:nwc=3.0:prag=on:tnu=2:i=134:si=on:rtra=on_0 on DTF2THF_24745 for (2995ds/134Mi)
% 5.84/2.07  % (25062)Refutation found. Thanks to Tanya!
% 5.84/2.07  % SZS status Theorem for DTF2THF_24745
% 5.84/2.07  % SZS output start Proof for DTF2THF_24745
% 5.84/2.07  thf(type_def_5, type, term: $tType).
% 5.84/2.07  thf(type_def_7, type, subst: $tType).
% 5.84/2.07  thf(type_def_8, type, d_term: $tType).
% 5.84/2.07  thf(type_def_9, type, d_subst: $tType).
% 5.84/2.07  thf(func_def_0, type, term: $tType).
% 5.84/2.07  thf(func_def_1, type, subst: $tType).
% 5.84/2.07  thf(func_def_2, type, one: term).
% 5.84/2.07  thf(func_def_3, type, ap: term > term > term).
% 5.84/2.07  thf(func_def_4, type, lam: term > term).
% 5.84/2.07  thf(func_def_5, type, sub: term > subst > term).
% 5.84/2.07  thf(func_def_6, type, id: subst).
% 5.84/2.07  thf(func_def_7, type, sh: subst).
% 5.84/2.07  thf(func_def_8, type, push: term > subst > subst).
% 5.84/2.07  thf(func_def_9, type, comp: subst > subst > subst).
% 5.84/2.07  thf(func_def_10, type, var: term > $o).
% 5.84/2.07  thf(func_def_18, type, hoasap: subst > term > subst > term > term).
% 5.84/2.07  thf(func_def_73, type, hoaslam: subst > (subst > term > term) > term).
% 5.84/2.07  thf(func_def_86, type, hoasinduction_p_and_p_prime: (subst > term > subst > $o) > (term > $o) > $o).
% 5.84/2.07  thf(func_def_107, type, hoasvar: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_121, type, pushprop_p_and_p_prime: term > subst > (term > $o) > (term > $o) > $o).
% 5.84/2.07  thf(func_def_124, type, d_term: $tType).
% 5.84/2.07  thf(func_def_125, type, d_subst: $tType).
% 5.84/2.07  thf(func_def_126, type, d2term: d_term > term).
% 5.84/2.07  thf(func_def_127, type, d2subst: d_subst > subst).
% 5.84/2.07  thf(func_def_128, type, d_one: d_term).
% 5.84/2.07  thf(func_def_129, type, d_id: d_subst).
% 5.84/2.07  thf(func_def_141, type, sP0: (term > $o) > $o).
% 5.84/2.07  thf(func_def_142, type, sP1: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_143, type, sP2: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_145, type, sP4: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_146, type, sP5: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_147, type, sP6: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_148, type, sP7: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_149, type, sP8: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_150, type, sP9: (term > $o) > $o).
% 5.84/2.07  thf(func_def_151, type, sP10: (term > $o) > $o).
% 5.84/2.07  thf(func_def_155, type, sP14: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_156, type, sP15: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_159, type, sP18: (term > $o) > $o).
% 5.84/2.07  thf(func_def_160, type, sP19: (term > $o) > subst > $o).
% 5.84/2.07  thf(func_def_161, type, sP20: (term > $o) > $o).
% 5.84/2.07  thf(func_def_162, type, sP21: (term > $o) > $o).
% 5.84/2.07  thf(func_def_163, type, sP22: (term > $o) > $o).
% 5.84/2.07  thf(func_def_166, type, sP25: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_167, type, sP26: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_169, type, sP28: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_170, type, sP29: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_171, type, sP30: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_173, type, sP32: (term > $o) > $o).
% 5.84/2.07  thf(func_def_174, type, sP33: (term > $o) > $o).
% 5.84/2.07  thf(func_def_177, type, sP36: (term > $o) > $o).
% 5.84/2.07  thf(func_def_178, type, sP37: (term > $o) > $o).
% 5.84/2.07  thf(func_def_184, type, sP43: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_185, type, sP44: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_186, type, sP45: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_187, type, sP46: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_190, type, sP49: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_192, type, sP51: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_194, type, sP53: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_196, type, sP55: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_197, type, sP56: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_198, type, sP57: term > (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_199, type, sP58: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_200, type, sP59: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_201, type, sP60: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_202, type, sP61: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_203, type, sP62: (term > $o) > $o).
% 5.84/2.07  thf(func_def_204, type, sP63: (term > $o) > $o).
% 5.84/2.07  thf(func_def_205, type, sP64: (term > $o) > $o).
% 5.84/2.07  thf(func_def_206, type, sP65: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_207, type, sP66: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_212, type, sP71: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_213, type, sP72: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_214, type, sP73: (term > $o) > term > $o).
% 5.84/2.07  thf(func_def_216, type, sP75: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_217, type, sP76: (term > $o) > $o).
% 5.84/2.07  thf(func_def_218, type, sP77: (term > $o) > $o).
% 5.84/2.07  thf(func_def_219, type, sP78: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_220, type, sP79: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_224, type, sP83: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_225, type, sP84: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_226, type, sP85: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_228, type, sP87: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_230, type, sP89: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_232, type, sP91: (term > $o) > $o).
% 5.84/2.07  thf(func_def_233, type, sP92: (term > $o) > $o).
% 5.84/2.07  thf(func_def_235, type, sP94: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_236, type, sP95: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_237, type, sP96: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_238, type, sP97: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_240, type, sP99: (term > $o) > $o).
% 5.84/2.07  thf(func_def_241, type, sP100: (term > $o) > $o).
% 5.84/2.07  thf(func_def_242, type, sP101: (term > $o) > $o).
% 5.84/2.07  thf(func_def_243, type, sP102: (term > $o) > $o).
% 5.84/2.07  thf(func_def_246, type, sP105: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_247, type, sP106: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_249, type, sP108: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_250, type, sP109: term > (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_251, type, sP110: (subst > term > subst > $o) > $o).
% 5.84/2.07  thf(func_def_255, type, sK114: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_256, type, sK115: term > $o).
% 5.84/2.07  thf(func_def_257, type, sK116: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_258, type, sK117: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_259, type, sK118: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_260, type, sK119: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_261, type, sK120: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_262, type, sK121: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_263, type, sK122: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_264, type, sK123: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_265, type, sK124: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_266, type, sK125: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_267, type, sK126: (term > $o) > term).
% 5.84/2.07  thf(func_def_268, type, sK127: (term > $o) > term).
% 5.84/2.07  thf(func_def_269, type, sK128: term).
% 5.84/2.07  thf(func_def_270, type, sK129: term).
% 5.84/2.07  thf(func_def_271, type, sK130: term).
% 5.84/2.07  thf(func_def_272, type, sK131: term).
% 5.84/2.07  thf(func_def_273, type, sK132: term).
% 5.84/2.07  thf(func_def_274, type, sK133: term).
% 5.84/2.07  thf(func_def_275, type, sK134: term).
% 5.84/2.07  thf(func_def_276, type, sK135: term).
% 5.84/2.07  thf(func_def_277, type, sK136: term).
% 5.84/2.07  thf(func_def_278, type, sK137: term).
% 5.84/2.07  thf(func_def_279, type, sK138: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_280, type, sK139: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_281, type, sK140: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_282, type, sK141: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_283, type, sK142: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_284, type, sK143: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_285, type, sK144: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_286, type, sK145: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_287, type, sK146: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_288, type, sK147: term > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_289, type, sK148: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_290, type, sK149: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_291, type, sK150: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_292, type, sK151: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_293, type, sK152: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_294, type, sK153: term).
% 5.84/2.07  thf(func_def_295, type, sK154: term).
% 5.84/2.07  thf(func_def_296, type, sK155: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_297, type, sK156: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_298, type, sK157: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_299, type, sK158: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_300, type, sK159: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_301, type, sK160: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_302, type, sK161: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_303, type, sK162: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_304, type, sK163: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_305, type, sK164: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_306, type, sK165: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_307, type, sK166: (term > $o) > term).
% 5.84/2.07  thf(func_def_308, type, sK167: term > $o).
% 5.84/2.07  thf(func_def_309, type, sK168: term).
% 5.84/2.07  thf(func_def_310, type, sK169: term).
% 5.84/2.07  thf(func_def_311, type, sK170: term > $o).
% 5.84/2.07  thf(func_def_312, type, sK171: subst).
% 5.84/2.07  thf(func_def_313, type, sK172: subst > (term > $o) > term).
% 5.84/2.07  thf(func_def_314, type, sK173: (term > $o) > term).
% 5.84/2.07  thf(func_def_315, type, sK174: (term > $o) > term).
% 5.84/2.07  thf(func_def_316, type, sK175: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_317, type, sK176: (term > $o) > term).
% 5.84/2.07  thf(func_def_318, type, sK177: (term > $o) > term).
% 5.84/2.07  thf(func_def_319, type, sK178: (term > $o) > term).
% 5.84/2.07  thf(func_def_320, type, sK179: (term > $o) > term).
% 5.84/2.07  thf(func_def_321, type, sK180: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_322, type, sK181: term).
% 5.84/2.07  thf(func_def_323, type, sK182: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_324, type, sK183: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_325, type, sK184: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_326, type, sK185: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_327, type, sK186: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_328, type, sK187: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_329, type, sK188: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_330, type, sK189: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_331, type, sK190: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_332, type, sK191: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_333, type, sK192: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_334, type, sK193: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_335, type, sK194: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_336, type, sK195: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_337, type, sK196: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_338, type, sK197: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_339, type, sK198: subst).
% 5.84/2.07  thf(func_def_340, type, sK199: term).
% 5.84/2.07  thf(func_def_341, type, sK200: term > $o).
% 5.84/2.07  thf(func_def_342, type, sK201: (term > $o) > subst > term).
% 5.84/2.07  thf(func_def_343, type, sK202: (term > $o) > term).
% 5.84/2.07  thf(func_def_344, type, sK203: (term > $o) > term).
% 5.84/2.07  thf(func_def_345, type, sK204: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_346, type, sK205: (term > $o) > term).
% 5.84/2.07  thf(func_def_347, type, sK206: term).
% 5.84/2.07  thf(func_def_348, type, sK207: term > $o).
% 5.84/2.07  thf(func_def_349, type, sK208: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_350, type, sK209: (term > $o) > term > term).
% 5.84/2.07  thf(func_def_351, type, sK210: (subst > term > subst > $o) > (term > $o) > term).
% 5.84/2.07  thf(func_def_352, type, sK211: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_353, type, sK212: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_354, type, sK213: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_355, type, sK214: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_356, type, sK215: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_357, type, sK216: term).
% 5.84/2.07  thf(func_def_358, type, sK217: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_359, type, sK218: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_360, type, sK219: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_361, type, sK220: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_362, type, sK221: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_363, type, sK222: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_364, type, sK223: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_365, type, sK224: term).
% 5.84/2.07  thf(func_def_366, type, sK225: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_367, type, sK226: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_368, type, sK227: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_369, type, sK228: term > (subst > term > term) > term).
% 5.84/2.07  thf(func_def_370, type, sK229: term > (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_371, type, sK230: term > (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_372, type, sK231: term > (subst > term > term) > term).
% 5.84/2.07  thf(func_def_373, type, sK232: term > (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_374, type, sK233: term > (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_375, type, sK234: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_376, type, sK235: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_377, type, sK236: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_378, type, sK237: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_379, type, sK238: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_380, type, sK239: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_381, type, sK240: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_382, type, sK241: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_383, type, sK242: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_384, type, sK243: (term > $o) > term).
% 5.84/2.07  thf(func_def_385, type, sK244: term > $o).
% 5.84/2.07  thf(func_def_386, type, sK245: term).
% 5.84/2.07  thf(func_def_387, type, sK246: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_388, type, sK247: (term > $o) > term > term).
% 5.84/2.07  thf(func_def_389, type, sK248: term).
% 5.84/2.07  thf(func_def_390, type, sK249: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_391, type, sK250: term > $o).
% 5.84/2.07  thf(func_def_392, type, sK251: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_393, type, sK252: term).
% 5.84/2.07  thf(func_def_394, type, sK253: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_395, type, sK254: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_396, type, sK255: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_397, type, sK256: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_398, type, sK257: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_399, type, sK258: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_400, type, sK259: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_401, type, sK260: (term > $o) > term).
% 5.84/2.07  thf(func_def_402, type, sK261: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_403, type, sK262: (term > $o) > term).
% 5.84/2.07  thf(func_def_404, type, sK263: (term > $o) > term).
% 5.84/2.07  thf(func_def_405, type, sK264: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_406, type, sK265: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_407, type, sK266: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_408, type, sK267: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_409, type, sK268: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_410, type, sK269: term > $o).
% 5.84/2.07  thf(func_def_411, type, sK270: term).
% 5.84/2.07  thf(func_def_412, type, sK271: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_413, type, sK272: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_414, type, sK273: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_415, type, sK274: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_416, type, sK275: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_417, type, sK276: (subst > term > subst > $o) > (term > $o) > term).
% 5.84/2.07  thf(func_def_418, type, sK277: (term > $o) > term > term).
% 5.84/2.07  thf(func_def_419, type, sK278: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_420, type, sK279: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_421, type, sK280: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_422, type, sK281: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_423, type, sK282: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_424, type, sK283: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_425, type, sK284: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_426, type, sK285: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_427, type, sK286: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_428, type, sK287: term > $o).
% 5.84/2.07  thf(func_def_429, type, sK288: term).
% 5.84/2.07  thf(func_def_430, type, sK289: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_431, type, sK290: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_432, type, sK291: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_433, type, sK292: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_434, type, sK293: term).
% 5.84/2.07  thf(func_def_435, type, sK294: term).
% 5.84/2.07  thf(func_def_436, type, sK295: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_437, type, sK296: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_438, type, sK297: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_439, type, sK298: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_440, type, sK299: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_441, type, sK300: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_442, type, sK301: term).
% 5.84/2.07  thf(func_def_443, type, sK302: term).
% 5.84/2.07  thf(func_def_444, type, sK303: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_445, type, sK304: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_446, type, sK305: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_447, type, sK306: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_448, type, sK307: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_449, type, sK308: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_450, type, sK309: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_451, type, sK310: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_452, type, sK311: (term > $o) > term).
% 5.84/2.07  thf(func_def_453, type, sK312: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_454, type, sK313: (term > $o) > term).
% 5.84/2.07  thf(func_def_455, type, sK314: (term > $o) > term).
% 5.84/2.07  thf(func_def_456, type, sK315: (term > $o) > term).
% 5.84/2.07  thf(func_def_457, type, sK316: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_458, type, sK317: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_459, type, sK318: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_460, type, sK319: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_461, type, sK320: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_462, type, sK321: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_463, type, sK322: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_464, type, sK323: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_465, type, sK324: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_466, type, sK325: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_467, type, sK326: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_468, type, sK327: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_469, type, sK328: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_470, type, sK329: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_471, type, sK330: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_472, type, sK331: term > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_473, type, sK332: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_474, type, sK333: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_475, type, sK334: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_476, type, sK335: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_477, type, sK336: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_478, type, sK337: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_479, type, sK338: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_480, type, sK339: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_481, type, sK340: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_482, type, sK341: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_483, type, sK342: term).
% 5.84/2.07  thf(func_def_484, type, sK343: term > $o).
% 5.84/2.07  thf(func_def_485, type, sK344: (term > $o) > term > term).
% 5.84/2.07  thf(func_def_486, type, sK345: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_487, type, sK346: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_488, type, sK347: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_489, type, sK348: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_490, type, sK349: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_491, type, sK350: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_492, type, sK351: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_493, type, sK352: term).
% 5.84/2.07  thf(func_def_494, type, sK353: term > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_495, type, sK354: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_496, type, sK355: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_497, type, sK356: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_498, type, sK357: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_499, type, sK358: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_500, type, sK359: term).
% 5.84/2.07  thf(func_def_501, type, sK360: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_502, type, sK361: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_503, type, sK362: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_504, type, sK363: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_505, type, sK364: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_506, type, sK365: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_507, type, sK366: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_508, type, sK367: term > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_509, type, sK368: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_510, type, sK369: term).
% 5.84/2.07  thf(func_def_511, type, sK370: term).
% 5.84/2.07  thf(func_def_512, type, sK371: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_513, type, sK372: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_514, type, sK373: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_515, type, sK374: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_516, type, sK375: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_517, type, sK376: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_518, type, sK377: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_519, type, sK378: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_520, type, sK379: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_521, type, sK380: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_522, type, sK381: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_523, type, sK382: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_524, type, sK383: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_525, type, sK384: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_526, type, sK385: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_527, type, sK386: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_528, type, sK387: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_529, type, sK388: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_530, type, sK389: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_531, type, sK390: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_532, type, sK391: term).
% 5.84/2.07  thf(func_def_533, type, sK392: term).
% 5.84/2.07  thf(func_def_534, type, sK393: term).
% 5.84/2.07  thf(func_def_535, type, sK394: term).
% 5.84/2.07  thf(func_def_536, type, sK395: term).
% 5.84/2.07  thf(func_def_537, type, sK396: term).
% 5.84/2.07  thf(func_def_538, type, sK397: term).
% 5.84/2.07  thf(func_def_539, type, sK398: term).
% 5.84/2.07  thf(func_def_540, type, sK399: term).
% 5.84/2.07  thf(func_def_541, type, sK400: term).
% 5.84/2.07  thf(func_def_542, type, sK401: term).
% 5.84/2.07  thf(func_def_543, type, sK402: subst).
% 5.84/2.07  thf(func_def_544, type, sK403: subst).
% 5.84/2.07  thf(func_def_545, type, sK404: term).
% 5.84/2.07  thf(func_def_546, type, sK405: subst > term > term).
% 5.84/2.07  thf(func_def_547, type, sK406: subst > term > term).
% 5.84/2.07  thf(func_def_548, type, sK407: term).
% 5.84/2.07  thf(func_def_549, type, sK408: subst).
% 5.84/2.07  thf(func_def_550, type, sK409: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_551, type, sK410: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_552, type, sK411: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_553, type, sK412: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_554, type, sK413: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_555, type, sK414: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_556, type, sK415: term > $o).
% 5.84/2.07  thf(func_def_557, type, sK416: term).
% 5.84/2.07  thf(func_def_558, type, sK417: (term > $o) > term).
% 5.84/2.07  thf(func_def_559, type, sK418: (term > $o) > term).
% 5.84/2.07  thf(func_def_560, type, sK419: (term > $o) > term).
% 5.84/2.07  thf(func_def_561, type, sK420: (term > $o) > term).
% 5.84/2.07  thf(func_def_562, type, sK421: subst).
% 5.84/2.07  thf(func_def_563, type, sK422: subst).
% 5.84/2.07  thf(func_def_564, type, sK423: subst).
% 5.84/2.07  thf(func_def_565, type, sK424: subst).
% 5.84/2.07  thf(func_def_566, type, sK425: term).
% 5.84/2.07  thf(func_def_567, type, sK426: term > $o).
% 5.84/2.07  thf(func_def_568, type, sK427: (term > $o) > term).
% 5.84/2.07  thf(func_def_569, type, sK428: (term > $o) > term).
% 5.84/2.07  thf(func_def_570, type, sK429: (term > $o) > term).
% 5.84/2.07  thf(func_def_571, type, sK430: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_572, type, sK431: (term > $o) > term).
% 5.84/2.07  thf(func_def_573, type, sK432: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_574, type, sK433: term > $o).
% 5.84/2.07  thf(func_def_575, type, sK434: term).
% 5.84/2.07  thf(func_def_576, type, sK435: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_577, type, sK436: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_578, type, sK437: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_579, type, sK438: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_580, type, sK439: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_581, type, sK440: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_582, type, sK441: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_583, type, sK442: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_584, type, sK443: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_585, type, sK444: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_586, type, sK445: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_587, type, sK446: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_588, type, sK447: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_589, type, sK448: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_590, type, sK449: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_591, type, sK450: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_592, type, sK451: term > $o).
% 5.84/2.07  thf(func_def_593, type, sK452: term).
% 5.84/2.07  thf(func_def_594, type, sK453: term).
% 5.84/2.07  thf(func_def_595, type, sK454: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_596, type, sK455: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_597, type, sK456: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_598, type, sK457: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_599, type, sK458: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_600, type, sK459: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_601, type, sK460: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_602, type, sK461: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_603, type, sK462: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_604, type, sK463: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_605, type, sK464: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_606, type, sK465: subst).
% 5.84/2.07  thf(func_def_607, type, sK466: term).
% 5.84/2.07  thf(func_def_608, type, sK467: term > $o).
% 5.84/2.07  thf(func_def_609, type, sK468: term).
% 5.84/2.07  thf(func_def_610, type, sK469: term > $o).
% 5.84/2.07  thf(func_def_611, type, sK470: (term > $o) > term).
% 5.84/2.07  thf(func_def_612, type, sK471: (term > $o) > term).
% 5.84/2.07  thf(func_def_613, type, sK472: (term > $o) > term).
% 5.84/2.07  thf(func_def_614, type, sK473: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_615, type, sK474: (term > $o) > term).
% 5.84/2.07  thf(func_def_616, type, sK475: (term > $o) > term).
% 5.84/2.07  thf(func_def_617, type, sK476: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_618, type, sK477: (term > $o) > subst > term).
% 5.84/2.07  thf(func_def_619, type, sK478: (term > $o) > term).
% 5.84/2.07  thf(func_def_620, type, sK479: (term > $o) > term).
% 5.84/2.07  thf(func_def_621, type, sK480: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_622, type, sK481: term).
% 5.84/2.07  thf(func_def_623, type, sK482: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_624, type, sK483: term).
% 5.84/2.07  thf(func_def_625, type, sK484: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_626, type, sK485: (subst > term > subst > $o) > term > term).
% 5.84/2.07  thf(func_def_627, type, sK486: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_628, type, sK487: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_629, type, sK488: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_630, type, sK489: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_631, type, sK490: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_632, type, sK491: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_633, type, sK492: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_634, type, sK493: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_635, type, sK494: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_636, type, sK495: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_637, type, sK496: (term > $o) > term).
% 5.84/2.07  thf(func_def_638, type, sK497: term).
% 5.84/2.07  thf(func_def_639, type, sK498: term > $o).
% 5.84/2.07  thf(func_def_640, type, sK499: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_641, type, sK500: (term > $o) > term > term).
% 5.84/2.07  thf(func_def_642, type, sK501: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_643, type, sK502: term).
% 5.84/2.07  thf(func_def_644, type, sK503: term > $o).
% 5.84/2.07  thf(func_def_645, type, sK504: term).
% 5.84/2.07  thf(func_def_646, type, sK505: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_647, type, sK506: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_648, type, sK507: (term > $o) > term).
% 5.84/2.07  thf(func_def_649, type, sK508: term > (term > $o) > term).
% 5.84/2.07  thf(func_def_650, type, sK509: (term > $o) > term).
% 5.84/2.07  thf(func_def_651, type, sK510: (term > $o) > term).
% 5.84/2.07  thf(func_def_652, type, sK511: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_653, type, sK512: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_654, type, sK513: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_655, type, sK514: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_656, type, sK515: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_657, type, sK516: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_658, type, sK517: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_659, type, sK518: (subst > term > subst > $o) > subst).
% 5.84/2.07  thf(func_def_660, type, sK519: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_661, type, sK520: (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_662, type, sK521: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_663, type, sK522: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_664, type, sK523: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_665, type, sK524: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_666, type, sK525: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_667, type, sK526: (subst > term > subst > $o) > subst > term > term).
% 5.84/2.07  thf(func_def_668, type, sK527: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_669, type, sK528: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_670, type, sK529: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_671, type, sK530: (subst > term > term) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_672, type, sK531: term).
% 5.84/2.07  thf(func_def_673, type, sK532: term).
% 5.84/2.07  thf(func_def_674, type, sK533: term).
% 5.84/2.07  thf(func_def_675, type, sK534: term).
% 5.84/2.07  thf(func_def_676, type, sK535: subst).
% 5.84/2.07  thf(func_def_677, type, sK536: subst).
% 5.84/2.07  thf(func_def_678, type, sK537: term).
% 5.84/2.07  thf(func_def_679, type, sK538: term).
% 5.84/2.07  thf(func_def_680, type, sK539: subst).
% 5.84/2.07  thf(func_def_681, type, sK540: subst).
% 5.84/2.07  thf(func_def_682, type, sK541: term).
% 5.84/2.07  thf(func_def_683, type, sK542: subst).
% 5.84/2.07  thf(func_def_684, type, sK543: term).
% 5.84/2.07  thf(func_def_685, type, sK544: term > $o).
% 5.84/2.07  thf(func_def_686, type, sK545: subst).
% 5.84/2.07  thf(func_def_687, type, sK546: term > $o).
% 5.84/2.07  thf(func_def_688, type, sK547: term).
% 5.84/2.07  thf(func_def_689, type, sK548: term).
% 5.84/2.07  thf(func_def_690, type, sK549: term).
% 5.84/2.07  thf(func_def_691, type, sK550: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_692, type, sK551: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_693, type, sK552: term > subst > term > term).
% 5.84/2.07  thf(func_def_694, type, sK553: (subst > term > subst > $o) > term > $o).
% 5.84/2.07  thf(func_def_695, type, sK554: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_696, type, sK555: (term > $o) > term).
% 5.84/2.07  thf(func_def_697, type, sK556: term > subst > term > term).
% 5.84/2.07  thf(func_def_698, type, sK557: term).
% 5.84/2.07  thf(func_def_699, type, sK558: term).
% 5.84/2.07  thf(func_def_700, type, sK559: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_701, type, sK560: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_702, type, sK561: term).
% 5.84/2.07  thf(func_def_703, type, sK562: term).
% 5.84/2.07  thf(func_def_704, type, sK563: term).
% 5.84/2.07  thf(func_def_705, type, sK564: term).
% 5.84/2.07  thf(func_def_706, type, sK565: term > (term > $o) > subst > (term > $o) > term).
% 5.84/2.07  thf(func_def_707, type, sK566: term > $o).
% 5.84/2.07  thf(func_def_708, type, sK567: subst).
% 5.84/2.07  thf(func_def_709, type, sK568: term > $o).
% 5.84/2.07  thf(func_def_710, type, sK569: term).
% 5.84/2.07  thf(func_def_711, type, sK570: subst).
% 5.84/2.07  thf(func_def_712, type, sK571: term).
% 5.84/2.07  thf(func_def_713, type, sK572: term).
% 5.84/2.07  thf(func_def_714, type, sK573: term).
% 5.84/2.07  thf(func_def_715, type, sK574: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_716, type, sK575: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_717, type, sK576: (term > $o) > term).
% 5.84/2.07  thf(func_def_718, type, sK577: term).
% 5.84/2.07  thf(func_def_719, type, sK578: (subst > term > subst > $o) > term > $o).
% 5.84/2.07  thf(func_def_720, type, sK579: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_721, type, sK580: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_722, type, sK581: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_723, type, sK582: subst > term > term).
% 5.84/2.07  thf(func_def_724, type, sK583: term).
% 5.84/2.07  thf(func_def_725, type, sK584: term).
% 5.84/2.07  thf(func_def_726, type, sK585: term > subst > term > term).
% 5.84/2.07  thf(func_def_727, type, sK586: term).
% 5.84/2.07  thf(func_def_728, type, sK587: term).
% 5.84/2.07  thf(func_def_729, type, sK588: term).
% 5.84/2.07  thf(func_def_730, type, sK589: term).
% 5.84/2.07  thf(func_def_731, type, sK590: term).
% 5.84/2.07  thf(func_def_732, type, sK591: term).
% 5.84/2.07  thf(func_def_733, type, sK592: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_734, type, sK593: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_735, type, sK594: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_736, type, sK595: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_737, type, sK596: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_738, type, sK597: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_739, type, sK598: subst > term > term).
% 5.84/2.07  thf(func_def_740, type, sK599: subst).
% 5.84/2.07  thf(func_def_741, type, sK600: term).
% 5.84/2.07  thf(func_def_742, type, sK601: subst > term > term).
% 5.84/2.07  thf(func_def_743, type, sK602: subst).
% 5.84/2.07  thf(func_def_744, type, sK603: term).
% 5.84/2.07  thf(func_def_745, type, sK604: subst).
% 5.84/2.07  thf(func_def_746, type, sK605: term).
% 5.84/2.07  thf(func_def_747, type, sK606: subst).
% 5.84/2.07  thf(func_def_748, type, sK607: term).
% 5.84/2.07  thf(func_def_749, type, sK608: term).
% 5.84/2.07  thf(func_def_750, type, sK609: term).
% 5.84/2.07  thf(func_def_751, type, sK610: term).
% 5.84/2.07  thf(func_def_752, type, sK611: subst).
% 5.84/2.07  thf(func_def_753, type, sK612: subst).
% 5.84/2.07  thf(func_def_754, type, sK613: term).
% 5.84/2.07  thf(func_def_755, type, sK614: term).
% 5.84/2.07  thf(func_def_756, type, sK615: term).
% 5.84/2.07  thf(func_def_757, type, sK616: term).
% 5.84/2.07  thf(func_def_758, type, sK617: (subst > term > term) > term).
% 5.84/2.07  thf(func_def_759, type, sK618: (subst > term > term) > subst).
% 5.84/2.07  thf(func_def_760, type, sK619: term > subst > term > term).
% 5.84/2.07  thf(func_def_761, type, sK620: (subst > term > subst > $o) > term > $o).
% 5.84/2.07  thf(func_def_762, type, sK621: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_763, type, sK622: (term > $o) > term).
% 5.84/2.07  thf(func_def_764, type, sK623: term > (term > $o) > subst > term > $o).
% 5.84/2.07  thf(func_def_765, type, sK624: subst).
% 5.84/2.07  thf(func_def_766, type, sK625: term > $o).
% 5.84/2.07  thf(func_def_767, type, sK626: term).
% 5.84/2.07  thf(func_def_768, type, sK627: (term > $o) > term).
% 5.84/2.07  thf(func_def_769, type, sK628: subst).
% 5.84/2.07  thf(func_def_770, type, sK629: term).
% 5.84/2.07  thf(func_def_771, type, sK630: term).
% 5.84/2.07  thf(func_def_772, type, sK631: term).
% 5.84/2.07  thf(func_def_773, type, sK632: term).
% 5.84/2.07  thf(func_def_774, type, sK633: term > subst > term > term).
% 5.84/2.07  thf(func_def_775, type, sK634: term).
% 5.84/2.07  thf(func_def_776, type, sK635: term > d_term).
% 5.84/2.07  thf(func_def_777, type, sK636: subst > term > (term > $o) > term > $o).
% 5.84/2.07  thf(func_def_778, type, sK637: term > $o).
% 5.84/2.07  thf(func_def_779, type, sK638: term).
% 5.84/2.07  thf(func_def_780, type, sK639: subst).
% 5.84/2.07  thf(func_def_781, type, sK640: (term > $o) > term).
% 5.84/2.07  thf(func_def_782, type, sK641: term).
% 5.84/2.07  thf(func_def_783, type, sK642: subst).
% 5.84/2.07  thf(func_def_784, type, sK643: term > $o).
% 5.84/2.07  thf(func_def_785, type, sK644: term).
% 5.84/2.07  thf(func_def_786, type, sK645: term > $o).
% 5.84/2.07  thf(func_def_787, type, sK646: (term > $o) > term > (term > $o) > subst > term).
% 5.84/2.07  thf(func_def_788, type, sK647: term).
% 5.84/2.07  thf(func_def_789, type, sK648: subst).
% 5.84/2.07  thf(func_def_790, type, sK649: term).
% 5.84/2.07  thf(func_def_791, type, sK650: subst > term > subst > $o).
% 5.84/2.07  thf(func_def_792, type, sK651: (term > $o) > term).
% 5.84/2.07  thf(func_def_793, type, sK652: (subst > term > subst > $o) > term > $o).
% 5.84/2.07  thf(func_def_794, type, sK653: term > $o).
% 5.84/2.07  thf(func_def_795, type, sK654: term).
% 5.84/2.07  thf(func_def_796, type, sK655: term > $o).
% 5.84/2.07  thf(func_def_797, type, sK656: term).
% 5.84/2.07  thf(func_def_798, type, sK657: subst).
% 5.84/2.07  thf(func_def_799, type, sK658: subst > d_subst).
% 5.84/2.07  thf(func_def_800, type, sK659: term).
% 5.84/2.07  thf(func_def_802, type, sK661: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_803, type, sK662: (term > $o) > (subst > term > subst > $o) > term).
% 5.84/2.07  thf(func_def_805, type, ph663: !>[X0: $tType]:(X0)).
% 5.84/2.07  thf(f5342,plain,(
% 5.84/2.07    $false),
% 5.84/2.07    inference(avatar_sat_refutation,[status(thm)],[f2113,f2254,f2843,f3214,f3284,f4024,f5341])).
% 5.84/2.07  thf(f5341,plain,(
% 5.84/2.07    spl660_83),
% 5.84/2.07    inference(avatar_contradiction_clause,[status(thm)],[f5340])).
% 5.84/2.07  thf(f5340,plain,(
% 5.84/2.07    $false | spl660_83),
% 5.84/2.07    inference(trivial_inequality_removal,[status(thm)],[f5339])).
% 5.84/2.07  thf(f5339,plain,(
% 5.84/2.07    ($true != $true) | spl660_83),
% 5.84/2.07    inference(superposition,[status(thm)],[f2253,f5338])).
% 5.84/2.07  thf(f5338,plain,(
% 5.84/2.07    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true)) )),
% 5.84/2.07    inference(subsumption_resolution,[status(thm)],[f5337,f4085])).
% 5.84/2.07  thf(f4085,plain,(
% 5.84/2.07    ( ! [X0 : term > $o] : (($true = (X0 @ (d2term @ d_one))) | ((sP0 @ X0) = $true)) )),
% 5.84/2.07    inference(forward_demodulation,[status(thm)],[f783,f3913])).
% 5.84/2.07  thf(f3913,plain,(
% 5.84/2.07    ( ! [X213 : term] : (((d2term @ d_one) = X213)) )),
% 5.84/2.07    inference(forward_demodulation,[status(thm)],[f1339,f1306])).
% 5.84/2.07  thf(f1306,plain,(
% 5.84/2.07    ( ! [X263 : d_term] : ((d_one = X263)) )),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f767])).
% 5.84/2.07  thf(f767,plain,(
% 5.84/2.07    (($true = sP113) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP113)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & (($true = sP111) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP111)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP107) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP107)) & ((hoasapinj1 = $true) | ((sK531 != sK534) & ((ap @ (sub @ sK534 @ id) @ sK533) = (ap @ (sub @ sK531 @ id) @ sK532)))) & (! [X4 : term,X5 : term,X6 : term,X7 : term] : ((X4 = X7) | ((ap @ (sub @ X4 @ id) @ X5) != (ap @ (sub @ X7 @ id) @ X6))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & ((induction2lem_lthm = $true) | (($true != sP103) & ! [X8 : subst] : ((comp @ X8 @ id) = X8) & ($true != sP104) & ! [X9 : subst,X10 : term] : ((sub @ one @ (push @ X10 @ X9)) = X10) & ! [X11 : term,X12 : subst] : ((comp @ sh @ (push @ X11 @ X12)) = X12))) & (($true = sP103) | (sK535 != (comp @ sK535 @ id)) | ($true = sP104) | (sK537 != (sub @ one @ (push @ sK537 @ sK536))) | (sK539 != (comp @ sh @ (push @ sK538 @ sK539))) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP98) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP98)) & (hoasinduction_lem1 = $true) & (pushprop = $true) & (($true = sP93) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP93)) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & ((sK541 != (sub @ one @ (push @ sK541 @ sK540))) | ! [X20 : term > $o,X21 : subst,X22 : term > $o,X23 : term,X24 : term] : (($true != (X22 @ X23)) | ($true = (X20 @ (sub @ X23 @ (push @ X24 @ X21))))) | ((comp @ sh @ (push @ sK543 @ sK542)) != sK542) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X27 : subst,X28 : term] : ((sub @ one @ (push @ X28 @ X27)) = X28) & (($true = (sK546 @ sK547)) & ($true != (sK544 @ (sub @ sK547 @ (push @ sK548 @ sK545))))) & ! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34))) & (ulamvarind = $true) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X37 : subst > term > term] : ((sub @ sK549 @ (push @ (sK551 @ X37) @ (sK550 @ X37))) != (X37 @ (sK550 @ X37) @ (sK551 @ X37)))) & (! [X40 : term] : ! [X42 : subst,X43 : term] : ((sK552 @ X40 @ X42 @ X43) = (sub @ X40 @ (push @ X43 @ X42))) | (hoasinduction_lem3v2_f_lthm != $true)) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & (! [X44 : subst > term > subst > $o] : ! [X46 : term] : ((sK553 @ X44 @ X46) = (X44 @ id @ X46 @ id)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X48 : term > $o] : ((sK554 @ id @ (sK555 @ X48) @ id) != (X48 @ (sK555 @ X48)))) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X50 : term] : ((sub @ X50 @ id) = X50) & ! [X51 : term] : ! [X53 : subst,X54 : term] : ((sub @ X51 @ (push @ X54 @ X53)) = (sK556 @ X51 @ X53 @ X54)) & ($true != sP90))) & ((sK557 != (sub @ sK557 @ id)) | ! [X57 : subst > term > term] : ((X57 @ (sK559 @ X57) @ (sK560 @ X57)) != (sub @ sK558 @ (push @ (sK560 @ X57) @ (sK559 @ X57)))) | ($true = sP90) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & (($true = sP88) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP88)) & (hoasinduction_lem1v2 = $true) & (! [X60 : term,X61 : term,X62 : term,X63 : term] : ((X62 = X63) | ((ap @ (sub @ X60 @ id) @ X62) != (ap @ (sub @ X61 @ id) @ X63))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ((sK563 != sK564) & ((ap @ (sub @ sK562 @ id) @ sK564) = (ap @ (sub @ sK561 @ id) @ sK563)))) & (! [X68 : term > $o,X69 : subst,X70 : term > $o,X71 : term] : (((X68 @ (sub @ (sK565 @ X71 @ X70 @ X69 @ X68) @ (push @ X71 @ X69))) != (X70 @ (sK565 @ X71 @ X70 @ X69 @ X68))) | ((X68 @ X71) != $true) | ($true = (X70 @ one))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | (! [X77 : term] : ((sK568 @ X77) = (sK566 @ (sub @ X77 @ (push @ sK569 @ sK567)))) & ($true = (sK566 @ sK569)) & ($true != (sK568 @ one)))) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & (! [X78 : subst] : ((comp @ X78 @ id) = X78) | (axidr != $true)) & ((axidr = $true) | ((comp @ sK570 @ id) != sK570)) & (! [X80 : term,X81 : term] : (((lam @ X80) != (lam @ X81)) | (X80 = X81)) | (laminj != $true)) & ((laminj = $true) | (((lam @ sK571) = (lam @ sK572)) & (sK572 != sK571))) & ((hoasinduction_lem3aaa = $true) | ($true != sP86)) & (($true = sP86) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_no_psi_cond = $true) | (($true != (sP84 @ sK574)) & ($true != (sP83 @ sK574)) & ($true != (sK574 @ id @ sK573 @ id)))) & (! [X86 : term,X87 : subst > term > subst > $o] : (($true = (sP84 @ X87)) | ($true = (sP83 @ X87)) | ($true = (X87 @ id @ X86 @ id))) | (hoasinduction_no_psi_cond != $true)) & (! [X89 : term > $o] : ((X89 @ (sK576 @ X89)) != (sK575 @ id @ (sK576 @ X89) @ id)) | (sP80 = $true) | ($true = sP82) | ($true = sP81) | ((sub @ sK577 @ id) != sK577) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X92 : subst > term > subst > $o] : ! [X94 : term] : ((X92 @ id @ X94 @ id) = (sK578 @ X92 @ X94)) & (sP80 != $true) & ($true != sP82) & ($true != sP81) & ! [X95 : term] : ((sub @ X95 @ id) = X95))) & (! [X96 : subst > term > term,X97 : term,X98 : term] : (((lam @ (X96 @ sh @ one)) != (ap @ (sub @ X97 @ id) @ X98)) | ((sub @ (X96 @ (sK581 @ X96) @ (sK579 @ X96)) @ (sK580 @ X96)) != (X96 @ (comp @ (sK581 @ X96) @ (sK580 @ X96)) @ (sub @ (sK579 @ X96) @ (sK580 @ X96))))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | (((ap @ (sub @ sK583 @ id) @ sK584) = (lam @ (sK582 @ sh @ one))) & ! [X105 : term,X106 : subst,X107 : subst] : ((sK582 @ (comp @ X107 @ X106) @ (sub @ X105 @ X106)) = (sub @ (sK582 @ X107 @ X105) @ X106)))) & (($true = sP74) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP74)) & (hoasapnotvar = $true) & (axabs = $true) & (($true = sP69) | ($true = sP70) | ($true = sP67) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP69) & ($true != sP70) & ($true != sP67) & ($true != sP68))) & (axmap = $true) & (! [X108 : term] : ((sub @ X108 @ (push @ one @ sh)) = (sK585 @ X108 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ! [X111 : subst > term > term] : ((X111 @ sh @ one) != (sub @ sK586 @ (push @ one @ sh)))) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3v2a = $true) | ($true != sP54)) & (($true = sP54) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((apinj1 = $true) | ((sK587 != sK588) & ((ap @ sK588 @ sK589) = (ap @ sK587 @ sK590)))) & (! [X116 : term,X117 : term,X118 : term,X119 : term] : ((X116 = X117) | ((ap @ X116 @ X119) != (ap @ X117 @ X118))) | (apinj1 != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3aa != $true)) & ! [X120 : d_subst] : (d_id = X120) & ((hoasinduction_lem3_lthm = $true) | (($true != sP48) & ($true != sP47) & ! [X121 : term] : ((sub @ X121 @ id) = X121))) & (($true = sP48) | ($true = sP47) | ((sub @ sK591 @ id) != sK591) | (hoasinduction_lem3_lthm != $true)) & (pushprop_lem3v2 = $true) & ! [X123 : d_term,X124 : d_term] : ((X123 = X124) | ((d2term @ X124) != (d2term @ X123))) & (! [X125 : subst > term > term,X126 : subst,X127 : term,X128 : subst > term > term] : (((X125 @ X126 @ X127) = (X128 @ X126 @ X127)) | ((X125 @ (comp @ (sK592 @ X125) @ (sK593 @ X125)) @ (sub @ (sK594 @ X125) @ (sK593 @ X125))) != (sub @ (X125 @ (sK592 @ X125) @ (sK594 @ X125)) @ (sK593 @ X125))) | ((sub @ (X128 @ (sK595 @ X128) @ (sK597 @ X128)) @ (sK596 @ X128)) != (X128 @ (comp @ (sK595 @ X128) @ (sK596 @ X128)) @ (sub @ (sK597 @ X128) @ (sK596 @ X128)))) | ((lam @ (X125 @ sh @ one)) != (lam @ (X128 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (((sK598 @ sK599 @ sK600) != (sK601 @ sK599 @ sK600)) & ! [X139 : subst,X140 : subst,X141 : term] : ((sub @ (sK598 @ X139 @ X141) @ X140) = (sK598 @ (comp @ X139 @ X140) @ (sub @ X141 @ X140))) & ! [X142 : subst,X143 : subst,X144 : term] : ((sK601 @ (comp @ X142 @ X143) @ (sub @ X144 @ X143)) = (sub @ (sK601 @ X142 @ X144) @ X143)) & ((lam @ (sK601 @ sh @ one)) = (lam @ (sK598 @ sh @ one))))) & (hoasinduction_lem1_lthm = $true) & ((axshiftcons = $true) | ((comp @ sh @ (push @ sK603 @ sK602)) != sK602)) & (! [X147 : subst,X148 : term] : ((comp @ sh @ (push @ X148 @ X147)) = X147) | (axshiftcons != $true)) & (($true = sP42) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP42)) & (ulamvar1 != $true) & (($true = sP40) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP40)) & (! [X149 : subst,X150 : term] : ((sub @ one @ (push @ X150 @ X149)) = X150) | (axvarcons != $true)) & ((axvarcons = $true) | ((sub @ one @ (push @ sK605 @ sK604)) != sK605)) & (hoasinduction_lem2v2_gthm = $true) & (! [X153 : subst] : ((comp @ id @ X153) = X153) | (axidl != $true)) & ((axidl = $true) | (sK606 != (comp @ id @ sK606))) & ((apinj2 = $true) | ((sK607 != sK610) & ((ap @ sK608 @ sK607) = (ap @ sK609 @ sK610)))) & (! [X159 : term,X160 : term,X161 : term,X162 : term] : ((X159 = X162) | ((ap @ X161 @ X162) != (ap @ X160 @ X159))) | (apinj2 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & ((substmonoid = $true) | ((comp @ id @ sK611) != sK611) | ((comp @ sK612 @ id) != sK612)) & ((! [X165 : subst] : ((comp @ id @ X165) = X165) & ! [X166 : subst] : ((comp @ X166 @ id) = X166)) | (substmonoid != $true)) & ((axvarid = $true) | ((sub @ sK613 @ id) != sK613)) & (! [X168 : term] : ((sub @ X168 @ id) = X168) | (axvarid != $true)) & ((termmset_lthm = $true) | (! [X169 : term] : ((sub @ X169 @ id) = X169) & ((sub @ sK614 @ id) != sK614))) & (((sub @ sK615 @ id) != sK615) | ! [X172 : term] : ((sub @ X172 @ id) = X172) | (termmset_lthm != $true)) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((hoasinduction_lem3v2_f = $true) | ! [X174 : subst > term > term] : ((X174 @ (sK618 @ X174) @ (sK617 @ X174)) != (sub @ sK616 @ (push @ (sK617 @ X174) @ (sK618 @ X174))))) & (! [X177 : term] : ! [X179 : term,X180 : subst] : ((sub @ X177 @ (push @ X179 @ X180)) = (sK619 @ X177 @ X180 @ X179)) | (hoasinduction_lem3v2_f != $true)) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (! [X181 : subst > term > subst > $o] : ! [X183 : term] : ((sK620 @ X181 @ X183) = (X181 @ id @ X183 @ id)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ! [X185 : term > $o] : ((X185 @ (sK622 @ X185)) != (sK621 @ id @ (sK622 @ X185) @ id))) & ((substmonoid_lthm = $true) | ($true != sP35)) & (($true = sP35) | (substmonoid_lthm != $true)) & (hoasapnotvar_lthm = $true) & (! [X187 : subst,X188 : term > $o,X189 : term] : ! [X191 : term] : ((sK623 @ X189 @ X188 @ X187 @ X191) = (X188 @ (sub @ X191 @ (push @ X189 @ X187)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X195 : term > $o] : ((X195 @ (sK627 @ X195)) != (sK625 @ (sub @ (sK627 @ X195) @ (push @ sK626 @ sK624))))) & (axvarshift = $true) & (! [X197 : subst] : ((push @ (sub @ one @ X197) @ (comp @ sh @ X197)) = X197) | (axscons != $true)) & ((axscons = $true) | ((push @ (sub @ one @ sK628) @ (comp @ sh @ sK628)) != sK628)) & (($true = sP34) | (induction2 != $true)) & ((induction2 = $true) | ($true != sP34)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X199 : term] : ((sub @ X199 @ id) = X199) & ($true != sP31))) & ((sK629 != (sub @ sK629 @ id)) | ($true = sP31) | (hoasinduction_lem3v2_lthm != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X201 : d_subst,X202 : d_subst] : (((d2subst @ X202) != (d2subst @ X201)) | (X201 = X202)) & ((hoasinduction_lem2v2 = $true) | ($true != sP27)) & (($true = sP27) | (hoasinduction_lem2v2 != $true)) & ((shinj = $true) | ((sK631 != sK630) & ((sub @ sK630 @ sh) = (sub @ sK631 @ sh)))) & (! [X205 : term,X206 : term] : ((X205 = X206) | ((sub @ X206 @ sh) != (sub @ X205 @ sh))) | (shinj != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ! [X208 : subst > term > term] : ((X208 @ sh @ one) != (sub @ sK632 @ (push @ one @ sh)))) & (! [X209 : term] : ((sK633 @ X209 @ sh @ one) = (sub @ X209 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & (axassoc = $true) & (($true = sP23) | (sK634 != (sub @ sK634 @ id)) | (sP24 = $true) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | (($true != sP23) & ! [X212 : term] : ((sub @ X212 @ id) = X212) & (sP24 != $true))) & ! [X213 : term] : ((d2term @ (sK635 @ X213)) = X213) & (! [X215 : term > $o,X216 : term,X217 : subst] : ! [X219 : term] : ((X215 @ (sub @ X219 @ (push @ X216 @ X217))) = (sK636 @ X217 @ X216 @ X215 @ X219)) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ! [X223 : term > $o] : ((X223 @ (sK640 @ X223)) != (sK637 @ (sub @ (sK640 @ X223) @ (push @ sK638 @ sK639))))) & (($true = sP17) | ((sub @ sK641 @ id) != sK641) | ($true = sP16) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP17) & ! [X226 : term] : ((sub @ X226 @ id) = X226) & ($true != sP16))) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & ((pushprop_lem1v2_lthm = $true) | ((($true != (sK645 @ one)) & ! [X231 : term] : ((sK645 @ X231) = (sK643 @ (sub @ X231 @ (push @ sK644 @ sK642)))) & ($true = (sK643 @ sK644))) & ! [X232 : term,X233 : subst] : ((sub @ one @ (push @ X232 @ X233)) = X232))) & (! [X234 : subst,X235 : term > $o,X236 : term,X237 : term > $o] : (($true = (X237 @ one)) | ((X235 @ (sub @ (sK646 @ X237 @ X236 @ X235 @ X234) @ (push @ X236 @ X234))) != (X237 @ (sK646 @ X237 @ X236 @ X235 @ X234))) | ($true != (X235 @ X236))) | (sK647 != (sub @ one @ (push @ sK647 @ sK648))) | (pushprop_lem1v2_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (((sub @ sK649 @ id) != sK649) | ($true = sP13) | ($true = sP11) | ! [X243 : term > $o] : ((X243 @ (sK651 @ X243)) != (sK650 @ id @ (sK651 @ X243) @ id)) | ($true = sP12) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X245 : term] : ((sub @ X245 @ id) = X245) & ($true != sP13) & ($true != sP11) & ! [X246 : subst > term > subst > $o] : ! [X248 : term] : ((sK652 @ X246 @ X248) = (X246 @ id @ X248 @ id)) & ($true != sP12))) & (hoasapinj2_gthm = $true) & (! [X249 : term > $o,X250 : term,X251 : term > $o,X252 : term,X253 : subst] : (($true = (X251 @ (sub @ X250 @ (push @ X252 @ X253)))) | ($true != (X249 @ X250))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | (($true != (sK655 @ (sub @ sK654 @ (push @ sK656 @ sK657)))) & ($true = (sK653 @ sK654)))) & ! [X259 : subst] : ((d2subst @ (sK658 @ X259)) = X259) & (axapp = $true) & (termmset_gthm = $true) & ((termmset = $true) | (sK659 != (sub @ sK659 @ id))) & (! [X262 : term] : ((sub @ X262 @ id) = X262) | (termmset != $true)) & ! [X263 : d_term] : (d_one = X263) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK650,sK651,sK652,sK653,sK654,sK655,sK656,sK657,sK658,sK659])],[f691,f766,f765,f764,f763,f762,f761,f760,f759,f758,f757,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])).
% 5.84/2.07  thf(f692,plain,(
% 5.84/2.07    ? [X0 : term,X1 : term,X2 : term,X3 : term] : ((X0 != X3) & ((ap @ (sub @ X0 @ id) @ X1) = (ap @ (sub @ X3 @ id) @ X2))) => ((sK531 != sK534) & ((ap @ (sub @ sK534 @ id) @ sK533) = (ap @ (sub @ sK531 @ id) @ sK532)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f693,plain,(
% 5.84/2.07    ? [X13 : subst] : ((comp @ X13 @ id) != X13) => (sK535 != (comp @ sK535 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f694,plain,(
% 5.84/2.07    ? [X14 : subst,X15 : term] : ((sub @ one @ (push @ X15 @ X14)) != X15) => (sK537 != (sub @ one @ (push @ sK537 @ sK536)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f695,plain,(
% 5.84/2.07    ? [X16 : term,X17 : subst] : ((comp @ sh @ (push @ X16 @ X17)) != X17) => (sK539 != (comp @ sh @ (push @ sK538 @ sK539)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f696,plain,(
% 5.84/2.07    ? [X18 : subst,X19 : term] : ((sub @ one @ (push @ X19 @ X18)) != X19) => (sK541 != (sub @ one @ (push @ sK541 @ sK540)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f697,plain,(
% 5.84/2.07    ? [X25 : subst,X26 : term] : ((comp @ sh @ (push @ X26 @ X25)) != X25) => ((comp @ sh @ (push @ sK543 @ sK542)) != sK542)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f698,plain,(
% 5.84/2.07    ? [X29 : term > $o,X30 : subst,X31 : term > $o,X32 : term,X33 : term] : (($true = (X31 @ X32)) & ($true != (X29 @ (sub @ X32 @ (push @ X33 @ X30))))) => (($true = (sK546 @ sK547)) & ($true != (sK544 @ (sub @ sK547 @ (push @ sK548 @ sK545)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f699,plain,(
% 5.84/2.07    ? [X36 : term] : ! [X37 : subst > term > term] : ? [X38 : subst,X39 : term] : ((X37 @ X38 @ X39) != (sub @ X36 @ (push @ X39 @ X38))) => ! [X37 : subst > term > term] : ? [X39 : term,X38 : subst] : ((X37 @ X38 @ X39) != (sub @ sK549 @ (push @ X39 @ X38)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f700,plain,(
% 5.84/2.07    ! [X37 : subst > term > term] : (? [X39 : term,X38 : subst] : ((X37 @ X38 @ X39) != (sub @ sK549 @ (push @ X39 @ X38))) => ((sub @ sK549 @ (push @ (sK551 @ X37) @ (sK550 @ X37))) != (X37 @ (sK550 @ X37) @ (sK551 @ X37))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f701,plain,(
% 5.84/2.07    ! [X40 : term] : (? [X41 : subst > term > term] : ! [X42 : subst,X43 : term] : ((sub @ X40 @ (push @ X43 @ X42)) = (X41 @ X42 @ X43)) => ! [X43 : term,X42 : subst] : ((sK552 @ X40 @ X42 @ X43) = (sub @ X40 @ (push @ X43 @ X42))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f702,plain,(
% 5.84/2.07    ! [X44 : subst > term > subst > $o] : (? [X45 : term > $o] : ! [X46 : term] : ((X45 @ X46) = (X44 @ id @ X46 @ id)) => ! [X46 : term] : ((sK553 @ X44 @ X46) = (X44 @ id @ X46 @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f703,plain,(
% 5.84/2.07    ? [X47 : subst > term > subst > $o] : ! [X48 : term > $o] : ? [X49 : term] : ((X48 @ X49) != (X47 @ id @ X49 @ id)) => ! [X48 : term > $o] : ? [X49 : term] : ((sK554 @ id @ X49 @ id) != (X48 @ X49))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f704,plain,(
% 5.84/2.07    ! [X48 : term > $o] : (? [X49 : term] : ((sK554 @ id @ X49 @ id) != (X48 @ X49)) => ((sK554 @ id @ (sK555 @ X48) @ id) != (X48 @ (sK555 @ X48))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f705,plain,(
% 5.84/2.07    ! [X51 : term] : (? [X52 : subst > term > term] : ! [X53 : subst,X54 : term] : ((X52 @ X53 @ X54) = (sub @ X51 @ (push @ X54 @ X53))) => ! [X54 : term,X53 : subst] : ((sub @ X51 @ (push @ X54 @ X53)) = (sK556 @ X51 @ X53 @ X54)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f706,plain,(
% 5.84/2.07    ? [X55 : term] : ((sub @ X55 @ id) != X55) => (sK557 != (sub @ sK557 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f707,plain,(
% 5.84/2.07    ? [X56 : term] : ! [X57 : subst > term > term] : ? [X58 : subst,X59 : term] : ((sub @ X56 @ (push @ X59 @ X58)) != (X57 @ X58 @ X59)) => ! [X57 : subst > term > term] : ? [X59 : term,X58 : subst] : ((sub @ sK558 @ (push @ X59 @ X58)) != (X57 @ X58 @ X59))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f708,plain,(
% 5.84/2.07    ! [X57 : subst > term > term] : (? [X59 : term,X58 : subst] : ((sub @ sK558 @ (push @ X59 @ X58)) != (X57 @ X58 @ X59)) => ((X57 @ (sK559 @ X57) @ (sK560 @ X57)) != (sub @ sK558 @ (push @ (sK560 @ X57) @ (sK559 @ X57)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f709,plain,(
% 5.84/2.07    ? [X64 : term,X65 : term,X66 : term,X67 : term] : ((X66 != X67) & ((ap @ (sub @ X65 @ id) @ X67) = (ap @ (sub @ X64 @ id) @ X66))) => ((sK563 != sK564) & ((ap @ (sub @ sK562 @ id) @ sK564) = (ap @ (sub @ sK561 @ id) @ sK563)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f710,plain,(
% 5.84/2.07    ! [X68 : term > $o,X69 : subst,X70 : term > $o,X71 : term] : (? [X72 : term] : ((X70 @ X72) != (X68 @ (sub @ X72 @ (push @ X71 @ X69)))) => ((X68 @ (sub @ (sK565 @ X71 @ X70 @ X69 @ X68) @ (push @ X71 @ X69))) != (X70 @ (sK565 @ X71 @ X70 @ X69 @ X68))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f711,plain,(
% 5.84/2.07    ? [X73 : term > $o,X74 : subst,X75 : term > $o,X76 : term] : (! [X77 : term] : ((X75 @ X77) = (X73 @ (sub @ X77 @ (push @ X76 @ X74)))) & ($true = (X73 @ X76)) & ($true != (X75 @ one))) => (! [X77 : term] : ((sK568 @ X77) = (sK566 @ (sub @ X77 @ (push @ sK569 @ sK567)))) & ($true = (sK566 @ sK569)) & ($true != (sK568 @ one)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f712,plain,(
% 5.84/2.07    ? [X79 : subst] : ((comp @ X79 @ id) != X79) => ((comp @ sK570 @ id) != sK570)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f713,plain,(
% 5.84/2.07    ? [X82 : term,X83 : term] : (((lam @ X82) = (lam @ X83)) & (X82 != X83)) => (((lam @ sK571) = (lam @ sK572)) & (sK572 != sK571))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f714,plain,(
% 5.84/2.07    ? [X84 : term,X85 : subst > term > subst > $o] : (($true != (sP84 @ X85)) & ($true != (sP83 @ X85)) & ($true != (X85 @ id @ X84 @ id))) => (($true != (sP84 @ sK574)) & ($true != (sP83 @ sK574)) & ($true != (sK574 @ id @ sK573 @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f715,plain,(
% 5.84/2.07    ? [X88 : subst > term > subst > $o] : ! [X89 : term > $o] : ? [X90 : term] : ((X89 @ X90) != (X88 @ id @ X90 @ id)) => ! [X89 : term > $o] : ? [X90 : term] : ((sK575 @ id @ X90 @ id) != (X89 @ X90))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f716,plain,(
% 5.84/2.07    ! [X89 : term > $o] : (? [X90 : term] : ((sK575 @ id @ X90 @ id) != (X89 @ X90)) => ((X89 @ (sK576 @ X89)) != (sK575 @ id @ (sK576 @ X89) @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f717,plain,(
% 5.84/2.07    ? [X91 : term] : ((sub @ X91 @ id) != X91) => ((sub @ sK577 @ id) != sK577)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f718,plain,(
% 5.84/2.07    ! [X92 : subst > term > subst > $o] : (? [X93 : term > $o] : ! [X94 : term] : ((X93 @ X94) = (X92 @ id @ X94 @ id)) => ! [X94 : term] : ((X92 @ id @ X94 @ id) = (sK578 @ X92 @ X94)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f719,plain,(
% 5.84/2.07    ! [X96 : subst > term > term] : (? [X99 : term,X100 : subst,X101 : subst] : ((sub @ (X96 @ X101 @ X99) @ X100) != (X96 @ (comp @ X101 @ X100) @ (sub @ X99 @ X100))) => ((sub @ (X96 @ (sK581 @ X96) @ (sK579 @ X96)) @ (sK580 @ X96)) != (X96 @ (comp @ (sK581 @ X96) @ (sK580 @ X96)) @ (sub @ (sK579 @ X96) @ (sK580 @ X96)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f720,plain,(
% 5.84/2.07    ? [X102 : subst > term > term,X103 : term,X104 : term] : (((ap @ (sub @ X103 @ id) @ X104) = (lam @ (X102 @ sh @ one))) & ! [X105 : term,X106 : subst,X107 : subst] : ((sub @ (X102 @ X107 @ X105) @ X106) = (X102 @ (comp @ X107 @ X106) @ (sub @ X105 @ X106)))) => (((ap @ (sub @ sK583 @ id) @ sK584) = (lam @ (sK582 @ sh @ one))) & ! [X107 : subst,X106 : subst,X105 : term] : ((sK582 @ (comp @ X107 @ X106) @ (sub @ X105 @ X106)) = (sub @ (sK582 @ X107 @ X105) @ X106)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f721,plain,(
% 5.84/2.07    ! [X108 : term] : (? [X109 : subst > term > term] : ((sub @ X108 @ (push @ one @ sh)) = (X109 @ sh @ one)) => ((sub @ X108 @ (push @ one @ sh)) = (sK585 @ X108 @ sh @ one)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f722,plain,(
% 5.84/2.07    ? [X110 : term] : ! [X111 : subst > term > term] : ((X111 @ sh @ one) != (sub @ X110 @ (push @ one @ sh))) => ! [X111 : subst > term > term] : ((X111 @ sh @ one) != (sub @ sK586 @ (push @ one @ sh)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f723,plain,(
% 5.84/2.07    ? [X112 : term,X113 : term,X114 : term,X115 : term] : ((X112 != X113) & ((ap @ X112 @ X115) = (ap @ X113 @ X114))) => ((sK587 != sK588) & ((ap @ sK588 @ sK589) = (ap @ sK587 @ sK590)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f724,plain,(
% 5.84/2.07    ? [X122 : term] : ((sub @ X122 @ id) != X122) => ((sub @ sK591 @ id) != sK591)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f725,plain,(
% 5.84/2.07    ! [X125 : subst > term > term] : (? [X129 : subst,X130 : subst,X131 : term] : ((X125 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) != (sub @ (X125 @ X129 @ X131) @ X130)) => ((X125 @ (comp @ (sK592 @ X125) @ (sK593 @ X125)) @ (sub @ (sK594 @ X125) @ (sK593 @ X125))) != (sub @ (X125 @ (sK592 @ X125) @ (sK594 @ X125)) @ (sK593 @ X125))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f726,plain,(
% 5.84/2.07    ! [X128 : subst > term > term] : (? [X132 : subst,X133 : subst,X134 : term] : ((X128 @ (comp @ X132 @ X133) @ (sub @ X134 @ X133)) != (sub @ (X128 @ X132 @ X134) @ X133)) => ((sub @ (X128 @ (sK595 @ X128) @ (sK597 @ X128)) @ (sK596 @ X128)) != (X128 @ (comp @ (sK595 @ X128) @ (sK596 @ X128)) @ (sub @ (sK597 @ X128) @ (sK596 @ X128)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f727,plain,(
% 5.84/2.07    ? [X135 : subst > term > term,X136 : subst,X137 : term,X138 : subst > term > term] : (((X135 @ X136 @ X137) != (X138 @ X136 @ X137)) & ! [X139 : subst,X140 : subst,X141 : term] : ((X135 @ (comp @ X139 @ X140) @ (sub @ X141 @ X140)) = (sub @ (X135 @ X139 @ X141) @ X140)) & ! [X142 : subst,X143 : subst,X144 : term] : ((sub @ (X138 @ X142 @ X144) @ X143) = (X138 @ (comp @ X142 @ X143) @ (sub @ X144 @ X143))) & ((lam @ (X138 @ sh @ one)) = (lam @ (X135 @ sh @ one)))) => (((sK598 @ sK599 @ sK600) != (sK601 @ sK599 @ sK600)) & ! [X141 : term,X140 : subst,X139 : subst] : ((sub @ (sK598 @ X139 @ X141) @ X140) = (sK598 @ (comp @ X139 @ X140) @ (sub @ X141 @ X140))) & ! [X144 : term,X143 : subst,X142 : subst] : ((sK601 @ (comp @ X142 @ X143) @ (sub @ X144 @ X143)) = (sub @ (sK601 @ X142 @ X144) @ X143)) & ((lam @ (sK601 @ sh @ one)) = (lam @ (sK598 @ sh @ one))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f728,plain,(
% 5.84/2.07    ? [X145 : subst,X146 : term] : ((comp @ sh @ (push @ X146 @ X145)) != X145) => ((comp @ sh @ (push @ sK603 @ sK602)) != sK602)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f729,plain,(
% 5.84/2.07    ? [X151 : subst,X152 : term] : ((sub @ one @ (push @ X152 @ X151)) != X152) => ((sub @ one @ (push @ sK605 @ sK604)) != sK605)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f730,plain,(
% 5.84/2.07    ? [X154 : subst] : ((comp @ id @ X154) != X154) => (sK606 != (comp @ id @ sK606))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f731,plain,(
% 5.84/2.07    ? [X155 : term,X156 : term,X157 : term,X158 : term] : ((X155 != X158) & ((ap @ X156 @ X155) = (ap @ X157 @ X158))) => ((sK607 != sK610) & ((ap @ sK608 @ sK607) = (ap @ sK609 @ sK610)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f732,plain,(
% 5.84/2.07    ? [X163 : subst] : ((comp @ id @ X163) != X163) => ((comp @ id @ sK611) != sK611)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f733,plain,(
% 5.84/2.07    ? [X164 : subst] : ((comp @ X164 @ id) != X164) => ((comp @ sK612 @ id) != sK612)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f734,plain,(
% 5.84/2.07    ? [X167 : term] : ((sub @ X167 @ id) != X167) => ((sub @ sK613 @ id) != sK613)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f735,plain,(
% 5.84/2.07    ? [X170 : term] : ((sub @ X170 @ id) != X170) => ((sub @ sK614 @ id) != sK614)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f736,plain,(
% 5.84/2.07    ? [X171 : term] : ((sub @ X171 @ id) != X171) => ((sub @ sK615 @ id) != sK615)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f737,plain,(
% 5.84/2.07    ? [X173 : term] : ! [X174 : subst > term > term] : ? [X175 : term,X176 : subst] : ((X174 @ X176 @ X175) != (sub @ X173 @ (push @ X175 @ X176))) => ! [X174 : subst > term > term] : ? [X176 : subst,X175 : term] : ((X174 @ X176 @ X175) != (sub @ sK616 @ (push @ X175 @ X176)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f738,plain,(
% 5.84/2.07    ! [X174 : subst > term > term] : (? [X176 : subst,X175 : term] : ((X174 @ X176 @ X175) != (sub @ sK616 @ (push @ X175 @ X176))) => ((X174 @ (sK618 @ X174) @ (sK617 @ X174)) != (sub @ sK616 @ (push @ (sK617 @ X174) @ (sK618 @ X174)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f739,plain,(
% 5.84/2.07    ! [X177 : term] : (? [X178 : subst > term > term] : ! [X179 : term,X180 : subst] : ((X178 @ X180 @ X179) = (sub @ X177 @ (push @ X179 @ X180))) => ! [X180 : subst,X179 : term] : ((sub @ X177 @ (push @ X179 @ X180)) = (sK619 @ X177 @ X180 @ X179)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f740,plain,(
% 5.84/2.07    ! [X181 : subst > term > subst > $o] : (? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) => ! [X183 : term] : ((sK620 @ X181 @ X183) = (X181 @ id @ X183 @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f741,plain,(
% 5.84/2.07    ? [X184 : subst > term > subst > $o] : ! [X185 : term > $o] : ? [X186 : term] : ((X184 @ id @ X186 @ id) != (X185 @ X186)) => ! [X185 : term > $o] : ? [X186 : term] : ((X185 @ X186) != (sK621 @ id @ X186 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f742,plain,(
% 5.84/2.07    ! [X185 : term > $o] : (? [X186 : term] : ((X185 @ X186) != (sK621 @ id @ X186 @ id)) => ((X185 @ (sK622 @ X185)) != (sK621 @ id @ (sK622 @ X185) @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f743,plain,(
% 5.84/2.07    ! [X187 : subst,X188 : term > $o,X189 : term] : (? [X190 : term > $o] : ! [X191 : term] : ((X190 @ X191) = (X188 @ (sub @ X191 @ (push @ X189 @ X187)))) => ! [X191 : term] : ((sK623 @ X189 @ X188 @ X187 @ X191) = (X188 @ (sub @ X191 @ (push @ X189 @ X187)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f744,plain,(
% 5.84/2.07    ? [X192 : subst,X193 : term > $o,X194 : term] : ! [X195 : term > $o] : ? [X196 : term] : ((X195 @ X196) != (X193 @ (sub @ X196 @ (push @ X194 @ X192)))) => ! [X195 : term > $o] : ? [X196 : term] : ((X195 @ X196) != (sK625 @ (sub @ X196 @ (push @ sK626 @ sK624))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f745,plain,(
% 5.84/2.07    ! [X195 : term > $o] : (? [X196 : term] : ((X195 @ X196) != (sK625 @ (sub @ X196 @ (push @ sK626 @ sK624)))) => ((X195 @ (sK627 @ X195)) != (sK625 @ (sub @ (sK627 @ X195) @ (push @ sK626 @ sK624)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f746,plain,(
% 5.84/2.07    ? [X198 : subst] : ((push @ (sub @ one @ X198) @ (comp @ sh @ X198)) != X198) => ((push @ (sub @ one @ sK628) @ (comp @ sh @ sK628)) != sK628)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f747,plain,(
% 5.84/2.07    ? [X200 : term] : ((sub @ X200 @ id) != X200) => (sK629 != (sub @ sK629 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f748,plain,(
% 5.84/2.07    ? [X203 : term,X204 : term] : ((X203 != X204) & ((sub @ X203 @ sh) = (sub @ X204 @ sh))) => ((sK631 != sK630) & ((sub @ sK630 @ sh) = (sub @ sK631 @ sh)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f749,plain,(
% 5.84/2.07    ? [X207 : term] : ! [X208 : subst > term > term] : ((X208 @ sh @ one) != (sub @ X207 @ (push @ one @ sh))) => ! [X208 : subst > term > term] : ((X208 @ sh @ one) != (sub @ sK632 @ (push @ one @ sh)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f750,plain,(
% 5.84/2.07    ! [X209 : term] : (? [X210 : subst > term > term] : ((X210 @ sh @ one) = (sub @ X209 @ (push @ one @ sh))) => ((sK633 @ X209 @ sh @ one) = (sub @ X209 @ (push @ one @ sh))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f751,plain,(
% 5.84/2.07    ? [X211 : term] : ((sub @ X211 @ id) != X211) => (sK634 != (sub @ sK634 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f752,plain,(
% 5.84/2.07    ! [X213 : term] : (? [X214 : d_term] : ((d2term @ X214) = X213) => ((d2term @ (sK635 @ X213)) = X213))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f753,plain,(
% 5.84/2.07    ! [X215 : term > $o,X216 : term,X217 : subst] : (? [X218 : term > $o] : ! [X219 : term] : ((X218 @ X219) = (X215 @ (sub @ X219 @ (push @ X216 @ X217)))) => ! [X219 : term] : ((X215 @ (sub @ X219 @ (push @ X216 @ X217))) = (sK636 @ X217 @ X216 @ X215 @ X219)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f754,plain,(
% 5.84/2.07    ? [X220 : term > $o,X221 : term,X222 : subst] : ! [X223 : term > $o] : ? [X224 : term] : ((X220 @ (sub @ X224 @ (push @ X221 @ X222))) != (X223 @ X224)) => ! [X223 : term > $o] : ? [X224 : term] : ((X223 @ X224) != (sK637 @ (sub @ X224 @ (push @ sK638 @ sK639))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f755,plain,(
% 5.84/2.07    ! [X223 : term > $o] : (? [X224 : term] : ((X223 @ X224) != (sK637 @ (sub @ X224 @ (push @ sK638 @ sK639)))) => ((X223 @ (sK640 @ X223)) != (sK637 @ (sub @ (sK640 @ X223) @ (push @ sK638 @ sK639)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f756,plain,(
% 5.84/2.07    ? [X225 : term] : ((sub @ X225 @ id) != X225) => ((sub @ sK641 @ id) != sK641)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f757,plain,(
% 5.84/2.07    ? [X227 : subst,X228 : term > $o,X229 : term,X230 : term > $o] : (($true != (X230 @ one)) & ! [X231 : term] : ((X228 @ (sub @ X231 @ (push @ X229 @ X227))) = (X230 @ X231)) & ((X228 @ X229) = $true)) => (($true != (sK645 @ one)) & ! [X231 : term] : ((sK645 @ X231) = (sK643 @ (sub @ X231 @ (push @ sK644 @ sK642)))) & ($true = (sK643 @ sK644)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f758,plain,(
% 5.84/2.07    ! [X234 : subst,X235 : term > $o,X236 : term,X237 : term > $o] : (? [X238 : term] : ((X235 @ (sub @ X238 @ (push @ X236 @ X234))) != (X237 @ X238)) => ((X235 @ (sub @ (sK646 @ X237 @ X236 @ X235 @ X234) @ (push @ X236 @ X234))) != (X237 @ (sK646 @ X237 @ X236 @ X235 @ X234))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f759,plain,(
% 5.84/2.07    ? [X239 : term,X240 : subst] : ((sub @ one @ (push @ X239 @ X240)) != X239) => (sK647 != (sub @ one @ (push @ sK647 @ sK648)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f760,plain,(
% 5.84/2.07    ? [X241 : term] : ((sub @ X241 @ id) != X241) => ((sub @ sK649 @ id) != sK649)),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f761,plain,(
% 5.84/2.07    ? [X242 : subst > term > subst > $o] : ! [X243 : term > $o] : ? [X244 : term] : ((X242 @ id @ X244 @ id) != (X243 @ X244)) => ! [X243 : term > $o] : ? [X244 : term] : ((sK650 @ id @ X244 @ id) != (X243 @ X244))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f762,plain,(
% 5.84/2.07    ! [X243 : term > $o] : (? [X244 : term] : ((sK650 @ id @ X244 @ id) != (X243 @ X244)) => ((X243 @ (sK651 @ X243)) != (sK650 @ id @ (sK651 @ X243) @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f763,plain,(
% 5.84/2.07    ! [X246 : subst > term > subst > $o] : (? [X247 : term > $o] : ! [X248 : term] : ((X246 @ id @ X248 @ id) = (X247 @ X248)) => ! [X248 : term] : ((sK652 @ X246 @ X248) = (X246 @ id @ X248 @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f764,plain,(
% 5.84/2.07    ? [X254 : term > $o,X255 : term,X256 : term > $o,X257 : term,X258 : subst] : (($true != (X256 @ (sub @ X255 @ (push @ X257 @ X258)))) & ($true = (X254 @ X255))) => (($true != (sK655 @ (sub @ sK654 @ (push @ sK656 @ sK657)))) & ($true = (sK653 @ sK654)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f765,plain,(
% 5.84/2.07    ! [X259 : subst] : (? [X260 : d_subst] : ((d2subst @ X260) = X259) => ((d2subst @ (sK658 @ X259)) = X259))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f766,plain,(
% 5.84/2.07    ? [X261 : term] : ((sub @ X261 @ id) != X261) => (sK659 != (sub @ sK659 @ id))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f691,plain,(
% 5.84/2.07    (($true = sP113) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP113)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & (($true = sP111) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP111)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP107) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP107)) & ((hoasapinj1 = $true) | ? [X0 : term,X1 : term,X2 : term,X3 : term] : ((X0 != X3) & ((ap @ (sub @ X0 @ id) @ X1) = (ap @ (sub @ X3 @ id) @ X2)))) & (! [X4 : term,X5 : term,X6 : term,X7 : term] : ((X4 = X7) | ((ap @ (sub @ X4 @ id) @ X5) != (ap @ (sub @ X7 @ id) @ X6))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & ((induction2lem_lthm = $true) | (($true != sP103) & ! [X8 : subst] : ((comp @ X8 @ id) = X8) & ($true != sP104) & ! [X9 : subst,X10 : term] : ((sub @ one @ (push @ X10 @ X9)) = X10) & ! [X11 : term,X12 : subst] : ((comp @ sh @ (push @ X11 @ X12)) = X12))) & (($true = sP103) | ? [X13 : subst] : ((comp @ X13 @ id) != X13) | ($true = sP104) | ? [X14 : subst,X15 : term] : ((sub @ one @ (push @ X15 @ X14)) != X15) | ? [X16 : term,X17 : subst] : ((comp @ sh @ (push @ X16 @ X17)) != X17) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP98) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP98)) & (hoasinduction_lem1 = $true) & (pushprop = $true) & (($true = sP93) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP93)) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & (? [X18 : subst,X19 : term] : ((sub @ one @ (push @ X19 @ X18)) != X19) | ! [X20 : term > $o,X21 : subst,X22 : term > $o,X23 : term,X24 : term] : (($true != (X22 @ X23)) | ($true = (X20 @ (sub @ X23 @ (push @ X24 @ X21))))) | ? [X25 : subst,X26 : term] : ((comp @ sh @ (push @ X26 @ X25)) != X25) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X27 : subst,X28 : term] : ((sub @ one @ (push @ X28 @ X27)) = X28) & ? [X29 : term > $o,X30 : subst,X31 : term > $o,X32 : term,X33 : term] : (($true = (X31 @ X32)) & ($true != (X29 @ (sub @ X32 @ (push @ X33 @ X30))))) & ! [X34 : subst,X35 : term] : ((comp @ sh @ (push @ X35 @ X34)) = X34))) & (ulamvarind = $true) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X36 : term] : ! [X37 : subst > term > term] : ? [X38 : subst,X39 : term] : ((X37 @ X38 @ X39) != (sub @ X36 @ (push @ X39 @ X38)))) & (! [X40 : term] : ? [X41 : subst > term > term] : ! [X42 : subst,X43 : term] : ((sub @ X40 @ (push @ X43 @ X42)) = (X41 @ X42 @ X43)) | (hoasinduction_lem3v2_f_lthm != $true)) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & (! [X44 : subst > term > subst > $o] : ? [X45 : term > $o] : ! [X46 : term] : ((X45 @ X46) = (X44 @ id @ X46 @ id)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X47 : subst > term > subst > $o] : ! [X48 : term > $o] : ? [X49 : term] : ((X48 @ X49) != (X47 @ id @ X49 @ id))) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X50 : term] : ((sub @ X50 @ id) = X50) & ! [X51 : term] : ? [X52 : subst > term > term] : ! [X53 : subst,X54 : term] : ((X52 @ X53 @ X54) = (sub @ X51 @ (push @ X54 @ X53))) & ($true != sP90))) & (? [X55 : term] : ((sub @ X55 @ id) != X55) | ? [X56 : term] : ! [X57 : subst > term > term] : ? [X58 : subst,X59 : term] : ((sub @ X56 @ (push @ X59 @ X58)) != (X57 @ X58 @ X59)) | ($true = sP90) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & (($true = sP88) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP88)) & (hoasinduction_lem1v2 = $true) & (! [X60 : term,X61 : term,X62 : term,X63 : term] : ((X62 = X63) | ((ap @ (sub @ X60 @ id) @ X62) != (ap @ (sub @ X61 @ id) @ X63))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X64 : term,X65 : term,X66 : term,X67 : term] : ((X66 != X67) & ((ap @ (sub @ X65 @ id) @ X67) = (ap @ (sub @ X64 @ id) @ X66)))) & (! [X68 : term > $o,X69 : subst,X70 : term > $o,X71 : term] : (? [X72 : term] : ((X70 @ X72) != (X68 @ (sub @ X72 @ (push @ X71 @ X69)))) | ((X68 @ X71) != $true) | ($true = (X70 @ one))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X73 : term > $o,X74 : subst,X75 : term > $o,X76 : term] : (! [X77 : term] : ((X75 @ X77) = (X73 @ (sub @ X77 @ (push @ X76 @ X74)))) & ($true = (X73 @ X76)) & ($true != (X75 @ one)))) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & (! [X78 : subst] : ((comp @ X78 @ id) = X78) | (axidr != $true)) & ((axidr = $true) | ? [X79 : subst] : ((comp @ X79 @ id) != X79)) & (! [X80 : term,X81 : term] : (((lam @ X80) != (lam @ X81)) | (X80 = X81)) | (laminj != $true)) & ((laminj = $true) | ? [X82 : term,X83 : term] : (((lam @ X82) = (lam @ X83)) & (X82 != X83))) & ((hoasinduction_lem3aaa = $true) | ($true != sP86)) & (($true = sP86) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X84 : term,X85 : subst > term > subst > $o] : (($true != (sP84 @ X85)) & ($true != (sP83 @ X85)) & ($true != (X85 @ id @ X84 @ id)))) & (! [X86 : term,X87 : subst > term > subst > $o] : (($true = (sP84 @ X87)) | ($true = (sP83 @ X87)) | ($true = (X87 @ id @ X86 @ id))) | (hoasinduction_no_psi_cond != $true)) & (? [X88 : subst > term > subst > $o] : ! [X89 : term > $o] : ? [X90 : term] : ((X89 @ X90) != (X88 @ id @ X90 @ id)) | (sP80 = $true) | ($true = sP82) | ($true = sP81) | ? [X91 : term] : ((sub @ X91 @ id) != X91) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X92 : subst > term > subst > $o] : ? [X93 : term > $o] : ! [X94 : term] : ((X93 @ X94) = (X92 @ id @ X94 @ id)) & (sP80 != $true) & ($true != sP82) & ($true != sP81) & ! [X95 : term] : ((sub @ X95 @ id) = X95))) & (! [X96 : subst > term > term,X97 : term,X98 : term] : (((lam @ (X96 @ sh @ one)) != (ap @ (sub @ X97 @ id) @ X98)) | ? [X99 : term,X100 : subst,X101 : subst] : ((sub @ (X96 @ X101 @ X99) @ X100) != (X96 @ (comp @ X101 @ X100) @ (sub @ X99 @ X100)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X102 : subst > term > term,X103 : term,X104 : term] : (((ap @ (sub @ X103 @ id) @ X104) = (lam @ (X102 @ sh @ one))) & ! [X105 : term,X106 : subst,X107 : subst] : ((sub @ (X102 @ X107 @ X105) @ X106) = (X102 @ (comp @ X107 @ X106) @ (sub @ X105 @ X106))))) & (($true = sP74) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP74)) & (hoasapnotvar = $true) & (axabs = $true) & (($true = sP69) | ($true = sP70) | ($true = sP67) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP69) & ($true != sP70) & ($true != sP67) & ($true != sP68))) & (axmap = $true) & (! [X108 : term] : ? [X109 : subst > term > term] : ((sub @ X108 @ (push @ one @ sh)) = (X109 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X110 : term] : ! [X111 : subst > term > term] : ((X111 @ sh @ one) != (sub @ X110 @ (push @ one @ sh)))) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3v2a = $true) | ($true != sP54)) & (($true = sP54) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((apinj1 = $true) | ? [X112 : term,X113 : term,X114 : term,X115 : term] : ((X112 != X113) & ((ap @ X112 @ X115) = (ap @ X113 @ X114)))) & (! [X116 : term,X117 : term,X118 : term,X119 : term] : ((X116 = X117) | ((ap @ X116 @ X119) != (ap @ X117 @ X118))) | (apinj1 != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3aa != $true)) & ! [X120 : d_subst] : (d_id = X120) & ((hoasinduction_lem3_lthm = $true) | (($true != sP48) & ($true != sP47) & ! [X121 : term] : ((sub @ X121 @ id) = X121))) & (($true = sP48) | ($true = sP47) | ? [X122 : term] : ((sub @ X122 @ id) != X122) | (hoasinduction_lem3_lthm != $true)) & (pushprop_lem3v2 = $true) & ! [X123 : d_term,X124 : d_term] : ((X123 = X124) | ((d2term @ X124) != (d2term @ X123))) & (! [X125 : subst > term > term,X126 : subst,X127 : term,X128 : subst > term > term] : (((X125 @ X126 @ X127) = (X128 @ X126 @ X127)) | ? [X129 : subst,X130 : subst,X131 : term] : ((X125 @ (comp @ X129 @ X130) @ (sub @ X131 @ X130)) != (sub @ (X125 @ X129 @ X131) @ X130)) | ? [X132 : subst,X133 : subst,X134 : term] : ((X128 @ (comp @ X132 @ X133) @ (sub @ X134 @ X133)) != (sub @ (X128 @ X132 @ X134) @ X133)) | ((lam @ (X125 @ sh @ one)) != (lam @ (X128 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X135 : subst > term > term,X136 : subst,X137 : term,X138 : subst > term > term] : (((X135 @ X136 @ X137) != (X138 @ X136 @ X137)) & ! [X139 : subst,X140 : subst,X141 : term] : ((X135 @ (comp @ X139 @ X140) @ (sub @ X141 @ X140)) = (sub @ (X135 @ X139 @ X141) @ X140)) & ! [X142 : subst,X143 : subst,X144 : term] : ((sub @ (X138 @ X142 @ X144) @ X143) = (X138 @ (comp @ X142 @ X143) @ (sub @ X144 @ X143))) & ((lam @ (X138 @ sh @ one)) = (lam @ (X135 @ sh @ one))))) & (hoasinduction_lem1_lthm = $true) & ((axshiftcons = $true) | ? [X145 : subst,X146 : term] : ((comp @ sh @ (push @ X146 @ X145)) != X145)) & (! [X147 : subst,X148 : term] : ((comp @ sh @ (push @ X148 @ X147)) = X147) | (axshiftcons != $true)) & (($true = sP42) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP42)) & (ulamvar1 != $true) & (($true = sP40) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP40)) & (! [X149 : subst,X150 : term] : ((sub @ one @ (push @ X150 @ X149)) = X150) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X151 : subst,X152 : term] : ((sub @ one @ (push @ X152 @ X151)) != X152)) & (hoasinduction_lem2v2_gthm = $true) & (! [X153 : subst] : ((comp @ id @ X153) = X153) | (axidl != $true)) & ((axidl = $true) | ? [X154 : subst] : ((comp @ id @ X154) != X154)) & ((apinj2 = $true) | ? [X155 : term,X156 : term,X157 : term,X158 : term] : ((X155 != X158) & ((ap @ X156 @ X155) = (ap @ X157 @ X158)))) & (! [X159 : term,X160 : term,X161 : term,X162 : term] : ((X159 = X162) | ((ap @ X161 @ X162) != (ap @ X160 @ X159))) | (apinj2 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & ((substmonoid = $true) | ? [X163 : subst] : ((comp @ id @ X163) != X163) | ? [X164 : subst] : ((comp @ X164 @ id) != X164)) & ((! [X165 : subst] : ((comp @ id @ X165) = X165) & ! [X166 : subst] : ((comp @ X166 @ id) = X166)) | (substmonoid != $true)) & ((axvarid = $true) | ? [X167 : term] : ((sub @ X167 @ id) != X167)) & (! [X168 : term] : ((sub @ X168 @ id) = X168) | (axvarid != $true)) & ((termmset_lthm = $true) | (! [X169 : term] : ((sub @ X169 @ id) = X169) & ? [X170 : term] : ((sub @ X170 @ id) != X170))) & (? [X171 : term] : ((sub @ X171 @ id) != X171) | ! [X172 : term] : ((sub @ X172 @ id) = X172) | (termmset_lthm != $true)) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((hoasinduction_lem3v2_f = $true) | ? [X173 : term] : ! [X174 : subst > term > term] : ? [X175 : term,X176 : subst] : ((X174 @ X176 @ X175) != (sub @ X173 @ (push @ X175 @ X176)))) & (! [X177 : term] : ? [X178 : subst > term > term] : ! [X179 : term,X180 : subst] : ((X178 @ X180 @ X179) = (sub @ X177 @ (push @ X179 @ X180))) | (hoasinduction_lem3v2_f != $true)) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X184 : subst > term > subst > $o] : ! [X185 : term > $o] : ? [X186 : term] : ((X184 @ id @ X186 @ id) != (X185 @ X186))) & ((substmonoid_lthm = $true) | ($true != sP35)) & (($true = sP35) | (substmonoid_lthm != $true)) & (hoasapnotvar_lthm = $true) & (! [X187 : subst,X188 : term > $o,X189 : term] : ? [X190 : term > $o] : ! [X191 : term] : ((X190 @ X191) = (X188 @ (sub @ X191 @ (push @ X189 @ X187)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X192 : subst,X193 : term > $o,X194 : term] : ! [X195 : term > $o] : ? [X196 : term] : ((X195 @ X196) != (X193 @ (sub @ X196 @ (push @ X194 @ X192))))) & (axvarshift = $true) & (! [X197 : subst] : ((push @ (sub @ one @ X197) @ (comp @ sh @ X197)) = X197) | (axscons != $true)) & ((axscons = $true) | ? [X198 : subst] : ((push @ (sub @ one @ X198) @ (comp @ sh @ X198)) != X198)) & (($true = sP34) | (induction2 != $true)) & ((induction2 = $true) | ($true != sP34)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X199 : term] : ((sub @ X199 @ id) = X199) & ($true != sP31))) & (? [X200 : term] : ((sub @ X200 @ id) != X200) | ($true = sP31) | (hoasinduction_lem3v2_lthm != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X201 : d_subst,X202 : d_subst] : (((d2subst @ X202) != (d2subst @ X201)) | (X201 = X202)) & ((hoasinduction_lem2v2 = $true) | ($true != sP27)) & (($true = sP27) | (hoasinduction_lem2v2 != $true)) & ((shinj = $true) | ? [X203 : term,X204 : term] : ((X203 != X204) & ((sub @ X203 @ sh) = (sub @ X204 @ sh)))) & (! [X205 : term,X206 : term] : ((X205 = X206) | ((sub @ X206 @ sh) != (sub @ X205 @ sh))) | (shinj != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X207 : term] : ! [X208 : subst > term > term] : ((X208 @ sh @ one) != (sub @ X207 @ (push @ one @ sh)))) & (! [X209 : term] : ? [X210 : subst > term > term] : ((X210 @ sh @ one) = (sub @ X209 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & (axassoc = $true) & (($true = sP23) | ? [X211 : term] : ((sub @ X211 @ id) != X211) | (sP24 = $true) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | (($true != sP23) & ! [X212 : term] : ((sub @ X212 @ id) = X212) & (sP24 != $true))) & ! [X213 : term] : ? [X214 : d_term] : ((d2term @ X214) = X213) & (! [X215 : term > $o,X216 : term,X217 : subst] : ? [X218 : term > $o] : ! [X219 : term] : ((X218 @ X219) = (X215 @ (sub @ X219 @ (push @ X216 @ X217)))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X220 : term > $o,X221 : term,X222 : subst] : ! [X223 : term > $o] : ? [X224 : term] : ((X220 @ (sub @ X224 @ (push @ X221 @ X222))) != (X223 @ X224))) & (($true = sP17) | ? [X225 : term] : ((sub @ X225 @ id) != X225) | ($true = sP16) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP17) & ! [X226 : term] : ((sub @ X226 @ id) = X226) & ($true != sP16))) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & ((pushprop_lem1v2_lthm = $true) | (? [X227 : subst,X228 : term > $o,X229 : term,X230 : term > $o] : (($true != (X230 @ one)) & ! [X231 : term] : ((X228 @ (sub @ X231 @ (push @ X229 @ X227))) = (X230 @ X231)) & ((X228 @ X229) = $true)) & ! [X232 : term,X233 : subst] : ((sub @ one @ (push @ X232 @ X233)) = X232))) & (! [X234 : subst,X235 : term > $o,X236 : term,X237 : term > $o] : (($true = (X237 @ one)) | ? [X238 : term] : ((X235 @ (sub @ X238 @ (push @ X236 @ X234))) != (X237 @ X238)) | ($true != (X235 @ X236))) | ? [X239 : term,X240 : subst] : ((sub @ one @ (push @ X239 @ X240)) != X239) | (pushprop_lem1v2_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (? [X241 : term] : ((sub @ X241 @ id) != X241) | ($true = sP13) | ($true = sP11) | ? [X242 : subst > term > subst > $o] : ! [X243 : term > $o] : ? [X244 : term] : ((X242 @ id @ X244 @ id) != (X243 @ X244)) | ($true = sP12) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X245 : term] : ((sub @ X245 @ id) = X245) & ($true != sP13) & ($true != sP11) & ! [X246 : subst > term > subst > $o] : ? [X247 : term > $o] : ! [X248 : term] : ((X246 @ id @ X248 @ id) = (X247 @ X248)) & ($true != sP12))) & (hoasapinj2_gthm = $true) & (! [X249 : term > $o,X250 : term,X251 : term > $o,X252 : term,X253 : subst] : (($true = (X251 @ (sub @ X250 @ (push @ X252 @ X253)))) | ($true != (X249 @ X250))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X254 : term > $o,X255 : term,X256 : term > $o,X257 : term,X258 : subst] : (($true != (X256 @ (sub @ X255 @ (push @ X257 @ X258)))) & ($true = (X254 @ X255)))) & ! [X259 : subst] : ? [X260 : d_subst] : ((d2subst @ X260) = X259) & (axapp = $true) & (termmset_gthm = $true) & ((termmset = $true) | ? [X261 : term] : ((sub @ X261 @ id) != X261)) & (! [X262 : term] : ((sub @ X262 @ id) = X262) | (termmset != $true)) & ! [X263 : d_term] : (d_one = X263) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(rectify,[status(thm)],[f690])).
% 5.84/2.07  thf(f690,plain,(
% 5.84/2.07    (($true = sP113) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP113)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & (($true = sP111) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP111)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP107) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP107)) & ((hoasapinj1 = $true) | ? [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 != X469) & ((ap @ (sub @ X466 @ id) @ X467) = (ap @ (sub @ X469 @ id) @ X468)))) & (! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & ((induction2lem_lthm = $true) | (($true != sP103) & ! [X337 : subst] : ((comp @ X337 @ id) = X337) & ($true != sP104) & ! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) & ! [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) = X336))) & (($true = sP103) | ? [X337 : subst] : ((comp @ X337 @ id) != X337) | ($true = sP104) | ? [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) != X334) | ? [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) != X336) | (induction2lem_lthm != $true)) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP98) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP98)) & (hoasinduction_lem1 = $true) & (pushprop = $true) & (($true = sP93) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP93)) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & (? [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) != X324) | ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) | ? [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) != X325) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) = X324) & ? [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true = (X329 @ X330)) & ($true != (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) & ! [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) = X325))) & (ulamvarind = $true) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X424 : term] : ! [X425 : subst > term > term] : ? [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) != (sub @ X424 @ (push @ X427 @ X426)))) & (! [X424 : term] : ? [X425 : subst > term > term] : ! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426))) | (hoasinduction_lem3v2_f_lthm != $true)) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & (! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X181 : subst > term > subst > $o] : ! [X182 : term > $o] : ? [X183 : term] : ((X182 @ X183) != (X181 @ id @ X183 @ id))) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X291 : term] : ((sub @ X291 @ id) = X291) & ! [X287 : term] : ? [X288 : subst > term > term] : ! [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) = (X288 @ X289 @ X290)) & ($true != sP90))) & (? [X291 : term] : ((sub @ X291 @ id) != X291) | ? [X287 : term] : ! [X288 : subst > term > term] : ? [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) != (X288 @ X289 @ X290)) | ($true = sP90) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & (($true = sP88) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP88)) & (hoasinduction_lem1v2 = $true) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 != X187) & ((ap @ (sub @ X185 @ id) @ X187) = (ap @ (sub @ X184 @ id) @ X186)))) & (! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (? [X4 : term] : ((X2 @ X4) != (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true)) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) & ($true = (X0 @ X3)) & ((X2 @ one) != $true))) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) | (axidr != $true)) & ((axidr = $true) | ? [X212 : subst] : ((comp @ X212 @ id) != X212)) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) | (laminj != $true)) & ((laminj = $true) | ? [X188 : term,X189 : term] : (((lam @ X189) = (lam @ X188)) & (X188 != X189))) & ((hoasinduction_lem3aaa = $true) | ($true != sP86)) & (($true = sP86) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X44 : term,X45 : subst > term > subst > $o] : (($true != (sP84 @ X45)) & ($true != (sP83 @ X45)) & ($true != (X45 @ id @ X44 @ id)))) & (! [X44 : term,X45 : subst > term > subst > $o] : (($true = (sP84 @ X45)) | ($true = (sP83 @ X45)) | ($true = (X45 @ id @ X44 @ id))) | (hoasinduction_no_psi_cond != $true)) & (? [X257 : subst > term > subst > $o] : ! [X258 : term > $o] : ? [X259 : term] : ((X258 @ X259) != (X257 @ id @ X259 @ id)) | (sP80 = $true) | ($true = sP82) | ($true = sP81) | ? [X267 : term] : ((sub @ X267 @ id) != X267) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X257 : subst > term > subst > $o] : ? [X258 : term > $o] : ! [X259 : term] : ((X258 @ X259) = (X257 @ id @ X259 @ id)) & (sP80 != $true) & ($true != sP82) & ($true != sP81) & ! [X267 : term] : ((sub @ X267 @ id) = X267))) & (! [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)) | ? [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) != (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) = (ap @ (sub @ X139 @ id) @ X140)) & ! [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) = (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142))))) & (($true = sP74) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP74)) & (hoasapnotvar = $true) & (axabs = $true) & (($true = sP69) | ($true = sP70) | ($true = sP67) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP69) & ($true != sP70) & ($true != sP67) & ($true != sP68))) & (axmap = $true) & (! [X312 : term] : ? [X313 : subst > term > term] : ((X313 @ sh @ one) = (sub @ X312 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X312 : term] : ! [X313 : subst > term > term] : ((X313 @ sh @ one) != (sub @ X312 @ (push @ one @ sh)))) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3v2a = $true) | ($true != sP54)) & (($true = sP54) | (hoasinduction_lem3v2a != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((apinj1 = $true) | ? [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 != X527) & ((ap @ X526 @ X529) = (ap @ X527 @ X528)))) & (! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528))) | (apinj1 != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3aa != $true)) & ! [X135 : d_subst] : (d_id = X135) & ((hoasinduction_lem3_lthm = $true) | (($true != sP48) & ($true != sP47) & ! [X490 : term] : ((sub @ X490 @ id) = X490))) & (($true = sP48) | ($true = sP47) | ? [X490 : term] : ((sub @ X490 @ id) != X490) | (hoasinduction_lem3_lthm != $true)) & (pushprop_lem3v2 = $true) & ! [X524 : d_term,X525 : d_term] : ((X524 = X525) | ((d2term @ X525) != (d2term @ X524))) & (! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ? [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) != (sub @ (X150 @ X154 @ X156) @ X155)) | ? [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) != (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) != (X150 @ X151 @ X152)) & ! [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) = (sub @ (X150 @ X154 @ X156) @ X155)) & ! [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) = (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) & ((lam @ (X153 @ sh @ one)) = (lam @ (X150 @ sh @ one))))) & (hoasinduction_lem1_lthm = $true) & ((axshiftcons = $true) | ? [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) != X538)) & (! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538) | (axshiftcons != $true)) & (($true = sP42) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP42)) & (ulamvar1 != $true) & (($true = sP40) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP40)) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) != X180)) & (hoasinduction_lem2v2_gthm = $true) & (! [X332 : subst] : ((comp @ id @ X332) = X332) | (axidl != $true)) & ((axidl = $true) | ? [X332 : subst] : ((comp @ id @ X332) != X332)) & ((apinj2 = $true) | ? [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 != X518) & ((ap @ X516 @ X515) = (ap @ X517 @ X518)))) & (! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518))) | (apinj2 != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & ((substmonoid = $true) | ? [X160 : subst] : ((comp @ id @ X160) != X160) | ? [X161 : subst] : ((comp @ X161 @ id) != X161)) & ((! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161)) | (substmonoid != $true)) & ((axvarid = $true) | ? [X322 : term] : ((sub @ X322 @ id) != X322)) & (! [X322 : term] : ((sub @ X322 @ id) = X322) | (axvarid != $true)) & ((termmset_lthm = $true) | (! [X320 : term] : ((sub @ X320 @ id) = X320) & ? [X321 : term] : ((sub @ X321 @ id) != X321))) & (? [X320 : term] : ((sub @ X320 @ id) != X320) | ! [X321 : term] : ((sub @ X321 @ id) = X321) | (termmset_lthm != $true)) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((hoasinduction_lem3v2_f = $true) | ? [X175 : term] : ! [X176 : subst > term > term] : ? [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) != (X176 @ X178 @ X177))) & (! [X175 : term] : ? [X176 : subst > term > term] : ! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177)) | (hoasinduction_lem3v2_f != $true)) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (! [X209 : subst > term > subst > $o] : ? [X210 : term > $o] : ! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X209 : subst > term > subst > $o] : ! [X210 : term > $o] : ? [X211 : term] : ((X210 @ X211) != (X209 @ id @ X211 @ id))) & ((substmonoid_lthm = $true) | ($true != sP35)) & (($true = sP35) | (substmonoid_lthm != $true)) & (hoasapnotvar_lthm = $true) & (! [X314 : subst,X315 : term > $o,X316 : term] : ? [X317 : term > $o] : ! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X314 : subst,X315 : term > $o,X316 : term] : ! [X317 : term > $o] : ? [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) != (X317 @ X318))) & (axvarshift = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) | (axscons != $true)) & ((axscons = $true) | ? [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) != X319)) & (($true = sP34) | (induction2 != $true)) & ((induction2 = $true) | ($true != sP34)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X222 : term] : ((sub @ X222 @ id) = X222) & ($true != sP31))) & (? [X222 : term] : ((sub @ X222 @ id) != X222) | ($true = sP31) | (hoasinduction_lem3v2_lthm != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) != (d2subst @ X455)) | (X454 = X455)) & ((hoasinduction_lem2v2 = $true) | ($true != sP27)) & (($true = sP27) | (hoasinduction_lem2v2 != $true)) & ((shinj = $true) | ? [X456 : term,X457 : term] : ((X456 != X457) & ((sub @ X456 @ sh) = (sub @ X457 @ sh)))) & (! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh))) | (shinj != $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X136 : term] : ! [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) != (X137 @ sh @ one))) & (! [X136 : term] : ? [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) = (X137 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & (axassoc = $true) & (($true = sP23) | ? [X99 : term] : ((sub @ X99 @ id) != X99) | (sP24 = $true) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | (($true != sP23) & ! [X99 : term] : ((sub @ X99 @ id) = X99) & (sP24 != $true))) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X519 : term > $o,X520 : term,X521 : subst] : ? [X522 : term > $o] : ! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X519 : term > $o,X520 : term,X521 : subst] : ! [X522 : term > $o] : ? [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) != (X522 @ X523))) & (($true = sP17) | ? [X53 : term] : ((sub @ X53 @ id) != X53) | ($true = sP16) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP17) & ! [X53 : term] : ((sub @ X53 @ id) = X53) & ($true != sP16))) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & ((pushprop_lem1v2_lthm = $true) | (? [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) != $true) & ! [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) = (X463 @ X464)) & ($true = (X461 @ X462))) & ! [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) = X458))) & (! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ? [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) != (X463 @ X464)) | ($true != (X461 @ X462))) | ? [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) != X458) | (pushprop_lem1v2_lthm != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (? [X15 : term] : ((sub @ X15 @ id) != X15) | ($true = sP13) | ($true = sP11) | ? [X5 : subst > term > subst > $o] : ! [X6 : term > $o] : ? [X7 : term] : ((X5 @ id @ X7 @ id) != (X6 @ X7)) | ($true = sP12) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X15 : term] : ((sub @ X15 @ id) = X15) & ($true != sP13) & ($true != sP11) & ! [X5 : subst > term > subst > $o] : ? [X6 : term > $o] : ! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) & ($true != sP12))) & (hoasapinj2_gthm = $true) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true != (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) & ($true = (X477 @ X478)))) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (axapp = $true) & (termmset_gthm = $true) & ((termmset = $true) | ? [X465 : term] : ((sub @ X465 @ id) != X465)) & (! [X465 : term] : ((sub @ X465 @ id) = X465) | (termmset != $true)) & ! [X208 : d_term] : (d_one = X208) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(flattening,[status(thm)],[f689])).
% 5.84/2.07  thf(f689,plain,(
% 5.84/2.07    ((($true = sP113) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP113))) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & ((($true = sP111) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ($true != sP111))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((($true = sP107) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lem2 = $true) | ($true != sP107))) & (((hoasapinj1 = $true) | ? [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 != X469) & ((ap @ (sub @ X466 @ id) @ X467) = (ap @ (sub @ X469 @ id) @ X468)))) & (! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468))) | (hoasapinj1 != $true))) & (pushprop_lthm = $true) & (((induction2lem_lthm = $true) | (($true != sP103) & ! [X337 : subst] : ((comp @ X337 @ id) = X337) & ($true != sP104) & ! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) & ! [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) = X336))) & ((($true = sP103) | ? [X337 : subst] : ((comp @ X337 @ id) != X337) | ($true = sP104) | ? [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) != X334) | ? [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) != X336)) | (induction2lem_lthm != $true))) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((($true = sP98) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP98))) & (hoasinduction_lem1 = $true) & (pushprop = $true) & ((($true = sP93) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP93))) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & (((? [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) != X324) | ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) | ? [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) != X325)) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) = X324) & ? [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true = (X329 @ X330)) & ($true != (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) & ! [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) = X325)))) & (ulamvarind = $true) & (((hoasinduction_lem3v2_f_lthm = $true) | ? [X424 : term] : ! [X425 : subst > term > term] : ? [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) != (sub @ X424 @ (push @ X427 @ X426)))) & (! [X424 : term] : ? [X425 : subst > term > term] : ! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426))) | (hoasinduction_lem3v2_f_lthm != $true))) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & ((! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X181 : subst > term > subst > $o] : ! [X182 : term > $o] : ? [X183 : term] : ((X182 @ X183) != (X181 @ id @ X183 @ id)))) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & (((hoasinduction_lem3v2a_lthm = $true) | (! [X291 : term] : ((sub @ X291 @ id) = X291) & ! [X287 : term] : ? [X288 : subst > term > term] : ! [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) = (X288 @ X289 @ X290)) & ($true != sP90))) & ((? [X291 : term] : ((sub @ X291 @ id) != X291) | ? [X287 : term] : ! [X288 : subst > term > term] : ? [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) != (X288 @ X289 @ X290)) | ($true = sP90)) | (hoasinduction_lem3v2a_lthm != $true))) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & ((($true = sP88) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP88))) & (hoasinduction_lem1v2 = $true) & ((! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 != X187) & ((ap @ (sub @ X185 @ id) @ X187) = (ap @ (sub @ X184 @ id) @ X186))))) & ((! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (? [X4 : term] : ((X2 @ X4) != (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true)) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) & ($true = (X0 @ X3)) & ((X2 @ one) != $true)))) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & ((! [X212 : subst] : ((comp @ X212 @ id) = X212) | (axidr != $true)) & ((axidr = $true) | ? [X212 : subst] : ((comp @ X212 @ id) != X212))) & ((! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) | (laminj != $true)) & ((laminj = $true) | ? [X188 : term,X189 : term] : (((lam @ X189) = (lam @ X188)) & (X188 != X189)))) & (((hoasinduction_lem3aaa = $true) | ($true != sP86)) & (($true = sP86) | (hoasinduction_lem3aaa != $true))) & (((hoasinduction_no_psi_cond = $true) | ? [X44 : term,X45 : subst > term > subst > $o] : (($true != (sP84 @ X45)) & ($true != (sP83 @ X45)) & ($true != (X45 @ id @ X44 @ id)))) & (! [X44 : term,X45 : subst > term > subst > $o] : (($true = (sP84 @ X45)) | ($true = (sP83 @ X45)) | ($true = (X45 @ id @ X44 @ id))) | (hoasinduction_no_psi_cond != $true))) & (((? [X257 : subst > term > subst > $o] : ! [X258 : term > $o] : ? [X259 : term] : ((X258 @ X259) != (X257 @ id @ X259 @ id)) | (sP80 = $true) | ($true = sP82) | ($true = sP81) | ? [X267 : term] : ((sub @ X267 @ id) != X267)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X257 : subst > term > subst > $o] : ? [X258 : term > $o] : ! [X259 : term] : ((X258 @ X259) = (X257 @ id @ X259 @ id)) & (sP80 != $true) & ($true != sP82) & ($true != sP81) & ! [X267 : term] : ((sub @ X267 @ id) = X267)))) & ((! [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)) | ? [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) != (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) = (ap @ (sub @ X139 @ id) @ X140)) & ! [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) = (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))))) & ((($true = sP74) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP74))) & (hoasapnotvar = $true) & (axabs = $true) & (((($true = sP69) | ($true = sP70) | ($true = sP67) | ($true = sP68)) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP69) & ($true != sP70) & ($true != sP67) & ($true != sP68)))) & (axmap = $true) & ((! [X312 : term] : ? [X313 : subst > term > term] : ((X313 @ sh @ one) = (sub @ X312 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X312 : term] : ! [X313 : subst > term > term] : ((X313 @ sh @ one) != (sub @ X312 @ (push @ one @ sh))))) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (((hoasinduction_lem3v2a = $true) | ($true != sP54)) & (($true = sP54) | (hoasinduction_lem3v2a != $true))) & (((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true))) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (((apinj1 = $true) | ? [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 != X527) & ((ap @ X526 @ X529) = (ap @ X527 @ X528)))) & (! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528))) | (apinj1 != $true))) & (((hoasinduction_lem3aa = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3aa != $true))) & ! [X135 : d_subst] : (d_id = X135) & (((hoasinduction_lem3_lthm = $true) | (($true != sP48) & ($true != sP47) & ! [X490 : term] : ((sub @ X490 @ id) = X490))) & ((($true = sP48) | ($true = sP47) | ? [X490 : term] : ((sub @ X490 @ id) != X490)) | (hoasinduction_lem3_lthm != $true))) & (pushprop_lem3v2 = $true) & ! [X524 : d_term,X525 : d_term] : ((X524 = X525) | ((d2term @ X525) != (d2term @ X524))) & ((! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ? [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) != (sub @ (X150 @ X154 @ X156) @ X155)) | ? [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) != (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) != (X150 @ X151 @ X152)) & ! [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) = (sub @ (X150 @ X154 @ X156) @ X155)) & ! [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) = (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) & ((lam @ (X153 @ sh @ one)) = (lam @ (X150 @ sh @ one)))))) & (hoasinduction_lem1_lthm = $true) & (((axshiftcons = $true) | ? [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) != X538)) & (! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538) | (axshiftcons != $true))) & ((($true = sP42) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP42))) & (ulamvar1 != $true) & ((($true = sP40) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP40))) & ((! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) != X180))) & (hoasinduction_lem2v2_gthm = $true) & ((! [X332 : subst] : ((comp @ id @ X332) = X332) | (axidl != $true)) & ((axidl = $true) | ? [X332 : subst] : ((comp @ id @ X332) != X332))) & (((apinj2 = $true) | ? [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 != X518) & ((ap @ X516 @ X515) = (ap @ X517 @ X518)))) & (! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518))) | (apinj2 != $true))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & ((($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38))) & (((substmonoid = $true) | (? [X160 : subst] : ((comp @ id @ X160) != X160) | ? [X161 : subst] : ((comp @ X161 @ id) != X161))) & ((! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161)) | (substmonoid != $true))) & (((axvarid = $true) | ? [X322 : term] : ((sub @ X322 @ id) != X322)) & (! [X322 : term] : ((sub @ X322 @ id) = X322) | (axvarid != $true))) & (((termmset_lthm = $true) | (! [X320 : term] : ((sub @ X320 @ id) = X320) & ? [X321 : term] : ((sub @ X321 @ id) != X321))) & ((? [X320 : term] : ((sub @ X320 @ id) != X320) | ! [X321 : term] : ((sub @ X321 @ id) = X321)) | (termmset_lthm != $true))) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (((hoasinduction_lem3v2_f = $true) | ? [X175 : term] : ! [X176 : subst > term > term] : ? [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) != (X176 @ X178 @ X177))) & (! [X175 : term] : ? [X176 : subst > term > term] : ! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177)) | (hoasinduction_lem3v2_f != $true))) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & ((! [X209 : subst > term > subst > $o] : ? [X210 : term > $o] : ! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X209 : subst > term > subst > $o] : ! [X210 : term > $o] : ? [X211 : term] : ((X210 @ X211) != (X209 @ id @ X211 @ id)))) & (((substmonoid_lthm = $true) | ($true != sP35)) & (($true = sP35) | (substmonoid_lthm != $true))) & (hoasapnotvar_lthm = $true) & ((! [X314 : subst,X315 : term > $o,X316 : term] : ? [X317 : term > $o] : ! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X314 : subst,X315 : term > $o,X316 : term] : ! [X317 : term > $o] : ? [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) != (X317 @ X318)))) & (axvarshift = $true) & ((! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) | (axscons != $true)) & ((axscons = $true) | ? [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) != X319))) & ((($true = sP34) | (induction2 != $true)) & ((induction2 = $true) | ($true != sP34))) & (((hoasinduction_lem3v2_lthm = $true) | (! [X222 : term] : ((sub @ X222 @ id) = X222) & ($true != sP31))) & ((? [X222 : term] : ((sub @ X222 @ id) != X222) | ($true = sP31)) | (hoasinduction_lem3v2_lthm != $true))) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) != (d2subst @ X455)) | (X454 = X455)) & (((hoasinduction_lem2v2 = $true) | ($true != sP27)) & (($true = sP27) | (hoasinduction_lem2v2 != $true))) & (((shinj = $true) | ? [X456 : term,X457 : term] : ((X456 != X457) & ((sub @ X456 @ sh) = (sub @ X457 @ sh)))) & (! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh))) | (shinj != $true))) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & (((hoasinduction_lem3b_lthm = $true) | ? [X136 : term] : ! [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) != (X137 @ sh @ one))) & (! [X136 : term] : ? [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) = (X137 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true))) & (axassoc = $true) & (((($true = sP23) | ? [X99 : term] : ((sub @ X99 @ id) != X99) | (sP24 = $true)) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | (($true != sP23) & ! [X99 : term] : ((sub @ X99 @ id) = X99) & (sP24 != $true)))) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & ((! [X519 : term > $o,X520 : term,X521 : subst] : ? [X522 : term > $o] : ! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X519 : term > $o,X520 : term,X521 : subst] : ! [X522 : term > $o] : ? [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) != (X522 @ X523)))) & (((($true = sP17) | ? [X53 : term] : ((sub @ X53 @ id) != X53) | ($true = sP16)) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP17) & ! [X53 : term] : ((sub @ X53 @ id) = X53) & ($true != sP16)))) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & (((pushprop_lem1v2_lthm = $true) | (? [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) != $true) & ! [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) = (X463 @ X464)) & ($true = (X461 @ X462))) & ! [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) = X458))) & ((! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ? [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) != (X463 @ X464)) | ($true != (X461 @ X462))) | ? [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) != X458)) | (pushprop_lem1v2_lthm != $true))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (((? [X15 : term] : ((sub @ X15 @ id) != X15) | ($true = sP13) | ($true = sP11) | ? [X5 : subst > term > subst > $o] : ! [X6 : term > $o] : ? [X7 : term] : ((X5 @ id @ X7 @ id) != (X6 @ X7)) | ($true = sP12)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X15 : term] : ((sub @ X15 @ id) = X15) & ($true != sP13) & ($true != sP11) & ! [X5 : subst > term > subst > $o] : ? [X6 : term > $o] : ! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) & ($true != sP12)))) & (hoasapinj2_gthm = $true) & ((! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true != (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) & ($true = (X477 @ X478))))) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (axapp = $true) & (termmset_gthm = $true) & (((termmset = $true) | ? [X465 : term] : ((sub @ X465 @ id) != X465)) & (! [X465 : term] : ((sub @ X465 @ id) = X465) | (termmset != $true))) & ! [X208 : d_term] : (d_one = X208) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(nnf_transformation,[status(thm)],[f130])).
% 5.84/2.07  thf(f130,plain,(
% 5.84/2.07    (($true = sP113) <=> (hoasapinj1_lthm = $true)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & (($true = sP111) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP107) <=> (hoasinduction_lem2 = $true)) & ((hoasapinj1 = $true) <=> ! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468)))) & (pushprop_lthm = $true) & ((induction2lem_lthm = $true) <=> (($true = sP103) | ? [X337 : subst] : ((comp @ X337 @ id) != X337) | ($true = sP104) | ? [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) != X334) | ? [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) != X336))) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP98) <=> (hoasinduction = $true)) & (hoasinduction_lem1 = $true) & (pushprop = $true) & (($true = sP93) <=> (induction2lem = $true)) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & ((? [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) != X324) | ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) | ? [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) != X325)) <=> (pushprop_lem1_lthm = $true)) & (ulamvarind = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X424 : term] : ? [X425 : subst > term > term] : ! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426)))) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & (! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) <=> (hoasinduction_lem0_lthm = $true)) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) <=> (? [X291 : term] : ((sub @ X291 @ id) != X291) | ? [X287 : term] : ! [X288 : subst > term > term] : ? [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) != (X288 @ X289 @ X290)) | ($true = sP90))) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & (($true = sP88) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoasinduction_lem1v2 = $true) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) <=> (hoasapinj2 = $true)) & (! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (? [X4 : term] : ((X2 @ X4) != (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true)) <=> (pushprop_lem1v2 = $true)) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) <=> (axidr = $true)) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) <=> (laminj = $true)) & ((hoasinduction_lem3aaa = $true) <=> ($true = sP86)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X44 : term,X45 : subst > term > subst > $o] : (($true = (sP84 @ X45)) | ($true = (sP83 @ X45)) | ($true = (X45 @ id @ X44 @ id)))) & ((? [X257 : subst > term > subst > $o] : ! [X258 : term > $o] : ? [X259 : term] : ((X258 @ X259) != (X257 @ id @ X259 @ id)) | (sP80 = $true) | ($true = sP82) | ($true = sP81) | ? [X267 : term] : ((sub @ X267 @ id) != X267)) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)) | ? [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) != (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))) <=> (hoaslamnotap = $true)) & (($true = sP74) <=> (hoasinduction_lem3v2 = $true)) & (hoasapnotvar = $true) & (axabs = $true) & ((($true = sP69) | ($true = sP70) | ($true = sP67) | ($true = sP68)) <=> (hoasinduction_lthm = $true)) & (axmap = $true) & (! [X312 : term] : ? [X313 : subst > term > term] : ((X313 @ sh @ one) = (sub @ X312 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3v2a = $true) <=> ($true = sP54)) & ((hoasinduction_lem3a = $true) <=> ($true = sP52)) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((apinj1 = $true) <=> ! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528)))) & ((hoasinduction_lem3aa = $true) <=> ($true = sP50)) & ! [X135 : d_subst] : (d_id = X135) & ((hoasinduction_lem3_lthm = $true) <=> (($true = sP48) | ($true = sP47) | ? [X490 : term] : ((sub @ X490 @ id) != X490))) & (pushprop_lem3v2 = $true) & ! [X524 : d_term,X525 : d_term] : ((X524 = X525) | ((d2term @ X525) != (d2term @ X524))) & (! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ? [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) != (sub @ (X150 @ X154 @ X156) @ X155)) | ? [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) != (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one)))) <=> (hoaslaminj = $true)) & (hoasinduction_lem1_lthm = $true) & ((axshiftcons = $true) <=> ! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538)) & (($true = sP42) <=> (hoasapinj2_lthm = $true)) & (ulamvar1 != $true) & (($true = sP40) <=> (hoaslaminj_lthm = $true)) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) <=> (axvarcons = $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X332 : subst] : ((comp @ id @ X332) = X332) <=> (axidl = $true)) & ((apinj2 = $true) <=> ! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518)))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & (($true = sP38) <=> (induction = $true)) & ((substmonoid = $true) <=> (! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161))) & ((axvarid = $true) <=> ! [X322 : term] : ((sub @ X322 @ id) = X322)) & ((termmset_lthm = $true) <=> (? [X320 : term] : ((sub @ X320 @ id) != X320) | ! [X321 : term] : ((sub @ X321 @ id) = X321))) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X175 : term] : ? [X176 : subst > term > term] : ! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177))) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (! [X209 : subst > term > subst > $o] : ? [X210 : term > $o] : ! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id)) <=> (hoasinduction_lem0 = $true)) & ((substmonoid_lthm = $true) <=> ($true = sP35)) & (hoasapnotvar_lthm = $true) & (! [X314 : subst,X315 : term > $o,X316 : term] : ? [X317 : term > $o] : ! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) <=> (pushprop_lem0_lthm = $true)) & (axvarshift = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) <=> (axscons = $true)) & (($true = sP34) <=> (induction2 = $true)) & ((hoasinduction_lem3v2_lthm = $true) <=> (? [X222 : term] : ((sub @ X222 @ id) != X222) | ($true = sP31))) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) != (d2subst @ X455)) | (X454 = X455)) & ((hoasinduction_lem2v2 = $true) <=> ($true = sP27)) & ((shinj = $true) <=> ! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh)))) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X136 : term] : ? [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) = (X137 @ sh @ one))) & (axassoc = $true) & ((($true = sP23) | ? [X99 : term] : ((sub @ X99 @ id) != X99) | (sP24 = $true)) <=> (induction2_lthm = $true)) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X519 : term > $o,X520 : term,X521 : subst] : ? [X522 : term > $o] : ! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) <=> (pushprop_lem0 = $true)) & ((($true = sP17) | ? [X53 : term] : ((sub @ X53 @ id) != X53) | ($true = sP16)) <=> (hoasinduction_lem3a_lthm = $true)) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & ((pushprop_lem1v2_lthm = $true) <=> (! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ? [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) != (X463 @ X464)) | ($true != (X461 @ X462))) | ? [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) != X458))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((? [X15 : term] : ((sub @ X15 @ id) != X15) | ($true = sP13) | ($true = sP11) | ? [X5 : subst > term > subst > $o] : ! [X6 : term > $o] : ? [X7 : term] : ((X5 @ id @ X7 @ id) != (X6 @ X7)) | ($true = sP12)) <=> (hoasinduction_lthm_3 = $true)) & (hoasapinj2_gthm = $true) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) <=> (pushprop_lem1 = $true)) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (axapp = $true) & (termmset_gthm = $true) & ((termmset = $true) <=> ! [X465 : term] : ((sub @ X465 @ id) = X465)) & ! [X208 : d_term] : (d_one = X208) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(definition_folding,[status(thm)],[f14,f129,f128,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])).
% 5.84/2.07  thf(f20,plain,(
% 5.84/2.07    ! [X16 : subst > term > subst > $o] : (($true = (sP4 @ X16)) <=> ! [X21 : subst > term > term] : (? [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) != (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ? [X25 : term] : (($true = (X16 @ id @ X25 @ id)) & ($true != (X16 @ id @ (X21 @ id @ X25) @ id))) | ($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f21,plain,(
% 5.84/2.07    ! [X27 : subst > term > subst > $o] : (((sP5 @ X27) = $true) <=> ? [X39 : subst > term > term] : (($true != (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id)) & ! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) & ! [X40 : term] : (($true = (X27 @ id @ (X39 @ id @ X40) @ id)) | ($true != (X27 @ id @ X40 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f22,plain,(
% 5.84/2.07    ! [X27 : subst > term > subst > $o] : (($true = (sP6 @ X27)) <=> ? [X32 : term,X33 : term] : (($true = (X27 @ id @ X33 @ id)) & ($true = (X27 @ id @ X32 @ id)) & ($true != (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f23,plain,(
% 5.84/2.07    ! [X27 : subst > term > subst > $o] : (((sP7 @ X27) = $true) <=> ? [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true != (X27 @ X31 @ X28 @ (comp @ X30 @ X29))) & ($true = (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f24,plain,(
% 5.84/2.07    ! [X27 : subst > term > subst > $o] : (($true = (sP8 @ X27)) <=> ? [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true != (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35)) & ($true = (X27 @ X38 @ X37 @ (comp @ X36 @ X35)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f25,plain,(
% 5.84/2.07    ! [X9 : term > $o] : (($true = (sP9 @ X9)) <=> ! [X13 : term,X14 : term] : (($true != (X9 @ X14)) | ($true != (X9 @ X13)) | ($true = (X9 @ (ap @ X14 @ X13)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f26,plain,(
% 5.84/2.07    ! [X9 : term > $o] : (($true = (sP10 @ X9)) <=> ! [X11 : term] : (($true = (X9 @ (lam @ X11))) | ? [X12 : term] : (($true = (X9 @ X12)) & ($true != (X9 @ (sub @ X11 @ (push @ X12 @ id)))))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f27,plain,(
% 5.84/2.07    ($true = sP11) <=> ! [X26 : term,X27 : subst > term > subst > $o] : (($true = (X27 @ id @ X26 @ id)) | ? [X34 : term] : (($true = (var @ (sub @ X34 @ id))) & ($true != (X27 @ id @ X34 @ id))) | ($true = (sP6 @ X27)) | ((sP5 @ X27) = $true) | ($true = (sP8 @ X27)) | ((sP7 @ X27) = $true))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f28,plain,(
% 5.84/2.07    ($true = sP12) <=> ? [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) & ($true = (sP4 @ X16)) & ($true != (X18 @ (lam @ X17))) & ! [X20 : term] : (($true = (X18 @ (sub @ X17 @ (push @ X20 @ id)))) | ($true != (X18 @ X20))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f29,plain,(
% 5.84/2.07    ($true = sP13) <=> ? [X8 : term,X9 : term > $o] : (! [X10 : term] : (($true != (var @ X10)) | ($true = (X9 @ X10))) & ($true != (X9 @ X8)) & ($true = (sP10 @ X9)) & ($true = (sP9 @ X9)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f30,plain,(
% 5.84/2.07    ! [X63 : subst > term > subst > $o] : (($true = (sP14 @ X63)) <=> ? [X65 : subst > term > term] : (($true != (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)) & ! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) & ! [X66 : term] : (($true = (X63 @ id @ (X65 @ id @ X66) @ id)) | ($true != (X63 @ id @ X66 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f31,plain,(
% 5.84/2.07    ! [X55 : subst > term > subst > $o] : (($true = (sP15 @ X55)) <=> ! [X57 : subst > term > term] : (? [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) != (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ? [X61 : term] : (($true != (X55 @ id @ (X57 @ id @ X61) @ id)) & ($true = (X55 @ id @ X61 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f32,plain,(
% 5.84/2.07    ($true = sP16) <=> ! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ($true = (sP14 @ X63)) | ? [X64 : term] : (((X63 @ id @ X64 @ id) = $true) & ($true != (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f33,plain,(
% 5.84/2.07    ($true = sP17) <=> ? [X54 : term,X55 : subst > term > subst > $o] : (($true = (sP15 @ X55)) & ($true != (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id)) & ! [X56 : term] : (((X55 @ id @ X56 @ id) != $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f34,plain,(
% 5.84/2.07    ! [X102 : term > $o] : (($true = (sP18 @ X102)) <=> ! [X104 : term,X105 : term] : (($true != (X102 @ X105)) | ($true = (X102 @ (ap @ X104 @ X105))) | ((X102 @ X104) != $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f35,plain,(
% 5.84/2.07    ! [X100 : subst,X102 : term > $o] : (($true = (sP19 @ X102 @ X100)) <=> ! [X103 : term] : (($true = (X102 @ (sub @ X103 @ X100))) | ($true != (var @ X103))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f36,plain,(
% 5.84/2.07    ! [X102 : term > $o] : (($true = (sP20 @ X102)) <=> ! [X106 : term] : (? [X107 : term] : (($true = (X102 @ X107)) & ($true != (X102 @ (sub @ X106 @ (push @ X107 @ id))))) | ((X102 @ (lam @ X106)) = $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f37,plain,(
% 5.84/2.07    ! [X109 : term > $o] : (($true = (sP21 @ X109)) <=> ? [X113 : term] : (! [X114 : term] : (($true != (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))) & ($true != (X109 @ (lam @ X113)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f38,plain,(
% 5.84/2.07    ! [X109 : term > $o] : (($true = (sP22 @ X109)) <=> ? [X110 : term,X111 : term] : (($true = (X109 @ X111)) & ($true = (X109 @ X110)) & ($true != (X109 @ (ap @ X111 @ X110)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f39,plain,(
% 5.84/2.07    ($true = sP23) <=> ! [X108 : term,X109 : term > $o] : (($true = (X109 @ X108)) | ($true = (sP21 @ X109)) | ($true = (sP22 @ X109)) | ? [X112 : term] : (($true != (X109 @ X112)) & ($true = (var @ X112))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f40,plain,(
% 5.84/2.07    (sP24 = $true) <=> ? [X100 : subst,X101 : term,X102 : term > $o] : (($true = (sP18 @ X102)) & ($true != (X102 @ (sub @ X101 @ X100))) & ($true = (sP20 @ X102)) & ($true = (sP19 @ X102 @ X100)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f41,plain,(
% 5.84/2.07    ! [X82 : subst > term > subst > $o] : (($true = (sP25 @ X82)) <=> ? [X91 : term,X92 : term] : (($true != (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id)) & ($true = (X82 @ id @ X91 @ id)) & ($true = (X82 @ id @ X92 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f42,plain,(
% 5.84/2.07    ! [X82 : subst > term > subst > $o] : (($true = (sP26 @ X82)) <=> ? [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (($true = (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88)) & ($true != (X82 @ X89 @ X87 @ (comp @ X86 @ X88)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f43,plain,(
% 5.84/2.07    ($true = sP27) <=> ! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (($true != (X83 @ X85)) | ? [X90 : term] : ((X82 @ id @ X90 @ id) != (X83 @ X90)) | ($true = (sP25 @ X82)) | ($true != (X83 @ X84)) | ? [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) & ($true != (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84))) | ($true = (sP26 @ X82)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f44,plain,(
% 5.84/2.07    ! [X223 : subst > term > subst > $o] : (($true = (sP28 @ X223)) <=> ? [X226 : subst > term > term] : (! [X227 : term,X228 : subst,X229 : subst] : ((sub @ (X226 @ X229 @ X227) @ X228) = (X226 @ (comp @ X229 @ X228) @ (sub @ X227 @ X228))) & ! [X230 : term] : (((X223 @ id @ X230 @ id) != $true) | ($true = (X223 @ id @ (X226 @ id @ X230) @ id))) & ((X223 @ id @ (lam @ (X226 @ sh @ one)) @ id) != $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f45,plain,(
% 5.84/2.07    ! [X223 : subst > term > subst > $o] : (($true = (sP29 @ X223)) <=> ? [X232 : subst,X233 : term,X234 : subst,X235 : subst] : (($true = (X223 @ (comp @ X235 @ X232) @ (sub @ X233 @ X232) @ X234)) & ($true != (X223 @ X235 @ X233 @ (comp @ X232 @ X234)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f46,plain,(
% 5.84/2.07    ! [X223 : subst > term > subst > $o] : (($true = (sP30 @ X223)) <=> ? [X236 : subst,X237 : subst,X238 : subst,X239 : term] : (($true != (X223 @ (comp @ X237 @ X238) @ (sub @ X239 @ X238) @ X236)) & ($true = (X223 @ X237 @ X239 @ (comp @ X238 @ X236)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f47,plain,(
% 5.84/2.07    ($true = sP31) <=> ! [X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (((X224 @ (lam @ X225)) = $true) | ? [X240 : term] : (($true != (X224 @ (sub @ X225 @ (push @ X240 @ id)))) & ($true = (X224 @ X240))) | ($true = (sP30 @ X223)) | ($true = (sP28 @ X223)) | ($true = (sP29 @ X223)) | ? [X231 : term] : ((X224 @ X231) != (X223 @ id @ X231 @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f48,plain,(
% 5.84/2.07    ! [X471 : term > $o] : (($true = (sP32 @ X471)) <=> ? [X475 : term] : (($true != (X471 @ (lam @ X475))) & ! [X476 : term] : (($true = (X471 @ (sub @ X475 @ (push @ X476 @ id)))) | ($true != (X471 @ X476)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f49,plain,(
% 5.84/2.07    ! [X471 : term > $o] : (($true = (sP33 @ X471)) <=> ? [X472 : term,X473 : term] : (($true = (X471 @ X472)) & ($true = (X471 @ X473)) & ($true != (X471 @ (ap @ X472 @ X473)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f50,plain,(
% 5.84/2.07    ($true = sP34) <=> ! [X470 : term,X471 : term > $o] : (? [X474 : term] : (($true != (X471 @ X474)) & ($true = (var @ X474))) | ($true = (sP33 @ X471)) | ($true = (X471 @ X470)) | ($true = (sP32 @ X471)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f51,plain,(
% 5.84/2.07    ($true = sP35) <=> (? [X115 : subst] : ((comp @ id @ X115) != X115) | ? [X116 : subst] : ((comp @ X116 @ id) != X116) | (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f52,plain,(
% 5.84/2.07    ! [X144 : term > $o] : (($true = (sP36 @ X144)) <=> ? [X147 : term,X148 : term] : (($true != (X144 @ (ap @ X147 @ X148))) & ($true = (X144 @ X147)) & ($true = (X144 @ X148))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f53,plain,(
% 5.84/2.07    ! [X144 : term > $o] : (($true = (sP37 @ X144)) <=> ? [X146 : term] : (($true = (X144 @ X146)) & ($true != (X144 @ (lam @ X146)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f54,plain,(
% 5.84/2.07    ($true = sP38) <=> ! [X144 : term > $o,X145 : term] : (? [X149 : term] : (((var @ X149) = $true) & ($true != (X144 @ X149))) | ($true = (X144 @ X145)) | ($true = (sP36 @ X144)) | ($true = (sP37 @ X144)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f55,plain,(
% 5.84/2.07    ($true = sP39) <=> ! [X247 : subst > term > term,X248 : subst > term > term,X249 : term,X250 : subst] : (((lam @ (X247 @ sh @ one)) != (lam @ (X248 @ sh @ one))) | ? [X251 : subst,X252 : subst,X253 : term] : ((sub @ (X248 @ X252 @ X253) @ X251) != (X248 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251))) | ? [X254 : subst,X255 : term,X256 : subst] : ((X247 @ (comp @ X254 @ X256) @ (sub @ X255 @ X256)) != (sub @ (X247 @ X254 @ X255) @ X256)) | ((X248 @ X250 @ X249) = (X247 @ X250 @ X249)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f56,plain,(
% 5.84/2.07    ($true = sP40) <=> (? [X245 : term,X246 : term] : (((lam @ X246) = (lam @ X245)) & (X245 != X246)) | ($true = sP39) | ? [X243 : term,X244 : subst] : ((comp @ sh @ (push @ X243 @ X244)) != X244) | ? [X241 : subst,X242 : term] : ((sub @ one @ (push @ X242 @ X241)) != X242))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f57,plain,(
% 5.84/2.07    ($true = sP41) <=> ! [X450 : term,X451 : term,X452 : term,X453 : term] : (((ap @ (sub @ X451 @ id) @ X453) != (ap @ (sub @ X452 @ id) @ X450)) | (X450 = X453))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f58,plain,(
% 5.84/2.07    ($true = sP42) <=> (($true = sP41) | ? [X446 : term,X447 : term,X448 : term,X449 : term] : (((ap @ X448 @ X446) = (ap @ X449 @ X447)) & (X446 != X447)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f59,plain,(
% 5.84/2.07    ! [X500 : subst > term > subst > $o] : (($true = (sP43 @ X500)) <=> ? [X505 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X505 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X505 @ X507 @ X508) @ X506)) & ! [X509 : term] : (($true != (X500 @ id @ X509 @ id)) | ($true = (X500 @ id @ (X505 @ id @ X509) @ id))) & ($true != (X500 @ id @ (lam @ (X505 @ sh @ one)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f60,plain,(
% 5.84/2.07    ! [X500 : subst > term > subst > $o] : (($true = (sP44 @ X500)) <=> ? [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (($true = (X500 @ (comp @ X511 @ X513) @ (sub @ X510 @ X513) @ X512)) & ($true != (X500 @ X511 @ X510 @ (comp @ X513 @ X512)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f61,plain,(
% 5.84/2.07    ! [X500 : subst > term > subst > $o] : (($true = (sP45 @ X500)) <=> ? [X501 : subst,X502 : subst,X503 : term,X504 : subst] : (((X500 @ X502 @ X503 @ (comp @ X504 @ X501)) = $true) & ($true != (X500 @ (comp @ X502 @ X504) @ (sub @ X503 @ X504) @ X501))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f62,plain,(
% 5.84/2.07    ! [X491 : subst > term > subst > $o] : (($true = (sP46 @ X491)) <=> ! [X494 : subst > term > term] : (((X491 @ id @ (lam @ (X494 @ sh @ one)) @ id) = $true) | ? [X495 : term,X496 : subst,X497 : subst] : ((X494 @ (comp @ X496 @ X497) @ (sub @ X495 @ X497)) != (sub @ (X494 @ X496 @ X495) @ X497)) | ? [X498 : term] : (($true != (X491 @ id @ (X494 @ id @ X498) @ id)) & ($true = (X491 @ id @ X498 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f63,plain,(
% 5.84/2.07    ($true = sP47) <=> ! [X499 : term,X500 : subst > term > subst > $o] : (? [X514 : term] : (($true != (X500 @ id @ (sub @ X499 @ (push @ X514 @ id)) @ id)) & ($true = (X500 @ id @ X514 @ id))) | ($true = (sP45 @ X500)) | ($true = (X500 @ id @ (lam @ X499) @ id)) | ($true = (sP43 @ X500)) | ($true = (sP44 @ X500)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f64,plain,(
% 5.84/2.07    ($true = sP48) <=> ? [X491 : subst > term > subst > $o,X492 : term] : (($true != (X491 @ id @ (lam @ (sub @ X492 @ (push @ one @ sh))) @ id)) & ! [X493 : term] : (($true = (X491 @ id @ (sub @ X492 @ (push @ X493 @ id)) @ id)) | ($true != (X491 @ id @ X493 @ id))) & ($true = (sP46 @ X491)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f65,plain,(
% 5.84/2.07    ! [X353 : subst > term > subst > $o] : (($true = (sP49 @ X353)) <=> ? [X354 : subst > term > term] : (! [X358 : term] : (($true = (X353 @ id @ (X354 @ id @ X358) @ id)) | ($true != (X353 @ id @ X358 @ id))) & ($true != (X353 @ id @ (lam @ (X354 @ sh @ one)) @ id)) & ! [X355 : subst,X356 : term,X357 : subst] : ((X354 @ (comp @ X355 @ X357) @ (sub @ X356 @ X357)) = (sub @ (X354 @ X355 @ X356) @ X357))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f66,plain,(
% 5.84/2.07    ($true = sP50) <=> ! [X352 : term,X353 : subst > term > subst > $o] : (($true = (X353 @ id @ (lam @ (sub @ X352 @ (push @ one @ sh))) @ id)) | ($true = (sP49 @ X353)) | ? [X359 : term] : (((X353 @ id @ (sub @ X352 @ (push @ X359 @ id)) @ id) != $true) & ($true = (X353 @ id @ X359 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f67,plain,(
% 5.84/2.07    ! [X304 : subst > term > subst > $o] : (((sP51 @ X304) = $true) <=> ? [X307 : subst > term > term] : (! [X308 : term] : (($true = (X304 @ id @ (X307 @ id @ X308) @ id)) | ($true != (X304 @ id @ X308 @ id))) & ($true != (X304 @ id @ (lam @ (X307 @ sh @ one)) @ id)) & ! [X309 : subst,X310 : subst,X311 : term] : ((X307 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309)) = (sub @ (X307 @ X310 @ X311) @ X309))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f68,plain,(
% 5.84/2.07    ($true = sP52) <=> ! [X304 : subst > term > subst > $o,X305 : term] : (((sP51 @ X304) = $true) | ? [X306 : term] : (($true != (X304 @ id @ (sub @ X305 @ (push @ X306 @ id)) @ id)) & ($true = (X304 @ id @ X306 @ id))) | ((X304 @ id @ (lam @ X305) @ id) = $true))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f69,plain,(
% 5.84/2.07    ! [X360 : subst > term > subst > $o] : (($true = (sP53 @ X360)) <=> ? [X363 : subst > term > term] : (! [X364 : term,X365 : subst,X366 : subst] : ((sub @ (X363 @ X365 @ X364) @ X366) = (X363 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))) & ((X360 @ id @ (lam @ (X363 @ sh @ one)) @ id) != $true) & ! [X367 : term] : (($true = (X360 @ id @ (X363 @ id @ X367) @ id)) | ($true != (X360 @ id @ X367 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f70,plain,(
% 5.84/2.07    ($true = sP54) <=> ! [X360 : subst > term > subst > $o,X361 : term,X362 : term > $o] : (? [X368 : term] : (($true != (X362 @ (sub @ X361 @ (push @ X368 @ id)))) & ($true = (X362 @ X368))) | ($true = (X362 @ (lam @ X361))) | ? [X369 : term] : ((X360 @ id @ X369 @ id) != (X362 @ X369)) | ($true = (sP53 @ X360)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f71,plain,(
% 5.84/2.07    ! [X390 : subst > term > subst > $o] : (($true = (sP55 @ X390)) <=> ! [X396 : subst > term > term] : (($true = (X390 @ id @ (lam @ (X396 @ sh @ one)) @ id)) | ? [X397 : subst,X398 : subst,X399 : term] : ((sub @ (X396 @ X398 @ X399) @ X397) != (X396 @ (comp @ X398 @ X397) @ (sub @ X399 @ X397))) | ? [X400 : term] : (($true != (X390 @ id @ (X396 @ id @ X400) @ id)) & ($true = (X390 @ id @ X400 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f72,plain,(
% 5.84/2.07    ! [X390 : subst > term > subst > $o] : (($true = (sP56 @ X390)) <=> ! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (($true = (X390 @ (comp @ X403 @ X402) @ (sub @ X405 @ X402) @ X404)) | ((X390 @ X403 @ X405 @ (comp @ X402 @ X404)) != $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f73,plain,(
% 5.84/2.07    ! [X390 : subst > term > subst > $o,X391 : term] : (($true = (sP57 @ X391 @ X390)) <=> ! [X401 : term] : (((X390 @ id @ X401 @ id) != $true) | ($true = (X390 @ id @ (sub @ X391 @ (push @ X401 @ id)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f74,plain,(
% 5.84/2.07    ! [X407 : subst > term > subst > $o] : (($true = (sP58 @ X407)) <=> ? [X409 : subst > term > term] : (! [X410 : term] : (($true = (X407 @ id @ (X409 @ id @ X410) @ id)) | ($true != (X407 @ id @ X410 @ id))) & ! [X411 : subst,X412 : subst,X413 : term] : ((sub @ (X409 @ X411 @ X413) @ X412) = (X409 @ (comp @ X411 @ X412) @ (sub @ X413 @ X412))) & ($true != (X407 @ id @ (lam @ (X409 @ sh @ one)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f75,plain,(
% 5.84/2.07    ! [X407 : subst > term > subst > $o] : (($true = (sP59 @ X407)) <=> ? [X422 : term,X423 : term] : (($true != (X407 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id)) & ($true = (X407 @ id @ X423 @ id)) & ($true = (X407 @ id @ X422 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f76,plain,(
% 5.84/2.07    ! [X407 : subst > term > subst > $o] : (($true = (sP60 @ X407)) <=> ? [X414 : subst,X415 : subst,X416 : subst,X417 : term] : (($true != (X407 @ (comp @ X415 @ X414) @ (sub @ X417 @ X414) @ X416)) & ($true = (X407 @ X415 @ X417 @ (comp @ X414 @ X416)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f77,plain,(
% 5.84/2.07    ! [X407 : subst > term > subst > $o] : (($true = (sP61 @ X407)) <=> ? [X418 : subst,X419 : term,X420 : subst,X421 : subst] : (($true != (X407 @ X420 @ X419 @ (comp @ X421 @ X418))) & ($true = (X407 @ (comp @ X420 @ X421) @ (sub @ X419 @ X421) @ X418))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f78,plain,(
% 5.84/2.07    ! [X370 : term > $o] : (($true = (sP62 @ X370)) <=> ! [X374 : term,X375 : term] : (((X370 @ X374) != $true) | ($true = (X370 @ (ap @ X375 @ X374))) | ($true != (X370 @ X375))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f79,plain,(
% 5.84/2.07    ! [X370 : term > $o] : (((sP63 @ X370) = $true) <=> ! [X376 : term] : (($true != (var @ X376)) | ($true = (X370 @ X376))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f80,plain,(
% 5.84/2.07    ! [X370 : term > $o] : (($true = (sP64 @ X370)) <=> ! [X372 : term] : (($true = (X370 @ (lam @ X372))) | ? [X373 : term] : (($true = (X370 @ X373)) & ($true != (X370 @ (sub @ X372 @ (push @ X373 @ id)))))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f81,plain,(
% 5.84/2.07    ! [X379 : subst > term > subst > $o] : (($true = (sP65 @ X379)) <=> ! [X388 : term,X389 : term] : (((X379 @ id @ X388 @ id) != $true) | ($true = (X379 @ id @ (ap @ (sub @ X389 @ id) @ X388) @ id)) | ($true != (X379 @ id @ X389 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f82,plain,(
% 5.84/2.07    ! [X379 : subst > term > subst > $o] : (($true = (sP66 @ X379)) <=> ! [X384 : term,X385 : subst,X386 : subst,X387 : subst] : (($true != (X379 @ X387 @ X384 @ (comp @ X385 @ X386))) | ($true = (X379 @ (comp @ X387 @ X385) @ (sub @ X384 @ X385) @ X386))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f83,plain,(
% 5.84/2.07    ($true = sP67) <=> ! [X406 : term,X407 : subst > term > subst > $o] : (? [X408 : term] : (($true != (X407 @ id @ X408 @ id)) & ($true = (var @ (sub @ X408 @ id)))) | ($true = (sP61 @ X407)) | ($true = (sP59 @ X407)) | ($true = (sP60 @ X407)) | ($true = (sP58 @ X407)) | ($true = (X407 @ id @ X406 @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f84,plain,(
% 5.84/2.07    ($true = sP68) <=> ? [X390 : subst > term > subst > $o,X391 : term] : (($true != (X390 @ id @ (lam @ X391) @ id)) & ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true = (X390 @ X392 @ X395 @ (comp @ X394 @ X393))) | ($true != (X390 @ (comp @ X392 @ X394) @ (sub @ X395 @ X394) @ X393))) & ($true = (sP57 @ X391 @ X390)) & ($true = (sP55 @ X390)) & ($true = (sP56 @ X390)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f85,plain,(
% 5.84/2.07    ($true = sP69) <=> ? [X377 : term,X378 : term,X379 : subst > term > subst > $o] : (($true != (X379 @ id @ (ap @ X378 @ X377) @ id)) & ! [X380 : subst,X381 : subst,X382 : subst,X383 : term] : (($true != (X379 @ (comp @ X381 @ X382) @ (sub @ X383 @ X382) @ X380)) | ($true = (X379 @ X381 @ X383 @ (comp @ X382 @ X380)))) & ($true = (sP66 @ X379)) & ($true = (sP65 @ X379)) & ($true = (X379 @ id @ X377 @ id)) & ($true = (X379 @ id @ X378 @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f86,plain,(
% 5.84/2.07    ($true = sP70) <=> ? [X370 : term > $o,X371 : term] : (($true = (sP62 @ X370)) & ($true = (sP64 @ X370)) & ((sP63 @ X370) = $true) & ($true != (X370 @ X371)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f87,plain,(
% 5.84/2.07    ! [X192 : subst > term > subst > $o] : (($true = (sP71 @ X192)) <=> ? [X195 : subst > term > term] : (! [X196 : subst,X197 : subst,X198 : term] : ((sub @ (X195 @ X197 @ X198) @ X196) = (X195 @ (comp @ X197 @ X196) @ (sub @ X198 @ X196))) & ($true != (X192 @ id @ (lam @ (X195 @ sh @ one)) @ id)) & ! [X199 : term] : (($true != (X192 @ id @ X199 @ id)) | ($true = (X192 @ id @ (X195 @ id @ X199) @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f88,plain,(
% 5.84/2.07    ! [X192 : subst > term > subst > $o] : (($true = (sP72 @ X192)) <=> ? [X204 : term,X205 : subst,X206 : subst,X207 : subst] : (($true != (X192 @ (comp @ X206 @ X205) @ (sub @ X204 @ X205) @ X207)) & ($true = (X192 @ X206 @ X204 @ (comp @ X205 @ X207)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f89,plain,(
% 5.84/2.07    ! [X191 : term,X190 : term > $o] : (($true = (sP73 @ X190 @ X191)) <=> ? [X194 : term] : (((X190 @ (sub @ X191 @ (push @ X194 @ id))) != $true) & ($true = (X190 @ X194))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f90,plain,(
% 5.84/2.07    ($true = sP74) <=> ! [X190 : term > $o,X191 : term,X192 : subst > term > subst > $o] : (? [X200 : subst,X201 : subst,X202 : term,X203 : subst] : (($true = (X192 @ (comp @ X201 @ X203) @ (sub @ X202 @ X203) @ X200)) & ($true != (X192 @ X201 @ X202 @ (comp @ X203 @ X200)))) | ($true = (sP73 @ X190 @ X191)) | ($true = (X190 @ (lam @ X191))) | ? [X193 : term] : ((X192 @ id @ X193 @ id) != (X190 @ X193)) | ($true = (sP72 @ X192)) | ($true = (sP71 @ X192)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f91,plain,(
% 5.84/2.07    ! [X269 : subst > term > subst > $o] : (($true = (sP75 @ X269)) <=> ! [X273 : subst > term > term] : (? [X275 : subst,X276 : subst,X277 : term] : ((sub @ (X273 @ X276 @ X277) @ X275) != (X273 @ (comp @ X276 @ X275) @ (sub @ X277 @ X275))) | ? [X274 : term] : (($true != (X269 @ id @ (X273 @ id @ X274) @ id)) & ($true = (X269 @ id @ X274 @ id))) | ($true = (X269 @ id @ (lam @ (X273 @ sh @ one)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f92,plain,(
% 5.84/2.07    ! [X260 : term > $o] : (((sP76 @ X260) = $true) <=> ! [X264 : term,X265 : term] : (($true = (X260 @ (ap @ X265 @ X264))) | ($true != (X260 @ X265)) | ($true != (X260 @ X264))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f93,plain,(
% 5.84/2.07    ! [X260 : term > $o] : (($true = (sP77 @ X260)) <=> ! [X262 : term] : (? [X263 : term] : (($true = (X260 @ X263)) & ($true != (X260 @ (sub @ X262 @ (push @ X263 @ id))))) | ($true = (X260 @ (lam @ X262)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f94,plain,(
% 5.84/2.07    ! [X278 : subst > term > subst > $o] : (($true = (sP78 @ X278)) <=> ? [X280 : subst > term > term] : (($true != (X278 @ id @ (lam @ (X280 @ sh @ one)) @ id)) & ! [X281 : subst,X282 : term,X283 : subst] : ((sub @ (X280 @ X283 @ X282) @ X281) = (X280 @ (comp @ X283 @ X281) @ (sub @ X282 @ X281))) & ! [X284 : term] : (($true = (X278 @ id @ (X280 @ id @ X284) @ id)) | ($true != (X278 @ id @ X284 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f95,plain,(
% 5.84/2.07    ! [X278 : subst > term > subst > $o] : (($true = (sP79 @ X278)) <=> ? [X285 : term,X286 : term] : (($true = (X278 @ id @ X286 @ id)) & ($true != (X278 @ id @ (ap @ (sub @ X285 @ id) @ X286) @ id)) & ($true = (X278 @ id @ X285 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f96,plain,(
% 5.84/2.07    (sP80 = $true) <=> ! [X278 : subst > term > subst > $o,X279 : term] : (($true = (sP78 @ X278)) | ($true = (sP79 @ X278)) | ($true = (X278 @ id @ X279 @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f97,plain,(
% 5.84/2.07    ($true = sP81) <=> ? [X268 : term,X269 : subst > term > subst > $o,X270 : term > $o] : (($true = (sP75 @ X269)) & ! [X272 : term] : ((X270 @ X272) = (X269 @ id @ X272 @ id)) & ! [X271 : term] : (($true != (X270 @ X271)) | ($true = (X270 @ (sub @ X268 @ (push @ X271 @ id))))) & ($true != (X270 @ (lam @ X268))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f98,plain,(
% 5.84/2.07    ($true = sP82) <=> ? [X260 : term > $o,X261 : term] : (($true != (X260 @ X261)) & ! [X266 : term] : (($true != (var @ X266)) | ($true = (X260 @ X266))) & ($true = (sP77 @ X260)) & ((sP76 @ X260) = $true))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f99,plain,(
% 5.84/2.07    ! [X45 : subst > term > subst > $o] : (($true = (sP83 @ X45)) <=> ? [X48 : subst > term > term] : (! [X49 : term] : (($true = (X45 @ id @ (X48 @ id @ X49) @ id)) | ($true != (X45 @ id @ X49 @ id))) & ! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)) & ($true != (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f100,plain,(
% 5.84/2.07    ! [X45 : subst > term > subst > $o] : (($true = (sP84 @ X45)) <=> ? [X46 : term,X47 : term] : (($true != (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id)) & ($true = (X45 @ id @ X46 @ id)) & ($true = (X45 @ id @ X47 @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f101,plain,(
% 5.84/2.07    ! [X71 : subst > term > subst > $o] : (($true = (sP85 @ X71)) <=> ? [X72 : subst > term > term,X73 : term] : (($true != (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id)) & ! [X80 : term] : (($true != (X71 @ id @ X80 @ id)) | ($true = (X71 @ id @ (X72 @ id @ X80) @ id))) & ! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) & ! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f102,plain,(
% 5.84/2.07    ($true = sP86) <=> ! [X70 : term,X71 : subst > term > subst > $o] : (($true = (sP85 @ X71)) | ? [X81 : term] : (($true != (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) & ($true = (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f103,plain,(
% 5.84/2.07    ! [X531 : subst > term > subst > $o] : (($true = (sP87 @ X531)) <=> ? [X532 : subst > term > term] : (! [X533 : term,X534 : subst,X535 : subst] : ((sub @ (X532 @ X535 @ X533) @ X534) = (X532 @ (comp @ X535 @ X534) @ (sub @ X533 @ X534))) & ($true != (X531 @ id @ (lam @ (X532 @ sh @ one)) @ id)) & ! [X536 : term] : (($true = (X531 @ id @ (X532 @ id @ X536) @ id)) | ($true != (X531 @ id @ X536 @ id)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f104,plain,(
% 5.84/2.07    ($true = sP88) <=> ! [X530 : term,X531 : subst > term > subst > $o] : (? [X537 : term] : (($true = (X531 @ id @ X537 @ id)) & ((X531 @ id @ (sub @ X530 @ (push @ X537 @ id)) @ id) != $true)) | ($true = (sP87 @ X531)) | ($true = (X531 @ id @ (lam @ (sub @ X530 @ (push @ one @ sh))) @ id)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f105,plain,(
% 5.84/2.07    ! [X294 : subst > term > subst > $o] : (((sP89 @ X294) = $true) <=> ? [X295 : subst > term > term] : (($true != (X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) & ! [X299 : term] : (($true != (X294 @ id @ X299 @ id)) | ($true = (X294 @ id @ (X295 @ id @ X299) @ id))) & ! [X296 : term,X297 : subst,X298 : subst] : ((sub @ (X295 @ X297 @ X296) @ X298) = (X295 @ (comp @ X297 @ X298) @ (sub @ X296 @ X298)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f106,plain,(
% 5.84/2.07    ($true = sP90) <=> ! [X292 : term,X293 : term > $o,X294 : subst > term > subst > $o] : (((sP89 @ X294) = $true) | ? [X300 : term] : (($true != (X293 @ (sub @ X292 @ (push @ X300 @ id)))) & ($true = (X293 @ X300))) | ? [X301 : term] : ((X294 @ id @ X301 @ id) != (X293 @ X301)) | ($true = (X293 @ (lam @ X292))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f107,plain,(
% 5.84/2.07    ! [X484 : term > $o] : (($true = (sP91 @ X484)) <=> ? [X485 : term] : (! [X486 : term] : (($true = (X484 @ (sub @ X485 @ (push @ X486 @ id)))) | ($true != (X484 @ X486))) & ($true != (X484 @ (lam @ X485)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f108,plain,(
% 5.84/2.07    ! [X484 : term > $o] : (($true = (sP92 @ X484)) <=> ? [X487 : term,X488 : term] : (($true = (X484 @ X488)) & ($true != (X484 @ (ap @ X488 @ X487))) & ($true = (X484 @ X487))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f109,plain,(
% 5.84/2.07    ($true = sP93) <=> ! [X482 : subst,X483 : term,X484 : term > $o] : (? [X489 : term] : (($true != (X484 @ (sub @ X489 @ X482))) & ($true = (var @ X489))) | ($true = (X484 @ (sub @ X483 @ X482))) | ($true = (sP92 @ X484)) | ($true = (sP91 @ X484)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f110,plain,(
% 5.84/2.07    ! [X428 : subst > term > subst > $o] : (($true = (sP94 @ X428)) <=> ? [X430 : subst > term > term] : (! [X431 : term,X432 : subst,X433 : subst] : ((sub @ (X430 @ X432 @ X431) @ X433) = (X430 @ (comp @ X432 @ X433) @ (sub @ X431 @ X433))) & ($true != (X428 @ id @ (lam @ (X430 @ sh @ one)) @ id)) & ! [X434 : term] : (($true != (X428 @ id @ X434 @ id)) | ((X428 @ id @ (X430 @ id @ X434) @ id) = $true))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f111,plain,(
% 5.84/2.07    ! [X428 : subst > term > subst > $o] : (($true = (sP95 @ X428)) <=> ? [X435 : term,X436 : term] : (($true = (X428 @ id @ X436 @ id)) & ($true = (X428 @ id @ X435 @ id)) & ($true != (X428 @ id @ (ap @ (sub @ X435 @ id) @ X436) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f112,plain,(
% 5.84/2.07    ! [X428 : subst > term > subst > $o] : (($true = (sP96 @ X428)) <=> ? [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (($true = (X428 @ X444 @ X441 @ (comp @ X443 @ X442))) & ($true != (X428 @ (comp @ X444 @ X443) @ (sub @ X441 @ X443) @ X442))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f113,plain,(
% 5.84/2.07    ! [X428 : subst > term > subst > $o] : (($true = (sP97 @ X428)) <=> ? [X437 : subst,X438 : subst,X439 : term,X440 : subst] : (($true = (X428 @ (comp @ X438 @ X440) @ (sub @ X439 @ X440) @ X437)) & ($true != (X428 @ X438 @ X439 @ (comp @ X440 @ X437)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f114,plain,(
% 5.84/2.07    ($true = sP98) <=> ! [X428 : subst > term > subst > $o,X429 : term] : (($true = (sP94 @ X428)) | ? [X445 : term] : (($true = (var @ (sub @ X445 @ id))) & ($true != (X428 @ id @ X445 @ id))) | ($true = (sP97 @ X428)) | ($true = (sP95 @ X428)) | ($true = (X428 @ id @ X429 @ id)) | ($true = (sP96 @ X428)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f115,plain,(
% 5.84/2.07    ! [X338 : term > $o] : (($true = (sP99 @ X338)) <=> ! [X341 : term,X342 : term] : (($true != (X338 @ X342)) | ($true != (X338 @ X341)) | ($true = (X338 @ (ap @ X341 @ X342)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f116,plain,(
% 5.84/2.07    ! [X338 : term > $o] : (($true = (sP100 @ X338)) <=> ! [X340 : term] : (($true != (var @ X340)) | ($true = (X338 @ X340))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f117,plain,(
% 5.84/2.07    ! [X345 : term > $o] : (($true = (sP101 @ X345)) <=> ? [X347 : term] : (($true != (X345 @ (lam @ X347))) & ! [X348 : term] : (($true != (X345 @ X348)) | ($true = (X345 @ (sub @ X347 @ (push @ X348 @ id)))))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f118,plain,(
% 5.84/2.07    ! [X345 : term > $o] : (((sP102 @ X345) = $true) <=> ? [X350 : term,X351 : term] : (($true != (X345 @ (ap @ X351 @ X350))) & ($true = (X345 @ X350)) & ((X345 @ X351) = $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f119,plain,(
% 5.84/2.07    ($true = sP103) <=> ! [X344 : term,X345 : term > $o,X346 : subst] : (? [X349 : term] : (((var @ X349) = $true) & ($true != (X345 @ (sub @ X349 @ X346)))) | ((sP102 @ X345) = $true) | ($true = (X345 @ (sub @ X344 @ X346))) | ($true = (sP101 @ X345)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f120,plain,(
% 5.84/2.07    ($true = sP104) <=> ? [X338 : term > $o,X339 : term] : (! [X343 : term] : (($true != (X338 @ X343)) | ($true = (X338 @ (lam @ X343)))) & ($true != (X338 @ X339)) & ($true = (sP99 @ X338)) & ($true = (sP100 @ X338)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f121,plain,(
% 5.84/2.07    ! [X164 : subst > term > subst > $o] : (($true = (sP105 @ X164)) <=> ? [X165 : term,X166 : term] : (($true = (X164 @ id @ X166 @ id)) & ($true = (X164 @ id @ X165 @ id)) & ($true != (X164 @ id @ (ap @ (sub @ X165 @ id) @ X166) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f122,plain,(
% 5.84/2.07    ! [X164 : subst > term > subst > $o] : (($true = (sP106 @ X164)) <=> ? [X167 : subst,X168 : subst,X169 : subst,X170 : term] : (($true = (X164 @ X167 @ X170 @ (comp @ X169 @ X168))) & ($true != (X164 @ (comp @ X167 @ X169) @ (sub @ X170 @ X169) @ X168))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f123,plain,(
% 5.84/2.07    ($true = sP107) <=> ! [X162 : term,X163 : term,X164 : subst > term > subst > $o] : (($true != (X164 @ id @ X163 @ id)) | ? [X171 : subst,X172 : subst,X173 : subst,X174 : term] : (($true != (X164 @ X172 @ X174 @ (comp @ X173 @ X171))) & ($true = (X164 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173) @ X171))) | ($true != (X164 @ id @ X162 @ id)) | ($true = (sP106 @ X164)) | ($true = (X164 @ id @ (ap @ X162 @ X163) @ id)) | ($true = (sP105 @ X164)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f124,plain,(
% 5.84/2.07    ! [X120 : subst > term > subst > $o] : (($true = (sP108 @ X120)) <=> ? [X129 : subst > term > term] : (! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) & ($true != (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id)) & ! [X133 : term] : (((X120 @ id @ X133 @ id) != $true) | ((X120 @ id @ (X129 @ id @ X133) @ id) = $true))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f125,plain,(
% 5.84/2.07    ! [X120 : subst > term > subst > $o,X119 : term] : (($true = (sP109 @ X119 @ X120)) <=> ? [X134 : term] : (($true = (X120 @ id @ X134 @ id)) & ($true != (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f126,plain,(
% 5.84/2.07    ! [X120 : subst > term > subst > $o] : (($true = (sP110 @ X120)) <=> ? [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (($true = (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125)) & ($true != (X120 @ X126 @ X128 @ (comp @ X127 @ X125)))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f127,plain,(
% 5.84/2.07    ($true = sP111) <=> ! [X119 : term,X120 : subst > term > subst > $o] : (? [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ X121 @ X124 @ (comp @ X123 @ X122))) & ($true != (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122))) | ($true = (X120 @ id @ (lam @ X119) @ id)) | ($true = (sP110 @ X120)) | ($true = (sP108 @ X120)) | ($true = (sP109 @ X119 @ X120)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f128,plain,(
% 5.84/2.07    ($true = sP112) <=> ! [X218 : term,X219 : term,X220 : term,X221 : term] : (((ap @ (sub @ X219 @ id) @ X221) != (ap @ (sub @ X220 @ id) @ X218)) | (X219 = X220))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f129,plain,(
% 5.84/2.07    ($true = sP113) <=> (? [X213 : term] : ((sub @ X213 @ id) != X213) | ? [X214 : term,X215 : term,X216 : term,X217 : term] : ((X214 != X215) & ((ap @ X214 @ X216) = (ap @ X215 @ X217))) | ($true = sP112))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f14,plain,(
% 5.84/2.07    ((? [X213 : term] : ((sub @ X213 @ id) != X213) | ? [X214 : term,X215 : term,X216 : term,X217 : term] : ((X214 != X215) & ((ap @ X214 @ X216) = (ap @ X215 @ X217))) | ! [X218 : term,X219 : term,X220 : term,X221 : term] : (((ap @ (sub @ X219 @ id) @ X221) != (ap @ (sub @ X220 @ id) @ X218)) | (X219 = X220))) <=> (hoasapinj1_lthm = $true)) & (hoasinduction_lem3v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((d2subst @ d_id) = id) & (! [X119 : term,X120 : subst > term > subst > $o] : (? [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ X121 @ X124 @ (comp @ X123 @ X122))) & ($true != (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122))) | ($true = (X120 @ id @ (lam @ X119) @ id)) | ? [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (($true = (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125)) & ($true != (X120 @ X126 @ X128 @ (comp @ X127 @ X125)))) | ? [X129 : subst > term > term] : (! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) & ($true != (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id)) & ! [X133 : term] : (((X120 @ id @ X133 @ id) != $true) | ((X120 @ id @ (X129 @ id @ X133) @ id) = $true))) | ? [X134 : term] : (($true = (X120 @ id @ X134 @ id)) & ($true != (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id)))) <=> (hoasinduction_lem3 = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (! [X162 : term,X163 : term,X164 : subst > term > subst > $o] : (($true != (X164 @ id @ X163 @ id)) | ? [X171 : subst,X172 : subst,X173 : subst,X174 : term] : (($true != (X164 @ X172 @ X174 @ (comp @ X173 @ X171))) & ($true = (X164 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173) @ X171))) | ($true != (X164 @ id @ X162 @ id)) | ? [X167 : subst,X168 : subst,X169 : subst,X170 : term] : (($true = (X164 @ X167 @ X170 @ (comp @ X169 @ X168))) & ($true != (X164 @ (comp @ X167 @ X169) @ (sub @ X170 @ X169) @ X168))) | ($true = (X164 @ id @ (ap @ X162 @ X163) @ id)) | ? [X165 : term,X166 : term] : (($true = (X164 @ id @ X166 @ id)) & ($true = (X164 @ id @ X165 @ id)) & ($true != (X164 @ id @ (ap @ (sub @ X165 @ id) @ X166) @ id)))) <=> (hoasinduction_lem2 = $true)) & ((hoasapinj1 = $true) <=> ! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468)))) & (pushprop_lthm = $true) & ((induction2lem_lthm = $true) <=> (! [X344 : term,X345 : term > $o,X346 : subst] : (? [X349 : term] : (((var @ X349) = $true) & ($true != (X345 @ (sub @ X349 @ X346)))) | ? [X350 : term,X351 : term] : (($true != (X345 @ (ap @ X351 @ X350))) & ($true = (X345 @ X350)) & ((X345 @ X351) = $true)) | ($true = (X345 @ (sub @ X344 @ X346))) | ? [X347 : term] : (($true != (X345 @ (lam @ X347))) & ! [X348 : term] : (($true != (X345 @ X348)) | ($true = (X345 @ (sub @ X347 @ (push @ X348 @ id))))))) | ? [X337 : subst] : ((comp @ X337 @ id) != X337) | ? [X338 : term > $o,X339 : term] : (! [X343 : term] : (($true != (X338 @ X343)) | ($true = (X338 @ (lam @ X343)))) & ($true != (X338 @ X339)) & ! [X341 : term,X342 : term] : (($true != (X338 @ X342)) | ($true != (X338 @ X341)) | ($true = (X338 @ (ap @ X341 @ X342)))) & ! [X340 : term] : (($true != (var @ X340)) | ($true = (X338 @ X340)))) | ? [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) != X334) | ? [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) != X336))) & (hoasinduction_lem2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (! [X428 : subst > term > subst > $o,X429 : term] : (? [X430 : subst > term > term] : (! [X431 : term,X432 : subst,X433 : subst] : ((sub @ (X430 @ X432 @ X431) @ X433) = (X430 @ (comp @ X432 @ X433) @ (sub @ X431 @ X433))) & ($true != (X428 @ id @ (lam @ (X430 @ sh @ one)) @ id)) & ! [X434 : term] : (($true != (X428 @ id @ X434 @ id)) | ((X428 @ id @ (X430 @ id @ X434) @ id) = $true))) | ? [X445 : term] : (($true = (var @ (sub @ X445 @ id))) & ($true != (X428 @ id @ X445 @ id))) | ? [X437 : subst,X438 : subst,X439 : term,X440 : subst] : (($true = (X428 @ (comp @ X438 @ X440) @ (sub @ X439 @ X440) @ X437)) & ($true != (X428 @ X438 @ X439 @ (comp @ X440 @ X437)))) | ? [X435 : term,X436 : term] : (($true = (X428 @ id @ X436 @ id)) & ($true = (X428 @ id @ X435 @ id)) & ($true != (X428 @ id @ (ap @ (sub @ X435 @ id) @ X436) @ id))) | ($true = (X428 @ id @ X429 @ id)) | ? [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (($true = (X428 @ X444 @ X441 @ (comp @ X443 @ X442))) & ($true != (X428 @ (comp @ X444 @ X443) @ (sub @ X441 @ X443) @ X442)))) <=> (hoasinduction = $true)) & (hoasinduction_lem1 = $true) & (pushprop = $true) & (! [X482 : subst,X483 : term,X484 : term > $o] : (? [X489 : term] : (($true != (X484 @ (sub @ X489 @ X482))) & ($true = (var @ X489))) | ($true = (X484 @ (sub @ X483 @ X482))) | ? [X487 : term,X488 : term] : (($true = (X484 @ X488)) & ($true != (X484 @ (ap @ X488 @ X487))) & ($true = (X484 @ X487))) | ? [X485 : term] : (! [X486 : term] : (($true = (X484 @ (sub @ X485 @ (push @ X486 @ id)))) | ($true != (X484 @ X486))) & ($true != (X484 @ (lam @ X485))))) <=> (induction2lem = $true)) & (hoasinduction_lem1_gthm = $true) & (pushprop_lthm_orig = $true) & ((? [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) != X324) | ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) | ? [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) != X325)) <=> (pushprop_lem1_lthm = $true)) & (ulamvarind = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X424 : term] : ? [X425 : subst > term > term] : ! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426)))) & (ulamvarsh = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasapnotvar_gthm = $true) & (! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) <=> (hoasinduction_lem0_lthm = $true)) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem3v2a_lthm = $true) <=> (? [X291 : term] : ((sub @ X291 @ id) != X291) | ? [X287 : term] : ! [X288 : subst > term > term] : ? [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) != (X288 @ X289 @ X290)) | ! [X292 : term,X293 : term > $o,X294 : subst > term > subst > $o] : (? [X295 : subst > term > term] : (($true != (X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) & ! [X299 : term] : (($true != (X294 @ id @ X299 @ id)) | ($true = (X294 @ id @ (X295 @ id @ X299) @ id))) & ! [X296 : term,X297 : subst,X298 : subst] : ((sub @ (X295 @ X297 @ X296) @ X298) = (X295 @ (comp @ X297 @ X298) @ (sub @ X296 @ X298)))) | ? [X300 : term] : (($true != (X293 @ (sub @ X292 @ (push @ X300 @ id)))) & ($true = (X293 @ X300))) | ? [X301 : term] : ((X294 @ id @ X301 @ id) != (X293 @ X301)) | ($true = (X293 @ (lam @ X292)))))) & (hoaslamnotvar_gthm = $true) & (hoasinduction_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (induction2lem_gthm = $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)))))))))))) & (! [X530 : term,X531 : subst > term > subst > $o] : (? [X537 : term] : (($true = (X531 @ id @ X537 @ id)) & ((X531 @ id @ (sub @ X530 @ (push @ X537 @ id)) @ id) != $true)) | ? [X532 : subst > term > term] : (! [X533 : term,X534 : subst,X535 : subst] : ((sub @ (X532 @ X535 @ X533) @ X534) = (X532 @ (comp @ X535 @ X534) @ (sub @ X533 @ X534))) & ($true != (X531 @ id @ (lam @ (X532 @ sh @ one)) @ id)) & ! [X536 : term] : (($true = (X531 @ id @ (X532 @ id @ X536) @ id)) | ($true != (X531 @ id @ X536 @ id)))) | ($true = (X531 @ id @ (lam @ (sub @ X530 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoasinduction_lem1v2 = $true) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) <=> (hoasapinj2 = $true)) & (! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (? [X4 : term] : ((X2 @ X4) != (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true)) <=> (pushprop_lem1v2 = $true)) & (substmonoid_gthm = $true) & (one = (d2term @ d_one)) & (axclos = $true) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) <=> (axidr = $true)) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) <=> (laminj = $true)) & ((hoasinduction_lem3aaa = $true) <=> ! [X70 : term,X71 : subst > term > subst > $o] : (? [X72 : subst > term > term,X73 : term] : (($true != (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id)) & ! [X80 : term] : (($true != (X71 @ id @ X80 @ id)) | ($true = (X71 @ id @ (X72 @ id @ X80) @ id))) & ! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) & ! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79))) | ? [X81 : term] : (($true != (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) & ($true = (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id)))) & ((hoasinduction_no_psi_cond = $true) <=> ! [X44 : term,X45 : subst > term > subst > $o] : (? [X46 : term,X47 : term] : (($true != (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id)) & ($true = (X45 @ id @ X46 @ id)) & ($true = (X45 @ id @ X47 @ id))) | ? [X48 : subst > term > term] : (! [X49 : term] : (($true = (X45 @ id @ (X48 @ id @ X49) @ id)) | ($true != (X45 @ id @ X49 @ id))) & ! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)) & ($true != (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id))) | ($true = (X45 @ id @ X44 @ id)))) & ((? [X257 : subst > term > subst > $o] : ! [X258 : term > $o] : ? [X259 : term] : ((X258 @ X259) != (X257 @ id @ X259 @ id)) | ! [X278 : subst > term > subst > $o,X279 : term] : (? [X280 : subst > term > term] : (($true != (X278 @ id @ (lam @ (X280 @ sh @ one)) @ id)) & ! [X281 : subst,X282 : term,X283 : subst] : ((sub @ (X280 @ X283 @ X282) @ X281) = (X280 @ (comp @ X283 @ X281) @ (sub @ X282 @ X281))) & ! [X284 : term] : (($true = (X278 @ id @ (X280 @ id @ X284) @ id)) | ($true != (X278 @ id @ X284 @ id)))) | ? [X285 : term,X286 : term] : (($true = (X278 @ id @ X286 @ id)) & ($true != (X278 @ id @ (ap @ (sub @ X285 @ id) @ X286) @ id)) & ($true = (X278 @ id @ X285 @ id))) | ($true = (X278 @ id @ X279 @ id))) | ? [X260 : term > $o,X261 : term] : (($true != (X260 @ X261)) & ! [X266 : term] : (($true != (var @ X266)) | ($true = (X260 @ X266))) & ! [X262 : term] : (? [X263 : term] : (($true = (X260 @ X263)) & ($true != (X260 @ (sub @ X262 @ (push @ X263 @ id))))) | ($true = (X260 @ (lam @ X262)))) & ! [X264 : term,X265 : term] : (($true = (X260 @ (ap @ X265 @ X264))) | ($true != (X260 @ X265)) | ($true != (X260 @ X264)))) | ? [X268 : term,X269 : subst > term > subst > $o,X270 : term > $o] : (! [X273 : subst > term > term] : (? [X275 : subst,X276 : subst,X277 : term] : ((sub @ (X273 @ X276 @ X277) @ X275) != (X273 @ (comp @ X276 @ X275) @ (sub @ X277 @ X275))) | ? [X274 : term] : (($true != (X269 @ id @ (X273 @ id @ X274) @ id)) & ($true = (X269 @ id @ X274 @ id))) | ($true = (X269 @ id @ (lam @ (X273 @ sh @ one)) @ id))) & ! [X272 : term] : ((X270 @ X272) = (X269 @ id @ X272 @ id)) & ! [X271 : term] : (($true != (X270 @ X271)) | ($true = (X270 @ (sub @ X268 @ (push @ X271 @ id))))) & ($true != (X270 @ (lam @ X268)))) | ? [X267 : term] : ((sub @ X267 @ id) != X267)) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)) | ? [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) != (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))) <=> (hoaslamnotap = $true)) & (! [X190 : term > $o,X191 : term,X192 : subst > term > subst > $o] : (? [X200 : subst,X201 : subst,X202 : term,X203 : subst] : (($true = (X192 @ (comp @ X201 @ X203) @ (sub @ X202 @ X203) @ X200)) & ($true != (X192 @ X201 @ X202 @ (comp @ X203 @ X200)))) | ? [X194 : term] : (((X190 @ (sub @ X191 @ (push @ X194 @ id))) != $true) & ($true = (X190 @ X194))) | ($true = (X190 @ (lam @ X191))) | ? [X193 : term] : ((X192 @ id @ X193 @ id) != (X190 @ X193)) | ? [X204 : term,X205 : subst,X206 : subst,X207 : subst] : (($true != (X192 @ (comp @ X206 @ X205) @ (sub @ X204 @ X205) @ X207)) & ($true = (X192 @ X206 @ X204 @ (comp @ X205 @ X207)))) | ? [X195 : subst > term > term] : (! [X196 : subst,X197 : subst,X198 : term] : ((sub @ (X195 @ X197 @ X198) @ X196) = (X195 @ (comp @ X197 @ X196) @ (sub @ X198 @ X196))) & ($true != (X192 @ id @ (lam @ (X195 @ sh @ one)) @ id)) & ! [X199 : term] : (($true != (X192 @ id @ X199 @ id)) | ($true = (X192 @ id @ (X195 @ id @ X199) @ id))))) <=> (hoasinduction_lem3v2 = $true)) & (hoasapnotvar = $true) & (axabs = $true) & ((? [X377 : term,X378 : term,X379 : subst > term > subst > $o] : (($true != (X379 @ id @ (ap @ X378 @ X377) @ id)) & ! [X380 : subst,X381 : subst,X382 : subst,X383 : term] : (($true != (X379 @ (comp @ X381 @ X382) @ (sub @ X383 @ X382) @ X380)) | ($true = (X379 @ X381 @ X383 @ (comp @ X382 @ X380)))) & ! [X384 : term,X385 : subst,X386 : subst,X387 : subst] : (($true != (X379 @ X387 @ X384 @ (comp @ X385 @ X386))) | ($true = (X379 @ (comp @ X387 @ X385) @ (sub @ X384 @ X385) @ X386))) & ! [X388 : term,X389 : term] : (((X379 @ id @ X388 @ id) != $true) | ($true = (X379 @ id @ (ap @ (sub @ X389 @ id) @ X388) @ id)) | ($true != (X379 @ id @ X389 @ id))) & ($true = (X379 @ id @ X377 @ id)) & ($true = (X379 @ id @ X378 @ id))) | ? [X370 : term > $o,X371 : term] : (! [X374 : term,X375 : term] : (((X370 @ X374) != $true) | ($true = (X370 @ (ap @ X375 @ X374))) | ($true != (X370 @ X375))) & ! [X372 : term] : (($true = (X370 @ (lam @ X372))) | ? [X373 : term] : (($true = (X370 @ X373)) & ($true != (X370 @ (sub @ X372 @ (push @ X373 @ id)))))) & ! [X376 : term] : (($true != (var @ X376)) | ($true = (X370 @ X376))) & ($true != (X370 @ X371))) | ! [X406 : term,X407 : subst > term > subst > $o] : (? [X408 : term] : (($true != (X407 @ id @ X408 @ id)) & ($true = (var @ (sub @ X408 @ id)))) | ? [X418 : subst,X419 : term,X420 : subst,X421 : subst] : (($true != (X407 @ X420 @ X419 @ (comp @ X421 @ X418))) & ($true = (X407 @ (comp @ X420 @ X421) @ (sub @ X419 @ X421) @ X418))) | ? [X422 : term,X423 : term] : (($true != (X407 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id)) & ($true = (X407 @ id @ X423 @ id)) & ($true = (X407 @ id @ X422 @ id))) | ? [X414 : subst,X415 : subst,X416 : subst,X417 : term] : (($true != (X407 @ (comp @ X415 @ X414) @ (sub @ X417 @ X414) @ X416)) & ($true = (X407 @ X415 @ X417 @ (comp @ X414 @ X416)))) | ? [X409 : subst > term > term] : (! [X410 : term] : (($true = (X407 @ id @ (X409 @ id @ X410) @ id)) | ($true != (X407 @ id @ X410 @ id))) & ! [X411 : subst,X412 : subst,X413 : term] : ((sub @ (X409 @ X411 @ X413) @ X412) = (X409 @ (comp @ X411 @ X412) @ (sub @ X413 @ X412))) & ($true != (X407 @ id @ (lam @ (X409 @ sh @ one)) @ id))) | ($true = (X407 @ id @ X406 @ id))) | ? [X390 : subst > term > subst > $o,X391 : term] : (($true != (X390 @ id @ (lam @ X391) @ id)) & ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true = (X390 @ X392 @ X395 @ (comp @ X394 @ X393))) | ($true != (X390 @ (comp @ X392 @ X394) @ (sub @ X395 @ X394) @ X393))) & ! [X401 : term] : (((X390 @ id @ X401 @ id) != $true) | ($true = (X390 @ id @ (sub @ X391 @ (push @ X401 @ id)) @ id))) & ! [X396 : subst > term > term] : (($true = (X390 @ id @ (lam @ (X396 @ sh @ one)) @ id)) | ? [X397 : subst,X398 : subst,X399 : term] : ((sub @ (X396 @ X398 @ X399) @ X397) != (X396 @ (comp @ X398 @ X397) @ (sub @ X399 @ X397))) | ? [X400 : term] : (($true != (X390 @ id @ (X396 @ id @ X400) @ id)) & ($true = (X390 @ id @ X400 @ id)))) & ! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (($true = (X390 @ (comp @ X403 @ X402) @ (sub @ X405 @ X402) @ X404)) | ((X390 @ X403 @ X405 @ (comp @ X402 @ X404)) != $true)))) <=> (hoasinduction_lthm = $true)) & (axmap = $true) & (! [X312 : term] : ? [X313 : subst > term > term] : ((X313 @ sh @ one) = (sub @ X312 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (lamnotap != $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3v2a = $true) <=> ! [X360 : subst > term > subst > $o,X361 : term,X362 : term > $o] : (? [X368 : term] : (($true != (X362 @ (sub @ X361 @ (push @ X368 @ id)))) & ($true = (X362 @ X368))) | ($true = (X362 @ (lam @ X361))) | ? [X369 : term] : ((X360 @ id @ X369 @ id) != (X362 @ X369)) | ? [X363 : subst > term > term] : (! [X364 : term,X365 : subst,X366 : subst] : ((sub @ (X363 @ X365 @ X364) @ X366) = (X363 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))) & ((X360 @ id @ (lam @ (X363 @ sh @ one)) @ id) != $true) & ! [X367 : term] : (($true = (X360 @ id @ (X363 @ id @ X367) @ id)) | ($true != (X360 @ id @ X367 @ id)))))) & ((hoasinduction_lem3a = $true) <=> ! [X304 : subst > term > subst > $o,X305 : term] : (? [X307 : subst > term > term] : (! [X308 : term] : (($true = (X304 @ id @ (X307 @ id @ X308) @ id)) | ($true != (X304 @ id @ X308 @ id))) & ($true != (X304 @ id @ (lam @ (X307 @ sh @ one)) @ id)) & ! [X309 : subst,X310 : subst,X311 : term] : ((X307 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309)) = (sub @ (X307 @ X310 @ X311) @ X309))) | ? [X306 : term] : (($true != (X304 @ id @ (sub @ X305 @ (push @ X306 @ id)) @ id)) & ($true = (X304 @ id @ X306 @ id))) | ((X304 @ id @ (lam @ X305) @ id) = $true))) & (lamnotvar = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((apinj1 = $true) <=> ! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528)))) & ((hoasinduction_lem3aa = $true) <=> ! [X352 : term,X353 : subst > term > subst > $o] : (($true = (X353 @ id @ (lam @ (sub @ X352 @ (push @ one @ sh))) @ id)) | ? [X354 : subst > term > term] : (! [X358 : term] : (($true = (X353 @ id @ (X354 @ id @ X358) @ id)) | ($true != (X353 @ id @ X358 @ id))) & ($true != (X353 @ id @ (lam @ (X354 @ sh @ one)) @ id)) & ! [X355 : subst,X356 : term,X357 : subst] : ((X354 @ (comp @ X355 @ X357) @ (sub @ X356 @ X357)) = (sub @ (X354 @ X355 @ X356) @ X357))) | ? [X359 : term] : (((X353 @ id @ (sub @ X352 @ (push @ X359 @ id)) @ id) != $true) & ($true = (X353 @ id @ X359 @ id))))) & ! [X135 : d_subst] : (d_id = X135) & ((hoasinduction_lem3_lthm = $true) <=> (? [X491 : subst > term > subst > $o,X492 : term] : (($true != (X491 @ id @ (lam @ (sub @ X492 @ (push @ one @ sh))) @ id)) & ! [X493 : term] : (($true = (X491 @ id @ (sub @ X492 @ (push @ X493 @ id)) @ id)) | ($true != (X491 @ id @ X493 @ id))) & ! [X494 : subst > term > term] : (((X491 @ id @ (lam @ (X494 @ sh @ one)) @ id) = $true) | ? [X495 : term,X496 : subst,X497 : subst] : ((X494 @ (comp @ X496 @ X497) @ (sub @ X495 @ X497)) != (sub @ (X494 @ X496 @ X495) @ X497)) | ? [X498 : term] : (($true != (X491 @ id @ (X494 @ id @ X498) @ id)) & ($true = (X491 @ id @ X498 @ id))))) | ! [X499 : term,X500 : subst > term > subst > $o] : (? [X514 : term] : (($true != (X500 @ id @ (sub @ X499 @ (push @ X514 @ id)) @ id)) & ($true = (X500 @ id @ X514 @ id))) | ? [X501 : subst,X502 : subst,X503 : term,X504 : subst] : (((X500 @ X502 @ X503 @ (comp @ X504 @ X501)) = $true) & ($true != (X500 @ (comp @ X502 @ X504) @ (sub @ X503 @ X504) @ X501))) | ($true = (X500 @ id @ (lam @ X499) @ id)) | ? [X505 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X505 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X505 @ X507 @ X508) @ X506)) & ! [X509 : term] : (($true != (X500 @ id @ X509 @ id)) | ($true = (X500 @ id @ (X505 @ id @ X509) @ id))) & ($true != (X500 @ id @ (lam @ (X505 @ sh @ one)) @ id))) | ? [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (($true = (X500 @ (comp @ X511 @ X513) @ (sub @ X510 @ X513) @ X512)) & ($true != (X500 @ X511 @ X510 @ (comp @ X513 @ X512))))) | ? [X490 : term] : ((sub @ X490 @ id) != X490))) & (pushprop_lem3v2 = $true) & ! [X524 : d_term,X525 : d_term] : ((X524 = X525) | ((d2term @ X525) != (d2term @ X524))) & (! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ? [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) != (sub @ (X150 @ X154 @ X156) @ X155)) | ? [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) != (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one)))) <=> (hoaslaminj = $true)) & (hoasinduction_lem1_lthm = $true) & ((axshiftcons = $true) <=> ! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538)) & ((! [X450 : term,X451 : term,X452 : term,X453 : term] : (((ap @ (sub @ X451 @ id) @ X453) != (ap @ (sub @ X452 @ id) @ X450)) | (X450 = X453)) | ? [X446 : term,X447 : term,X448 : term,X449 : term] : (((ap @ X448 @ X446) = (ap @ X449 @ X447)) & (X446 != X447))) <=> (hoasapinj2_lthm = $true)) & (ulamvar1 != $true) & ((? [X245 : term,X246 : term] : (((lam @ X246) = (lam @ X245)) & (X245 != X246)) | ! [X247 : subst > term > term,X248 : subst > term > term,X249 : term,X250 : subst] : (((lam @ (X247 @ sh @ one)) != (lam @ (X248 @ sh @ one))) | ? [X251 : subst,X252 : subst,X253 : term] : ((sub @ (X248 @ X252 @ X253) @ X251) != (X248 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251))) | ? [X254 : subst,X255 : term,X256 : subst] : ((X247 @ (comp @ X254 @ X256) @ (sub @ X255 @ X256)) != (sub @ (X247 @ X254 @ X255) @ X256)) | ((X248 @ X250 @ X249) = (X247 @ X250 @ X249))) | ? [X243 : term,X244 : subst] : ((comp @ sh @ (push @ X243 @ X244)) != X244) | ? [X241 : subst,X242 : term] : ((sub @ one @ (push @ X242 @ X241)) != X242)) <=> (hoaslaminj_lthm = $true)) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) <=> (axvarcons = $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X332 : subst] : ((comp @ id @ X332) = X332) <=> (axidl = $true)) & ((apinj2 = $true) <=> ! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518)))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (apnotvar = $true) & (hoasinduction_lem3a_gthm = $true) & (! [X144 : term > $o,X145 : term] : (? [X149 : term] : (((var @ X149) = $true) & ($true != (X144 @ X149))) | ($true = (X144 @ X145)) | ? [X147 : term,X148 : term] : (($true != (X144 @ (ap @ X147 @ X148))) & ($true = (X144 @ X147)) & ($true = (X144 @ X148))) | ? [X146 : term] : (($true = (X144 @ X146)) & ($true != (X144 @ (lam @ X146))))) <=> (induction = $true)) & ((substmonoid = $true) <=> (! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161))) & ((axvarid = $true) <=> ! [X322 : term] : ((sub @ X322 @ id) = X322)) & ((termmset_lthm = $true) <=> (? [X320 : term] : ((sub @ X320 @ id) != X320) | ! [X321 : term] : ((sub @ X321 @ id) = X321))) & (pushprop_lem1_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X175 : term] : ? [X176 : subst > term > term] : ! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177))) & (induction2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (! [X209 : subst > term > subst > $o] : ? [X210 : term > $o] : ! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id)) <=> (hoasinduction_lem0 = $true)) & ((substmonoid_lthm = $true) <=> (? [X115 : subst] : ((comp @ id @ X115) != X115) | ? [X116 : subst] : ((comp @ X116 @ id) != X116) | (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118)))) & (hoasapnotvar_lthm = $true) & (! [X314 : subst,X315 : term > $o,X316 : term] : ? [X317 : term > $o] : ! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) <=> (pushprop_lem0_lthm = $true)) & (axvarshift = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) <=> (axscons = $true)) & (! [X470 : term,X471 : term > $o] : (? [X474 : term] : (($true != (X471 @ X474)) & ($true = (var @ X474))) | ? [X472 : term,X473 : term] : (($true = (X471 @ X472)) & ($true = (X471 @ X473)) & ($true != (X471 @ (ap @ X472 @ X473)))) | ($true = (X471 @ X470)) | ? [X475 : term] : (($true != (X471 @ (lam @ X475))) & ! [X476 : term] : (($true = (X471 @ (sub @ X475 @ (push @ X476 @ id)))) | ($true != (X471 @ X476))))) <=> (induction2 = $true)) & ((hoasinduction_lem3v2_lthm = $true) <=> (? [X222 : term] : ((sub @ X222 @ id) != X222) | ! [X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (((X224 @ (lam @ X225)) = $true) | ? [X240 : term] : (($true != (X224 @ (sub @ X225 @ (push @ X240 @ id)))) & ($true = (X224 @ X240))) | ? [X236 : subst,X237 : subst,X238 : subst,X239 : term] : (($true != (X223 @ (comp @ X237 @ X238) @ (sub @ X239 @ X238) @ X236)) & ($true = (X223 @ X237 @ X239 @ (comp @ X238 @ X236)))) | ? [X226 : subst > term > term] : (! [X227 : term,X228 : subst,X229 : subst] : ((sub @ (X226 @ X229 @ X227) @ X228) = (X226 @ (comp @ X229 @ X228) @ (sub @ X227 @ X228))) & ! [X230 : term] : (((X223 @ id @ X230 @ id) != $true) | ($true = (X223 @ id @ (X226 @ id @ X230) @ id))) & ((X223 @ id @ (lam @ (X226 @ sh @ one)) @ id) != $true)) | ? [X232 : subst,X233 : term,X234 : subst,X235 : subst] : (($true = (X223 @ (comp @ X235 @ X232) @ (sub @ X233 @ X232) @ X234)) & ($true != (X223 @ X235 @ X233 @ (comp @ X232 @ X234)))) | ? [X231 : term] : ((X224 @ X231) != (X223 @ id @ X231 @ id))))) & (pushprop_lem0_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) != (d2subst @ X455)) | (X454 = X455)) & ((hoasinduction_lem2v2 = $true) <=> ! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (($true != (X83 @ X85)) | ? [X90 : term] : ((X82 @ id @ X90 @ id) != (X83 @ X90)) | ? [X91 : term,X92 : term] : (($true != (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id)) & ($true = (X82 @ id @ X91 @ id)) & ($true = (X82 @ id @ X92 @ id))) | ($true != (X83 @ X84)) | ? [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) & ($true != (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84))) | ? [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (($true = (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88)) & ($true != (X82 @ X89 @ X87 @ (comp @ X86 @ X88)))))) & ((shinj = $true) <=> ! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh)))) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X136 : term] : ? [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) = (X137 @ sh @ one))) & (axassoc = $true) & ((! [X108 : term,X109 : term > $o] : (($true = (X109 @ X108)) | ? [X113 : term] : (! [X114 : term] : (($true != (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))) & ($true != (X109 @ (lam @ X113)))) | ? [X110 : term,X111 : term] : (($true = (X109 @ X111)) & ($true = (X109 @ X110)) & ($true != (X109 @ (ap @ X111 @ X110)))) | ? [X112 : term] : (($true != (X109 @ X112)) & ($true = (var @ X112)))) | ? [X99 : term] : ((sub @ X99 @ id) != X99) | ? [X100 : subst,X101 : term,X102 : term > $o] : (! [X104 : term,X105 : term] : (($true != (X102 @ X105)) | ($true = (X102 @ (ap @ X104 @ X105))) | ((X102 @ X104) != $true)) & ($true != (X102 @ (sub @ X101 @ X100))) & ! [X106 : term] : (? [X107 : term] : (($true = (X102 @ X107)) & ($true != (X102 @ (sub @ X106 @ (push @ X107 @ id))))) | ((X102 @ (lam @ X106)) = $true)) & ! [X103 : term] : (($true = (X102 @ (sub @ X103 @ X100))) | ($true != (var @ X103))))) <=> (induction2_lthm = $true)) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X519 : term > $o,X520 : term,X521 : subst] : ? [X522 : term > $o] : ! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) <=> (pushprop_lem0 = $true)) & ((? [X54 : term,X55 : subst > term > subst > $o] : (! [X57 : subst > term > term] : (? [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) != (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ? [X61 : term] : (($true != (X55 @ id @ (X57 @ id @ X61) @ id)) & ($true = (X55 @ id @ X61 @ id)))) & ($true != (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id)) & ! [X56 : term] : (((X55 @ id @ X56 @ id) != $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id)))) | ? [X53 : term] : ((sub @ X53 @ id) != X53) | ! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ? [X65 : subst > term > term] : (($true != (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)) & ! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) & ! [X66 : term] : (($true = (X63 @ id @ (X65 @ id @ X66) @ id)) | ($true != (X63 @ id @ X66 @ id)))) | ? [X64 : term] : (((X63 @ id @ X64 @ id) = $true) & ($true != (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id))))) <=> (hoasinduction_lem3a_lthm = $true)) & (hoaslamnotvar = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((d2subst @ d_id) = sh) & ((pushprop_lem1v2_lthm = $true) <=> (! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ? [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) != (X463 @ X464)) | ($true != (X461 @ X462))) | ? [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) != X458))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((? [X15 : term] : ((sub @ X15 @ id) != X15) | ? [X8 : term,X9 : term > $o] : (! [X10 : term] : (($true != (var @ X10)) | ($true = (X9 @ X10))) & ($true != (X9 @ X8)) & ! [X11 : term] : (($true = (X9 @ (lam @ X11))) | ? [X12 : term] : (($true = (X9 @ X12)) & ($true != (X9 @ (sub @ X11 @ (push @ X12 @ id)))))) & ! [X13 : term,X14 : term] : (($true != (X9 @ X14)) | ($true != (X9 @ X13)) | ($true = (X9 @ (ap @ X14 @ X13))))) | ! [X26 : term,X27 : subst > term > subst > $o] : (($true = (X27 @ id @ X26 @ id)) | ? [X34 : term] : (($true = (var @ (sub @ X34 @ id))) & ($true != (X27 @ id @ X34 @ id))) | ? [X32 : term,X33 : term] : (($true = (X27 @ id @ X33 @ id)) & ($true = (X27 @ id @ X32 @ id)) & ($true != (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id))) | ? [X39 : subst > term > term] : (($true != (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id)) & ! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) & ! [X40 : term] : (($true = (X27 @ id @ (X39 @ id @ X40) @ id)) | ($true != (X27 @ id @ X40 @ id)))) | ? [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true != (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35)) & ($true = (X27 @ X38 @ X37 @ (comp @ X36 @ X35)))) | ? [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true != (X27 @ X31 @ X28 @ (comp @ X30 @ X29))) & ($true = (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29)))) | ? [X5 : subst > term > subst > $o] : ! [X6 : term > $o] : ? [X7 : term] : ((X5 @ id @ X7 @ id) != (X6 @ X7)) | ? [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) & ! [X21 : subst > term > term] : (? [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) != (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ? [X25 : term] : (($true = (X16 @ id @ X25 @ id)) & ($true != (X16 @ id @ (X21 @ id @ X25) @ id))) | ($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id))) & ($true != (X18 @ (lam @ X17))) & ! [X20 : term] : (($true = (X18 @ (sub @ X17 @ (push @ X20 @ id)))) | ($true != (X18 @ X20))))) <=> (hoasinduction_lthm_3 = $true)) & (hoasapinj2_gthm = $true) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) <=> (pushprop_lem1 = $true)) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (axapp = $true) & (termmset_gthm = $true) & ((termmset = $true) <=> ! [X465 : term] : ((sub @ X465 @ id) = X465)) & ! [X208 : d_term] : (d_one = X208) & (hoaslaminj_gthm = $true)),
% 5.84/2.07    inference(flattening,[status(thm)],[f13])).
% 5.84/2.07  thf(f13,plain,(
% 5.84/2.07    (one = (d2term @ d_one)) & (hoasapnotvar = $true) & (! [X119 : term,X120 : subst > term > subst > $o] : (? [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ X121 @ X124 @ (comp @ X123 @ X122))) & ($true != (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122))) | ($true = (X120 @ id @ (lam @ X119) @ id)) | ? [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (($true = (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125)) & ($true != (X120 @ X126 @ X128 @ (comp @ X127 @ X125)))) | ? [X129 : subst > term > term] : (! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) & ($true != (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id)) & ! [X133 : term] : (((X120 @ id @ X133 @ id) != $true) | ((X120 @ id @ (X129 @ id @ X133) @ id) = $true))) | ? [X134 : term] : (($true = (X120 @ id @ X134 @ id)) & ($true != (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id)))) <=> (hoasinduction_lem3 = $true)) & (hoasapnotvar_lthm = $true) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem1_lthm = $true) & ((apinj2 = $true) <=> ! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518)))) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) <=> (axidr = $true)) & ((hoaslaminj_lthm = $true) <=> (((! [X247 : subst > term > term,X248 : subst > term > term,X249 : term,X250 : subst] : (((lam @ (X247 @ sh @ one)) != (lam @ (X248 @ sh @ one))) | ? [X251 : subst,X252 : subst,X253 : term] : ((sub @ (X248 @ X252 @ X253) @ X251) != (X248 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251))) | ? [X254 : subst,X255 : term,X256 : subst] : ((X247 @ (comp @ X254 @ X256) @ (sub @ X255 @ X256)) != (sub @ (X247 @ X254 @ X255) @ X256)) | ((X248 @ X250 @ X249) = (X247 @ X250 @ X249))) | ? [X245 : term,X246 : term] : (((lam @ X246) = (lam @ X245)) & (X245 != X246))) | ? [X243 : term,X244 : subst] : ((comp @ sh @ (push @ X243 @ X244)) != X244)) | ? [X241 : subst,X242 : term] : ((sub @ one @ (push @ X242 @ X241)) != X242))) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) <=> (pushprop_lem1 = $true)) & (hoasinduction_lem1v2 = $true) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) <=> (laminj = $true)) & (hoasapinj1_gthm = $true) & ((substmonoid_lthm = $true) <=> (((! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118)) | ? [X116 : subst] : ((comp @ X116 @ id) != X116)) | ? [X115 : subst] : ((comp @ id @ X115) != X115))) & ((apinj1 = $true) <=> ! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528)))) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (ulamvarind = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> ((! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ? [X65 : subst > term > term] : (($true != (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)) & ! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) & ! [X66 : term] : (($true = (X63 @ id @ (X65 @ id @ X66) @ id)) | ($true != (X63 @ id @ X66 @ id)))) | ? [X64 : term] : (((X63 @ id @ X64 @ id) = $true) & ($true != (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id)))) | ? [X54 : term,X55 : subst > term > subst > $o] : (! [X57 : subst > term > term] : (? [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) != (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ? [X61 : term] : (($true != (X55 @ id @ (X57 @ id @ X61) @ id)) & ($true = (X55 @ id @ X61 @ id)))) & ($true != (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id)) & ! [X56 : term] : (((X55 @ id @ X56 @ id) != $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id))))) | ? [X53 : term] : ((sub @ X53 @ id) != X53))) & (! [X482 : subst,X483 : term,X484 : term > $o] : (? [X489 : term] : (($true != (X484 @ (sub @ X489 @ X482))) & ($true = (var @ X489))) | ($true = (X484 @ (sub @ X483 @ X482))) | ? [X487 : term,X488 : term] : (($true = (X484 @ X488)) & ($true != (X484 @ (ap @ X488 @ X487))) & ($true = (X484 @ X487))) | ? [X485 : term] : (! [X486 : term] : (($true = (X484 @ (sub @ X485 @ (push @ X486 @ id)))) | ($true != (X484 @ X486))) & ($true != (X484 @ (lam @ X485))))) <=> (induction2lem = $true)) & ((hoasapinj1_lthm = $true) <=> ((! [X218 : term,X219 : term,X220 : term,X221 : term] : (((ap @ (sub @ X219 @ id) @ X221) != (ap @ (sub @ X220 @ id) @ X218)) | (X219 = X220)) | ? [X214 : term,X215 : term,X216 : term,X217 : term] : ((X214 != X215) & ((ap @ X214 @ X216) = (ap @ X215 @ X217)))) | ? [X213 : term] : ((sub @ X213 @ id) != X213))) & ((d2subst @ d_id) = sh) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X424 : term] : ? [X425 : subst > term > term] : ! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426)))) & (! [X314 : subst,X315 : term > $o,X316 : term] : ? [X317 : term > $o] : ! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) <=> (pushprop_lem0_lthm = $true)) & ((((! [X406 : term,X407 : subst > term > subst > $o] : (? [X408 : term] : (($true != (X407 @ id @ X408 @ id)) & ($true = (var @ (sub @ X408 @ id)))) | ? [X418 : subst,X419 : term,X420 : subst,X421 : subst] : (($true != (X407 @ X420 @ X419 @ (comp @ X421 @ X418))) & ($true = (X407 @ (comp @ X420 @ X421) @ (sub @ X419 @ X421) @ X418))) | ? [X422 : term,X423 : term] : (($true != (X407 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id)) & ($true = (X407 @ id @ X423 @ id)) & ($true = (X407 @ id @ X422 @ id))) | ? [X414 : subst,X415 : subst,X416 : subst,X417 : term] : (($true != (X407 @ (comp @ X415 @ X414) @ (sub @ X417 @ X414) @ X416)) & ($true = (X407 @ X415 @ X417 @ (comp @ X414 @ X416)))) | ? [X409 : subst > term > term] : (! [X410 : term] : (($true = (X407 @ id @ (X409 @ id @ X410) @ id)) | ($true != (X407 @ id @ X410 @ id))) & ! [X411 : subst,X412 : subst,X413 : term] : ((sub @ (X409 @ X411 @ X413) @ X412) = (X409 @ (comp @ X411 @ X412) @ (sub @ X413 @ X412))) & ($true != (X407 @ id @ (lam @ (X409 @ sh @ one)) @ id))) | ($true = (X407 @ id @ X406 @ id))) | ? [X390 : subst > term > subst > $o,X391 : term] : (($true != (X390 @ id @ (lam @ X391) @ id)) & ! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true = (X390 @ X392 @ X395 @ (comp @ X394 @ X393))) | ($true != (X390 @ (comp @ X392 @ X394) @ (sub @ X395 @ X394) @ X393))) & ! [X401 : term] : (((X390 @ id @ X401 @ id) != $true) | ($true = (X390 @ id @ (sub @ X391 @ (push @ X401 @ id)) @ id))) & ! [X396 : subst > term > term] : (($true = (X390 @ id @ (lam @ (X396 @ sh @ one)) @ id)) | ? [X397 : subst,X398 : subst,X399 : term] : ((sub @ (X396 @ X398 @ X399) @ X397) != (X396 @ (comp @ X398 @ X397) @ (sub @ X399 @ X397))) | ? [X400 : term] : (($true != (X390 @ id @ (X396 @ id @ X400) @ id)) & ($true = (X390 @ id @ X400 @ id)))) & ! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (($true = (X390 @ (comp @ X403 @ X402) @ (sub @ X405 @ X402) @ X404)) | ((X390 @ X403 @ X405 @ (comp @ X402 @ X404)) != $true)))) | ? [X377 : term,X378 : term,X379 : subst > term > subst > $o] : (($true != (X379 @ id @ (ap @ X378 @ X377) @ id)) & ! [X380 : subst,X381 : subst,X382 : subst,X383 : term] : (($true != (X379 @ (comp @ X381 @ X382) @ (sub @ X383 @ X382) @ X380)) | ($true = (X379 @ X381 @ X383 @ (comp @ X382 @ X380)))) & ! [X384 : term,X385 : subst,X386 : subst,X387 : subst] : (($true != (X379 @ X387 @ X384 @ (comp @ X385 @ X386))) | ($true = (X379 @ (comp @ X387 @ X385) @ (sub @ X384 @ X385) @ X386))) & ! [X388 : term,X389 : term] : (((X379 @ id @ X388 @ id) != $true) | ($true = (X379 @ id @ (ap @ (sub @ X389 @ id) @ X388) @ id)) | ($true != (X379 @ id @ X389 @ id))) & ($true = (X379 @ id @ X377 @ id)) & ($true = (X379 @ id @ X378 @ id)))) | ? [X370 : term > $o,X371 : term] : (! [X374 : term,X375 : term] : (((X370 @ X374) != $true) | ($true = (X370 @ (ap @ X375 @ X374))) | ($true != (X370 @ X375))) & ! [X372 : term] : (($true = (X370 @ (lam @ X372))) | ? [X373 : term] : (($true = (X370 @ X373)) & ($true != (X370 @ (sub @ X372 @ (push @ X373 @ id)))))) & ! [X376 : term] : (($true != (var @ X376)) | ($true = (X370 @ X376))) & ($true != (X370 @ X371)))) <=> (hoasinduction_lthm = $true)) & ((hoasinduction_lthm_3 = $true) <=> ((((! [X26 : term,X27 : subst > term > subst > $o] : (($true = (X27 @ id @ X26 @ id)) | ? [X34 : term] : (($true = (var @ (sub @ X34 @ id))) & ($true != (X27 @ id @ X34 @ id))) | ? [X32 : term,X33 : term] : (($true = (X27 @ id @ X33 @ id)) & ($true = (X27 @ id @ X32 @ id)) & ($true != (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id))) | ? [X39 : subst > term > term] : (($true != (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id)) & ! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) & ! [X40 : term] : (($true = (X27 @ id @ (X39 @ id @ X40) @ id)) | ($true != (X27 @ id @ X40 @ id)))) | ? [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true != (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35)) & ($true = (X27 @ X38 @ X37 @ (comp @ X36 @ X35)))) | ? [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true != (X27 @ X31 @ X28 @ (comp @ X30 @ X29))) & ($true = (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29)))) | ? [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) & ! [X21 : subst > term > term] : (? [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) != (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ? [X25 : term] : (($true = (X16 @ id @ X25 @ id)) & ($true != (X16 @ id @ (X21 @ id @ X25) @ id))) | ($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id))) & ($true != (X18 @ (lam @ X17))) & ! [X20 : term] : (($true = (X18 @ (sub @ X17 @ (push @ X20 @ id)))) | ($true != (X18 @ X20))))) | ? [X15 : term] : ((sub @ X15 @ id) != X15)) | ? [X8 : term,X9 : term > $o] : (! [X10 : term] : (($true != (var @ X10)) | ($true = (X9 @ X10))) & ($true != (X9 @ X8)) & ! [X11 : term] : (($true = (X9 @ (lam @ X11))) | ? [X12 : term] : (($true = (X9 @ X12)) & ($true != (X9 @ (sub @ X11 @ (push @ X12 @ id)))))) & ! [X13 : term,X14 : term] : (($true != (X9 @ X14)) | ($true != (X9 @ X13)) | ($true = (X9 @ (ap @ X14 @ X13)))))) | ? [X5 : subst > term > subst > $o] : ! [X6 : term > $o] : ? [X7 : term] : ((X5 @ id @ X7 @ id) != (X6 @ X7)))) & ! [X208 : d_term] : (d_one = X208) & (hoaslamnotvar_lthm = $true) & (axabs = $true) & (hoaslamnotvar = $true) & ((hoasinduction_lem3aa = $true) <=> ! [X352 : term,X353 : subst > term > subst > $o] : (($true = (X353 @ id @ (lam @ (sub @ X352 @ (push @ one @ sh))) @ id)) | ? [X354 : subst > term > term] : (! [X358 : term] : (($true = (X353 @ id @ (X354 @ id @ X358) @ id)) | ($true != (X353 @ id @ X358 @ id))) & ($true != (X353 @ id @ (lam @ (X354 @ sh @ one)) @ id)) & ! [X355 : subst,X356 : term,X357 : subst] : ((X354 @ (comp @ X355 @ X357) @ (sub @ X356 @ X357)) = (sub @ (X354 @ X355 @ X356) @ X357))) | ? [X359 : term] : (((X353 @ id @ (sub @ X352 @ (push @ X359 @ id)) @ id) != $true) & ($true = (X353 @ id @ X359 @ id))))) & ((substmonoid = $true) <=> (! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161))) & (! [X332 : subst] : ((comp @ id @ X332) = X332) <=> (axidl = $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (substmonoid_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoaslamnotap_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X136 : term] : ? [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) = (X137 @ sh @ one))) & (apnotvar = $true) & (pushprop_lem2v2 = $true) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem1v2_gthm = $true) & (induction2lem_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((! [X450 : term,X451 : term,X452 : term,X453 : term] : (((ap @ (sub @ X451 @ id) @ X453) != (ap @ (sub @ X452 @ id) @ X450)) | (X450 = X453)) | ? [X446 : term,X447 : term,X448 : term,X449 : term] : (((ap @ X448 @ X446) = (ap @ X449 @ X447)) & (X446 != X447))) <=> (hoasapinj2_lthm = $true)) & ((axvarid = $true) <=> ! [X322 : term] : ((sub @ X322 @ id) = X322)) & (! [X312 : term] : ? [X313 : subst > term > term] : ((X313 @ sh @ one) = (sub @ X312 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (pushprop = $true) & (hoaslamnotap_gthm = $true) & (! [X181 : subst > term > subst > $o] : ? [X182 : term > $o] : ! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id)) <=> (hoasinduction_lem0_lthm = $true)) & (! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ? [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) != (sub @ (X150 @ X154 @ X156) @ X155)) | ? [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) != (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one)))) <=> (hoaslaminj = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (! [X519 : term > $o,X520 : term,X521 : subst] : ? [X522 : term > $o] : ! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) <=> (pushprop_lem0 = $true)) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X530 : term,X531 : subst > term > subst > $o] : (? [X537 : term] : (($true = (X531 @ id @ X537 @ id)) & ((X531 @ id @ (sub @ X530 @ (push @ X537 @ id)) @ id) != $true)) | ? [X532 : subst > term > term] : (! [X533 : term,X534 : subst,X535 : subst] : ((sub @ (X532 @ X535 @ X533) @ X534) = (X532 @ (comp @ X535 @ X534) @ (sub @ X533 @ X534))) & ($true != (X531 @ id @ (lam @ (X532 @ sh @ one)) @ id)) & ! [X536 : term] : (($true = (X531 @ id @ (X532 @ id @ X536) @ id)) | ($true != (X531 @ id @ X536 @ id)))) | ($true = (X531 @ id @ (lam @ (sub @ X530 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoasinduction_lem1 = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3_lthm = $true) <=> ((! [X499 : term,X500 : subst > term > subst > $o] : (? [X514 : term] : (($true != (X500 @ id @ (sub @ X499 @ (push @ X514 @ id)) @ id)) & ($true = (X500 @ id @ X514 @ id))) | ? [X501 : subst,X502 : subst,X503 : term,X504 : subst] : (((X500 @ X502 @ X503 @ (comp @ X504 @ X501)) = $true) & ($true != (X500 @ (comp @ X502 @ X504) @ (sub @ X503 @ X504) @ X501))) | ($true = (X500 @ id @ (lam @ X499) @ id)) | ? [X505 : subst > term > term] : (! [X506 : subst,X507 : subst,X508 : term] : ((X505 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X505 @ X507 @ X508) @ X506)) & ! [X509 : term] : (($true != (X500 @ id @ X509 @ id)) | ($true = (X500 @ id @ (X505 @ id @ X509) @ id))) & ($true != (X500 @ id @ (lam @ (X505 @ sh @ one)) @ id))) | ? [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (($true = (X500 @ (comp @ X511 @ X513) @ (sub @ X510 @ X513) @ X512)) & ($true != (X500 @ X511 @ X510 @ (comp @ X513 @ X512))))) | ? [X491 : subst > term > subst > $o,X492 : term] : (($true != (X491 @ id @ (lam @ (sub @ X492 @ (push @ one @ sh))) @ id)) & ! [X493 : term] : (($true = (X491 @ id @ (sub @ X492 @ (push @ X493 @ id)) @ id)) | ($true != (X491 @ id @ X493 @ id))) & ! [X494 : subst > term > term] : (((X491 @ id @ (lam @ (X494 @ sh @ one)) @ id) = $true) | ? [X495 : term,X496 : subst,X497 : subst] : ((X494 @ (comp @ X496 @ X497) @ (sub @ X495 @ X497)) != (sub @ (X494 @ X496 @ X495) @ X497)) | ? [X498 : term] : (($true != (X491 @ id @ (X494 @ id @ X498) @ id)) & ($true = (X491 @ id @ X498 @ id)))))) | ? [X490 : term] : ((sub @ X490 @ id) != X490))) & ((hoasinduction_no_psi_cond = $true) <=> ! [X44 : term,X45 : subst > term > subst > $o] : (? [X46 : term,X47 : term] : (($true != (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id)) & ($true = (X45 @ id @ X46 @ id)) & ($true = (X45 @ id @ X47 @ id))) | ? [X48 : subst > term > term] : (! [X49 : term] : (($true = (X45 @ id @ (X48 @ id @ X49) @ id)) | ($true != (X45 @ id @ X49 @ id))) & ! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)) & ($true != (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id))) | ($true = (X45 @ id @ X44 @ id)))) & ! [X135 : d_subst] : (d_id = X135) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & (axvarshift = $true) & ! [X524 : d_term,X525 : d_term] : ((X524 = X525) | ((d2term @ X525) != (d2term @ X524))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoaslaminj_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2_lthm = $true) <=> ((! [X108 : term,X109 : term > $o] : (($true = (X109 @ X108)) | ? [X113 : term] : (! [X114 : term] : (($true != (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))) & ($true != (X109 @ (lam @ X113)))) | ? [X110 : term,X111 : term] : (($true = (X109 @ X111)) & ($true = (X109 @ X110)) & ($true != (X109 @ (ap @ X111 @ X110)))) | ? [X112 : term] : (($true != (X109 @ X112)) & ($true = (var @ X112)))) | ? [X100 : subst,X101 : term,X102 : term > $o] : (! [X104 : term,X105 : term] : (($true != (X102 @ X105)) | ($true = (X102 @ (ap @ X104 @ X105))) | ((X102 @ X104) != $true)) & ($true != (X102 @ (sub @ X101 @ X100))) & ! [X106 : term] : (? [X107 : term] : (($true = (X102 @ X107)) & ($true != (X102 @ (sub @ X106 @ (push @ X107 @ id))))) | ((X102 @ (lam @ X106)) = $true)) & ! [X103 : term] : (($true = (X102 @ (sub @ X103 @ X100))) | ($true != (var @ X103))))) | ? [X99 : term] : ((sub @ X99 @ id) != X99))) & (((((! [X344 : term,X345 : term > $o,X346 : subst] : (? [X349 : term] : (((var @ X349) = $true) & ($true != (X345 @ (sub @ X349 @ X346)))) | ? [X350 : term,X351 : term] : (($true != (X345 @ (ap @ X351 @ X350))) & ($true = (X345 @ X350)) & ((X345 @ X351) = $true)) | ($true = (X345 @ (sub @ X344 @ X346))) | ? [X347 : term] : (($true != (X345 @ (lam @ X347))) & ! [X348 : term] : (($true != (X345 @ X348)) | ($true = (X345 @ (sub @ X347 @ (push @ X348 @ id))))))) | ? [X338 : term > $o,X339 : term] : (! [X343 : term] : (($true != (X338 @ X343)) | ($true = (X338 @ (lam @ X343)))) & ($true != (X338 @ X339)) & ! [X341 : term,X342 : term] : (($true != (X338 @ X342)) | ($true != (X338 @ X341)) | ($true = (X338 @ (ap @ X341 @ X342)))) & ! [X340 : term] : (($true != (var @ X340)) | ($true = (X338 @ X340))))) | ? [X337 : subst] : ((comp @ X337 @ id) != X337)) | ? [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) != X336)) | ? [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) != X334)) <=> (induction2lem_lthm = $true)) & (hoaslamnotvar_gthm = $true) & (axassoc = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X70 : term,X71 : subst > term > subst > $o] : (? [X72 : subst > term > term,X73 : term] : (($true != (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id)) & ! [X80 : term] : (($true != (X71 @ id @ X80 @ id)) | ($true = (X71 @ id @ (X72 @ id @ X80) @ id))) & ! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) & ! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79))) | ? [X81 : term] : (($true != (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) & ($true = (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id)))) & (axapp = $true) & (lamnotvar = $true) & (hoasapinj2_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (! [X162 : term,X163 : term,X164 : subst > term > subst > $o] : (($true != (X164 @ id @ X163 @ id)) | ? [X171 : subst,X172 : subst,X173 : subst,X174 : term] : (($true != (X164 @ X172 @ X174 @ (comp @ X173 @ X171))) & ($true = (X164 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173) @ X171))) | ($true != (X164 @ id @ X162 @ id)) | ? [X167 : subst,X168 : subst,X169 : subst,X170 : term] : (($true = (X164 @ X167 @ X170 @ (comp @ X169 @ X168))) & ($true != (X164 @ (comp @ X167 @ X169) @ (sub @ X170 @ X169) @ X168))) | ($true = (X164 @ id @ (ap @ X162 @ X163) @ id)) | ? [X165 : term,X166 : term] : (($true = (X164 @ id @ X166 @ id)) & ($true = (X164 @ id @ X165 @ id)) & ($true != (X164 @ id @ (ap @ (sub @ X165 @ id) @ X166) @ id)))) <=> (hoasinduction_lem2 = $true)) & (! [X144 : term > $o,X145 : term] : (? [X149 : term] : (((var @ X149) = $true) & ($true != (X144 @ X149))) | ($true = (X144 @ X145)) | ? [X147 : term,X148 : term] : (($true != (X144 @ (ap @ X147 @ X148))) & ($true = (X144 @ X147)) & ($true = (X144 @ X148))) | ? [X146 : term] : (($true = (X144 @ X146)) & ($true != (X144 @ (lam @ X146))))) <=> (induction = $true)) & ((hoasinduction_lem3v2_lthm = $true) <=> (? [X222 : term] : ((sub @ X222 @ id) != X222) | ! [X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (((X224 @ (lam @ X225)) = $true) | ? [X240 : term] : (($true != (X224 @ (sub @ X225 @ (push @ X240 @ id)))) & ($true = (X224 @ X240))) | ? [X236 : subst,X237 : subst,X238 : subst,X239 : term] : (($true != (X223 @ (comp @ X237 @ X238) @ (sub @ X239 @ X238) @ X236)) & ($true = (X223 @ X237 @ X239 @ (comp @ X238 @ X236)))) | ? [X226 : subst > term > term] : (! [X227 : term,X228 : subst,X229 : subst] : ((sub @ (X226 @ X229 @ X227) @ X228) = (X226 @ (comp @ X229 @ X228) @ (sub @ X227 @ X228))) & ! [X230 : term] : (((X223 @ id @ X230 @ id) != $true) | ($true = (X223 @ id @ (X226 @ id @ X230) @ id))) & ((X223 @ id @ (lam @ (X226 @ sh @ one)) @ id) != $true)) | ? [X232 : subst,X233 : term,X234 : subst,X235 : subst] : (($true = (X223 @ (comp @ X235 @ X232) @ (sub @ X233 @ X232) @ X234)) & ($true != (X223 @ X235 @ X233 @ (comp @ X232 @ X234)))) | ? [X231 : term] : ((X224 @ X231) != (X223 @ id @ X231 @ id))))) & (((! [X292 : term,X293 : term > $o,X294 : subst > term > subst > $o] : (? [X295 : subst > term > term] : (($true != (X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) & ! [X299 : term] : (($true != (X294 @ id @ X299 @ id)) | ($true = (X294 @ id @ (X295 @ id @ X299) @ id))) & ! [X296 : term,X297 : subst,X298 : subst] : ((sub @ (X295 @ X297 @ X296) @ X298) = (X295 @ (comp @ X297 @ X298) @ (sub @ X296 @ X298)))) | ? [X300 : term] : (($true != (X293 @ (sub @ X292 @ (push @ X300 @ id)))) & ($true = (X293 @ X300))) | ? [X301 : term] : ((X294 @ id @ X301 @ id) != (X293 @ X301)) | ($true = (X293 @ (lam @ X292)))) | ? [X291 : term] : ((sub @ X291 @ id) != X291)) | ? [X287 : term] : ! [X288 : subst > term > term] : ? [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) != (X288 @ X289 @ X290))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (axmap = $true) & (pushprop_lem3v2 = $true) & ((pushprop_lem1_lthm = $true) <=> ((! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328))))) | ? [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) != X325)) | ? [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) != X324))) & (induction2_gthm = $true) & (pushprop_lthm_orig = $true) & (! [X470 : term,X471 : term > $o] : (? [X474 : term] : (($true != (X471 @ X474)) & ($true = (var @ X474))) | ? [X472 : term,X473 : term] : (($true = (X471 @ X472)) & ($true = (X471 @ X473)) & ($true != (X471 @ (ap @ X472 @ X473)))) | ($true = (X471 @ X470)) | ? [X475 : term] : (($true != (X471 @ (lam @ X475))) & ! [X476 : term] : (($true = (X471 @ (sub @ X475 @ (push @ X476 @ id)))) | ($true != (X471 @ X476))))) <=> (induction2 = $true)) & (pushprop_lem2v2_lthm = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) <=> (axscons = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) != (d2subst @ X455)) | (X454 = X455)) & ((hoasinduction_lem2v2 = $true) <=> ! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (($true != (X83 @ X85)) | ? [X90 : term] : ((X82 @ id @ X90 @ id) != (X83 @ X90)) | ? [X91 : term,X92 : term] : (($true != (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id)) & ($true = (X82 @ id @ X91 @ id)) & ($true = (X82 @ id @ X92 @ id))) | ($true != (X83 @ X84)) | ? [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) & ($true != (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84))) | ? [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (($true = (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88)) & ($true != (X82 @ X89 @ X87 @ (comp @ X86 @ X88)))))) & (! [X209 : subst > term > subst > $o] : ? [X210 : term > $o] : ! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id)) <=> (hoasinduction_lem0 = $true)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ? [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) != (X463 @ X464)) | ($true != (X461 @ X462))) | ? [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) != X458))) & (((((! [X278 : subst > term > subst > $o,X279 : term] : (? [X280 : subst > term > term] : (($true != (X278 @ id @ (lam @ (X280 @ sh @ one)) @ id)) & ! [X281 : subst,X282 : term,X283 : subst] : ((sub @ (X280 @ X283 @ X282) @ X281) = (X280 @ (comp @ X283 @ X281) @ (sub @ X282 @ X281))) & ! [X284 : term] : (($true = (X278 @ id @ (X280 @ id @ X284) @ id)) | ($true != (X278 @ id @ X284 @ id)))) | ? [X285 : term,X286 : term] : (($true = (X278 @ id @ X286 @ id)) & ($true != (X278 @ id @ (ap @ (sub @ X285 @ id) @ X286) @ id)) & ($true = (X278 @ id @ X285 @ id))) | ($true = (X278 @ id @ X279 @ id))) | ? [X268 : term,X269 : subst > term > subst > $o,X270 : term > $o] : (! [X273 : subst > term > term] : (? [X275 : subst,X276 : subst,X277 : term] : ((sub @ (X273 @ X276 @ X277) @ X275) != (X273 @ (comp @ X276 @ X275) @ (sub @ X277 @ X275))) | ? [X274 : term] : (($true != (X269 @ id @ (X273 @ id @ X274) @ id)) & ($true = (X269 @ id @ X274 @ id))) | ($true = (X269 @ id @ (lam @ (X273 @ sh @ one)) @ id))) & ! [X272 : term] : ((X270 @ X272) = (X269 @ id @ X272 @ id)) & ! [X271 : term] : (($true != (X270 @ X271)) | ($true = (X270 @ (sub @ X268 @ (push @ X271 @ id))))) & ($true != (X270 @ (lam @ X268))))) | ? [X267 : term] : ((sub @ X267 @ id) != X267)) | ? [X260 : term > $o,X261 : term] : (($true != (X260 @ X261)) & ! [X266 : term] : (($true != (var @ X266)) | ($true = (X260 @ X266))) & ! [X262 : term] : (? [X263 : term] : (($true = (X260 @ X263)) & ($true != (X260 @ (sub @ X262 @ (push @ X263 @ id))))) | ($true = (X260 @ (lam @ X262)))) & ! [X264 : term,X265 : term] : (($true = (X260 @ (ap @ X265 @ X264))) | ($true != (X260 @ X265)) | ($true != (X260 @ X264))))) | ? [X257 : subst > term > subst > $o] : ! [X258 : term > $o] : ? [X259 : term] : ((X258 @ X259) != (X257 @ id @ X259 @ id))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X175 : term] : ? [X176 : subst > term > term] : ! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177))) & ((axshiftcons = $true) <=> ! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538)) & ((termmset = $true) <=> ! [X465 : term] : ((sub @ X465 @ id) = X465)) & (! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (? [X4 : term] : ((X2 @ X4) != (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true)) <=> (pushprop_lem1v2 = $true)) & ((shinj = $true) <=> ! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh)))) & ((hoasapinj1 = $true) <=> ! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468)))) & (hoasinduction_lem1_gthm = $true) & ((d2subst @ d_id) = id) & ((hoasinduction_lem3v2a = $true) <=> ! [X360 : subst > term > subst > $o,X361 : term,X362 : term > $o] : (? [X368 : term] : (($true != (X362 @ (sub @ X361 @ (push @ X368 @ id)))) & ($true = (X362 @ X368))) | ($true = (X362 @ (lam @ X361))) | ? [X369 : term] : ((X360 @ id @ X369 @ id) != (X362 @ X369)) | ? [X363 : subst > term > term] : (! [X364 : term,X365 : subst,X366 : subst] : ((sub @ (X363 @ X365 @ X364) @ X366) = (X363 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))) & ((X360 @ id @ (lam @ (X363 @ sh @ one)) @ id) != $true) & ! [X367 : term] : (($true = (X360 @ id @ (X363 @ id @ X367) @ id)) | ($true != (X360 @ id @ X367 @ id)))))) & (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)))))))))))) & ((hoasinduction_lem3a = $true) <=> ! [X304 : subst > term > subst > $o,X305 : term] : (? [X307 : subst > term > term] : (! [X308 : term] : (($true = (X304 @ id @ (X307 @ id @ X308) @ id)) | ($true != (X304 @ id @ X308 @ id))) & ($true != (X304 @ id @ (lam @ (X307 @ sh @ one)) @ id)) & ! [X309 : subst,X310 : subst,X311 : term] : ((X307 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309)) = (sub @ (X307 @ X310 @ X311) @ X309))) | ? [X306 : term] : (($true != (X304 @ id @ (sub @ X305 @ (push @ X306 @ id)) @ id)) & ($true = (X304 @ id @ X306 @ id))) | ((X304 @ id @ (lam @ X305) @ id) = $true))) & (! [X428 : subst > term > subst > $o,X429 : term] : (? [X430 : subst > term > term] : (! [X431 : term,X432 : subst,X433 : subst] : ((sub @ (X430 @ X432 @ X431) @ X433) = (X430 @ (comp @ X432 @ X433) @ (sub @ X431 @ X433))) & ($true != (X428 @ id @ (lam @ (X430 @ sh @ one)) @ id)) & ! [X434 : term] : (($true != (X428 @ id @ X434 @ id)) | ((X428 @ id @ (X430 @ id @ X434) @ id) = $true))) | ? [X445 : term] : (($true = (var @ (sub @ X445 @ id))) & ($true != (X428 @ id @ X445 @ id))) | ? [X437 : subst,X438 : subst,X439 : term,X440 : subst] : (($true = (X428 @ (comp @ X438 @ X440) @ (sub @ X439 @ X440) @ X437)) & ($true != (X428 @ X438 @ X439 @ (comp @ X440 @ X437)))) | ? [X435 : term,X436 : term] : (($true = (X428 @ id @ X436 @ id)) & ($true = (X428 @ id @ X435 @ id)) & ($true != (X428 @ id @ (ap @ (sub @ X435 @ id) @ X436) @ id))) | ($true = (X428 @ id @ X429 @ id)) | ? [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (($true = (X428 @ X444 @ X441 @ (comp @ X443 @ X442))) & ($true != (X428 @ (comp @ X444 @ X443) @ (sub @ X441 @ X443) @ X442)))) <=> (hoasinduction = $true)) & ((termmset_lthm = $true) <=> (? [X320 : term] : ((sub @ X320 @ id) != X320) | ! [X321 : term] : ((sub @ X321 @ id) = X321))) & (! [X138 : subst > term > term,X139 : term,X140 : term] : (((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)) | ? [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) != (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142)))) <=> (hoaslamnotap = $true)) & (lamnotap != $true) & (termmset_gthm = $true) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) <=> (axvarcons = $true)) & (ulamvar1 != $true) & (hoasinduction_lem1v2_gthm = $true) & (! [X190 : term > $o,X191 : term,X192 : subst > term > subst > $o] : (? [X200 : subst,X201 : subst,X202 : term,X203 : subst] : (($true = (X192 @ (comp @ X201 @ X203) @ (sub @ X202 @ X203) @ X200)) & ($true != (X192 @ X201 @ X202 @ (comp @ X203 @ X200)))) | ? [X194 : term] : (((X190 @ (sub @ X191 @ (push @ X194 @ id))) != $true) & ($true = (X190 @ X194))) | ($true = (X190 @ (lam @ X191))) | ? [X193 : term] : ((X192 @ id @ X193 @ id) != (X190 @ X193)) | ? [X204 : term,X205 : subst,X206 : subst,X207 : subst] : (($true != (X192 @ (comp @ X206 @ X205) @ (sub @ X204 @ X205) @ X207)) & ($true = (X192 @ X206 @ X204 @ (comp @ X205 @ X207)))) | ? [X195 : subst > term > term] : (! [X196 : subst,X197 : subst,X198 : term] : ((sub @ (X195 @ X197 @ X198) @ X196) = (X195 @ (comp @ X197 @ X196) @ (sub @ X198 @ X196))) & ($true != (X192 @ id @ (lam @ (X195 @ sh @ one)) @ id)) & ! [X199 : term] : (($true != (X192 @ id @ X199 @ id)) | ($true = (X192 @ id @ (X195 @ id @ X199) @ id))))) <=> (hoasinduction_lem3v2 = $true)) & (axclos = $true)),
% 5.84/2.07    inference(ennf_transformation,[status(thm)],[f10])).
% 5.84/2.07  thf(f10,plain,(
% 5.84/2.07    (one = (d2term @ d_one)) & (hoasapnotvar = $true) & (! [X119 : term,X120 : subst > term > subst > $o] : (~! [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (($true = (X120 @ X126 @ X128 @ (comp @ X127 @ X125))) | ($true != (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125))) | ($true = (X120 @ id @ (lam @ X119) @ id)) | ~! [X129 : subst > term > term] : (~! [X133 : term] : (((X120 @ id @ X133 @ id) != $true) | ((X120 @ id @ (X129 @ id @ X133) @ id) = $true)) | ~! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) | ($true = (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id))) | ~! [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122)) | ($true != (X120 @ X121 @ X124 @ (comp @ X123 @ X122)))) | ~! [X134 : term] : (($true != (X120 @ id @ X134 @ id)) | ($true = (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id)))) <=> (hoasinduction_lem3 = $true)) & (hoasapnotvar_lthm = $true) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem1_lthm = $true) & ((apinj2 = $true) <=> ! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518)))) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) <=> (axidr = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X241 : subst,X242 : term] : ((sub @ one @ (push @ X242 @ X241)) = X242) => (! [X243 : term,X244 : subst] : ((comp @ sh @ (push @ X243 @ X244)) = X244) => (! [X245 : term,X246 : term] : ((X245 = X246) | ((lam @ X246) != (lam @ X245))) => ! [X247 : subst > term > term,X248 : subst > term > term,X249 : term,X250 : subst] : (((X248 @ X250 @ X249) = (X247 @ X250 @ X249)) | ~! [X254 : subst,X255 : term,X256 : subst] : ((X247 @ (comp @ X254 @ X256) @ (sub @ X255 @ X256)) = (sub @ (X247 @ X254 @ X255) @ X256)) | ~! [X251 : subst,X252 : subst,X253 : term] : ((sub @ (X248 @ X252 @ X253) @ X251) = (X248 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251))) | ((lam @ (X247 @ sh @ one)) != (lam @ (X248 @ sh @ one)))))))) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ($true != (X477 @ X478))) <=> (pushprop_lem1 = $true)) & (hoasinduction_lem1v2 = $true) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) <=> (laminj = $true)) & (hoasapinj1_gthm = $true) & ((substmonoid_lthm = $true) <=> (! [X115 : subst] : ((comp @ id @ X115) = X115) => (! [X116 : subst] : ((comp @ X116 @ id) = X116) => (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118))))) & ((apinj1 = $true) <=> ! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528)))) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (ulamvarind = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X53 : term] : ((sub @ X53 @ id) = X53) => (! [X54 : term,X55 : subst > term > subst > $o] : (($true = (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id)) | ~! [X56 : term] : (((X55 @ id @ X56 @ id) != $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id))) | ~! [X57 : subst > term > term] : (~! [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) = (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ~! [X61 : term] : (($true = (X55 @ id @ (X57 @ id @ X61) @ id)) | ($true != (X55 @ id @ X61 @ id))))) => ! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ~! [X65 : subst > term > term] : (~! [X66 : term] : (($true = (X63 @ id @ (X65 @ id @ X66) @ id)) | ($true != (X63 @ id @ X66 @ id))) | ($true = (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)) | ~! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68)))) | ~! [X64 : term] : (($true = (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id)) | ((X63 @ id @ X64 @ id) != $true)))))) & ((induction2lem = $true) <=> ! [X482 : subst,X483 : term,X484 : term > $o] : (~! [X487 : term,X488 : term] : (($true != (X484 @ X488)) | ($true != (X484 @ X487)) | ($true = (X484 @ (ap @ X488 @ X487)))) | ~! [X489 : term] : (($true = (X484 @ (sub @ X489 @ X482))) | ($true != (var @ X489))) | ~! [X485 : term] : (($true = (X484 @ (lam @ X485))) | ~! [X486 : term] : (($true = (X484 @ (sub @ X485 @ (push @ X486 @ id)))) | ($true != (X484 @ X486)))) | ($true = (X484 @ (sub @ X483 @ X482))))) & ((hoasapinj1_lthm = $true) <=> (! [X213 : term] : ((sub @ X213 @ id) = X213) => (! [X214 : term,X215 : term,X216 : term,X217 : term] : (((ap @ X214 @ X216) != (ap @ X215 @ X217)) | (X214 = X215)) => ! [X218 : term,X219 : term,X220 : term,X221 : term] : (((ap @ (sub @ X219 @ id) @ X221) != (ap @ (sub @ X220 @ id) @ X218)) | (X219 = X220))))) & ((d2subst @ d_id) = sh) & (! [X424 : term] : ~! [X425 : subst > term > term] : ~! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (! [X314 : subst,X315 : term > $o,X316 : term] : ~! [X317 : term > $o] : ~! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) <=> (pushprop_lem0_lthm = $true)) & ((! [X370 : term > $o,X371 : term] : (~! [X374 : term,X375 : term] : (((X370 @ X374) != $true) | ($true = (X370 @ (ap @ X375 @ X374))) | ($true != (X370 @ X375))) | ($true = (X370 @ X371)) | ~! [X372 : term] : (($true = (X370 @ (lam @ X372))) | ~! [X373 : term] : (($true = (X370 @ (sub @ X372 @ (push @ X373 @ id)))) | ($true != (X370 @ X373)))) | ~! [X376 : term] : (($true != (var @ X376)) | ($true = (X370 @ X376)))) => (! [X377 : term,X378 : term,X379 : subst > term > subst > $o] : (~! [X388 : term,X389 : term] : (((X379 @ id @ X388 @ id) != $true) | ($true = (X379 @ id @ (ap @ (sub @ X389 @ id) @ X388) @ id)) | ($true != (X379 @ id @ X389 @ id))) | ~! [X380 : subst,X381 : subst,X382 : subst,X383 : term] : (($true != (X379 @ (comp @ X381 @ X382) @ (sub @ X383 @ X382) @ X380)) | ($true = (X379 @ X381 @ X383 @ (comp @ X382 @ X380)))) | ($true != (X379 @ id @ X377 @ id)) | ($true != (X379 @ id @ X378 @ id)) | ($true = (X379 @ id @ (ap @ X378 @ X377) @ id)) | ~! [X384 : term,X385 : subst,X386 : subst,X387 : subst] : (($true != (X379 @ X387 @ X384 @ (comp @ X385 @ X386))) | ($true = (X379 @ (comp @ X387 @ X385) @ (sub @ X384 @ X385) @ X386)))) => (! [X390 : subst > term > subst > $o,X391 : term] : (~! [X396 : subst > term > term] : (~! [X400 : term] : (($true != (X390 @ id @ X400 @ id)) | ($true = (X390 @ id @ (X396 @ id @ X400) @ id))) | ($true = (X390 @ id @ (lam @ (X396 @ sh @ one)) @ id)) | ~! [X397 : subst,X398 : subst,X399 : term] : ((sub @ (X396 @ X398 @ X399) @ X397) = (X396 @ (comp @ X398 @ X397) @ (sub @ X399 @ X397)))) | ~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (($true = (X390 @ (comp @ X403 @ X402) @ (sub @ X405 @ X402) @ X404)) | ((X390 @ X403 @ X405 @ (comp @ X402 @ X404)) != $true)) | ~! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (($true = (X390 @ X392 @ X395 @ (comp @ X394 @ X393))) | ($true != (X390 @ (comp @ X392 @ X394) @ (sub @ X395 @ X394) @ X393))) | ~! [X401 : term] : (((X390 @ id @ X401 @ id) != $true) | ($true = (X390 @ id @ (sub @ X391 @ (push @ X401 @ id)) @ id))) | ($true = (X390 @ id @ (lam @ X391) @ id))) => ! [X406 : term,X407 : subst > term > subst > $o] : (~! [X414 : subst,X415 : subst,X416 : subst,X417 : term] : (($true = (X407 @ (comp @ X415 @ X414) @ (sub @ X417 @ X414) @ X416)) | ($true != (X407 @ X415 @ X417 @ (comp @ X414 @ X416)))) | ~! [X418 : subst,X419 : term,X420 : subst,X421 : subst] : (($true = (X407 @ X420 @ X419 @ (comp @ X421 @ X418))) | ($true != (X407 @ (comp @ X420 @ X421) @ (sub @ X419 @ X421) @ X418))) | ~! [X408 : term] : (($true = (X407 @ id @ X408 @ id)) | ($true != (var @ (sub @ X408 @ id)))) | ~! [X422 : term,X423 : term] : (($true = (X407 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id)) | ($true != (X407 @ id @ X423 @ id)) | ($true != (X407 @ id @ X422 @ id))) | ~! [X409 : subst > term > term] : (($true = (X407 @ id @ (lam @ (X409 @ sh @ one)) @ id)) | ~! [X410 : term] : (($true = (X407 @ id @ (X409 @ id @ X410) @ id)) | ($true != (X407 @ id @ X410 @ id))) | ~! [X411 : subst,X412 : subst,X413 : term] : ((sub @ (X409 @ X411 @ X413) @ X412) = (X409 @ (comp @ X411 @ X412) @ (sub @ X413 @ X412)))) | ($true = (X407 @ id @ X406 @ id)))))) <=> (hoasinduction_lthm = $true)) & ((hoasinduction_lthm_3 = $true) <=> (! [X5 : subst > term > subst > $o] : ~! [X6 : term > $o] : ~! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) => (! [X8 : term,X9 : term > $o] : (($true = (X9 @ X8)) | ~! [X13 : term,X14 : term] : (($true != (X9 @ X14)) | ($true != (X9 @ X13)) | ($true = (X9 @ (ap @ X14 @ X13)))) | ~! [X11 : term] : (~! [X12 : term] : (($true = (X9 @ (sub @ X11 @ (push @ X12 @ id)))) | ($true != (X9 @ X12))) | ($true = (X9 @ (lam @ X11)))) | ~! [X10 : term] : (($true != (var @ X10)) | ($true = (X9 @ X10)))) => (! [X15 : term] : ((sub @ X15 @ id) = X15) => (! [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (~! [X20 : term] : (($true = (X18 @ (sub @ X17 @ (push @ X20 @ id)))) | ($true != (X18 @ X20))) | ($true = (X18 @ (lam @ X17))) | ~! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) | ~! [X21 : subst > term > term] : (($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id)) | ~! [X25 : term] : (($true = (X16 @ id @ (X21 @ id @ X25) @ id)) | ($true != (X16 @ id @ X25 @ id))) | ~! [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) = (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))))) => ! [X26 : term,X27 : subst > term > subst > $o] : (($true = (X27 @ id @ X26 @ id)) | ~! [X34 : term] : (($true != (var @ (sub @ X34 @ id))) | ($true = (X27 @ id @ X34 @ id))) | ~! [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true != (X27 @ X38 @ X37 @ (comp @ X36 @ X35))) | ($true = (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35))) | ~! [X39 : subst > term > term] : (~! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) | ($true = (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id)) | ~! [X40 : term] : (($true = (X27 @ id @ (X39 @ id @ X40) @ id)) | ($true != (X27 @ id @ X40 @ id)))) | ~! [X32 : term,X33 : term] : (($true != (X27 @ id @ X32 @ id)) | ($true = (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id)) | ($true != (X27 @ id @ X33 @ id))) | ~! [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true != (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29)) | ($true = (X27 @ X31 @ X28 @ (comp @ X30 @ X29)))))))))) & ! [X208 : d_term] : (d_one = X208) & (hoaslamnotvar_lthm = $true) & (axabs = $true) & (hoaslamnotvar = $true) & (! [X352 : term,X353 : subst > term > subst > $o] : (($true = (X353 @ id @ (lam @ (sub @ X352 @ (push @ one @ sh))) @ id)) | ~! [X354 : subst > term > term] : (($true = (X353 @ id @ (lam @ (X354 @ sh @ one)) @ id)) | ~! [X358 : term] : (($true = (X353 @ id @ (X354 @ id @ X358) @ id)) | ($true != (X353 @ id @ X358 @ id))) | ~! [X355 : subst,X356 : term,X357 : subst] : ((X354 @ (comp @ X355 @ X357) @ (sub @ X356 @ X357)) = (sub @ (X354 @ X355 @ X356) @ X357))) | ~! [X359 : term] : (($true != (X353 @ id @ X359 @ id)) | ((X353 @ id @ (sub @ X352 @ (push @ X359 @ id)) @ id) = $true))) <=> (hoasinduction_lem3aa = $true)) & ((substmonoid = $true) <=> (! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161))) & (! [X332 : subst] : ((comp @ id @ X332) = X332) <=> (axidl = $true)) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (substmonoid_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (hoaslamnotap_lthm = $true) & (! [X136 : term] : ~! [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) != (X137 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (apnotvar = $true) & (pushprop_lem2v2 = $true) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop_lem1v2_gthm = $true) & (induction2lem_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X446 : term,X447 : term,X448 : term,X449 : term] : (((ap @ X448 @ X446) != (ap @ X449 @ X447)) | (X446 = X447)) => ! [X450 : term,X451 : term,X452 : term,X453 : term] : (((ap @ (sub @ X451 @ id) @ X453) != (ap @ (sub @ X452 @ id) @ X450)) | (X450 = X453)))) & ((axvarid = $true) <=> ! [X322 : term] : ((sub @ X322 @ id) = X322)) & ((hoasinduction_lem3b = $true) <=> ! [X312 : term] : ~! [X313 : subst > term > term] : ((X313 @ sh @ one) != (sub @ X312 @ (push @ one @ sh)))) & (pushprop = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X181 : subst > term > subst > $o] : ~! [X182 : term > $o] : ~! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id))) & ((hoaslaminj = $true) <=> ! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one))) | ~! [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) = (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ~! [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) = (sub @ (X150 @ X154 @ X156) @ X155)))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (! [X519 : term > $o,X520 : term,X521 : subst] : ~! [X522 : term > $o] : ~! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) <=> (pushprop_lem0 = $true)) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X530 : term,X531 : subst > term > subst > $o] : (~! [X537 : term] : (((X531 @ id @ (sub @ X530 @ (push @ X537 @ id)) @ id) = $true) | ($true != (X531 @ id @ X537 @ id))) | ~! [X532 : subst > term > term] : (~! [X533 : term,X534 : subst,X535 : subst] : ((sub @ (X532 @ X535 @ X533) @ X534) = (X532 @ (comp @ X535 @ X534) @ (sub @ X533 @ X534))) | ($true = (X531 @ id @ (lam @ (X532 @ sh @ one)) @ id)) | ~! [X536 : term] : (($true = (X531 @ id @ (X532 @ id @ X536) @ id)) | ($true != (X531 @ id @ X536 @ id)))) | ($true = (X531 @ id @ (lam @ (sub @ X530 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoasinduction_lem1 = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3_lthm = $true) <=> (! [X490 : term] : ((sub @ X490 @ id) = X490) => (! [X491 : subst > term > subst > $o,X492 : term] : (~! [X493 : term] : (($true = (X491 @ id @ (sub @ X492 @ (push @ X493 @ id)) @ id)) | ($true != (X491 @ id @ X493 @ id))) | ~! [X494 : subst > term > term] : (~! [X495 : term,X496 : subst,X497 : subst] : ((X494 @ (comp @ X496 @ X497) @ (sub @ X495 @ X497)) = (sub @ (X494 @ X496 @ X495) @ X497)) | ((X491 @ id @ (lam @ (X494 @ sh @ one)) @ id) = $true) | ~! [X498 : term] : (($true = (X491 @ id @ (X494 @ id @ X498) @ id)) | ($true != (X491 @ id @ X498 @ id)))) | ($true = (X491 @ id @ (lam @ (sub @ X492 @ (push @ one @ sh))) @ id))) => ! [X499 : term,X500 : subst > term > subst > $o] : (~! [X514 : term] : (($true = (X500 @ id @ (sub @ X499 @ (push @ X514 @ id)) @ id)) | ($true != (X500 @ id @ X514 @ id))) | ($true = (X500 @ id @ (lam @ X499) @ id)) | ~! [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (($true != (X500 @ (comp @ X511 @ X513) @ (sub @ X510 @ X513) @ X512)) | ($true = (X500 @ X511 @ X510 @ (comp @ X513 @ X512)))) | ~! [X505 : subst > term > term] : (~! [X509 : term] : (($true != (X500 @ id @ X509 @ id)) | ($true = (X500 @ id @ (X505 @ id @ X509) @ id))) | ~! [X506 : subst,X507 : subst,X508 : term] : ((X505 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X505 @ X507 @ X508) @ X506)) | ($true = (X500 @ id @ (lam @ (X505 @ sh @ one)) @ id))) | ~! [X501 : subst,X502 : subst,X503 : term,X504 : subst] : (($true = (X500 @ (comp @ X502 @ X504) @ (sub @ X503 @ X504) @ X501)) | ((X500 @ X502 @ X503 @ (comp @ X504 @ X501)) != $true)))))) & (! [X44 : term,X45 : subst > term > subst > $o] : (~! [X46 : term,X47 : term] : (($true != (X45 @ id @ X47 @ id)) | ($true != (X45 @ id @ X46 @ id)) | ($true = (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id))) | ($true = (X45 @ id @ X44 @ id)) | ~! [X48 : subst > term > term] : (~! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)) | ($true = (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id)) | ~! [X49 : term] : (($true = (X45 @ id @ (X48 @ id @ X49) @ id)) | ($true != (X45 @ id @ X49 @ id))))) <=> (hoasinduction_no_psi_cond = $true)) & ! [X135 : d_subst] : (d_id = X135) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & (axvarshift = $true) & ! [X524 : d_term,X525 : d_term] : (((d2term @ X525) = (d2term @ X524)) => (X524 = X525)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoaslaminj_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2_lthm = $true) <=> (! [X99 : term] : ((sub @ X99 @ id) = X99) => (! [X100 : subst,X101 : term,X102 : term > $o] : (~! [X104 : term,X105 : term] : (($true != (X102 @ X105)) | ($true = (X102 @ (ap @ X104 @ X105))) | ((X102 @ X104) != $true)) | ($true = (X102 @ (sub @ X101 @ X100))) | ~! [X106 : term] : (~! [X107 : term] : (($true = (X102 @ (sub @ X106 @ (push @ X107 @ id)))) | ($true != (X102 @ X107))) | ((X102 @ (lam @ X106)) = $true)) | ~! [X103 : term] : (($true = (X102 @ (sub @ X103 @ X100))) | ($true != (var @ X103)))) => ! [X108 : term,X109 : term > $o] : (~! [X113 : term] : (~! [X114 : term] : (($true != (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))) | ($true = (X109 @ (lam @ X113)))) | ~! [X112 : term] : (($true = (X109 @ X112)) | ($true != (var @ X112))) | ~! [X110 : term,X111 : term] : (($true = (X109 @ (ap @ X111 @ X110))) | ($true != (X109 @ X110)) | ($true != (X109 @ X111))) | ($true = (X109 @ X108)))))) & ((! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) => (! [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) = X336) => (! [X337 : subst] : ((comp @ X337 @ id) = X337) => (! [X338 : term > $o,X339 : term] : (($true = (X338 @ X339)) | ~! [X343 : term] : (($true != (X338 @ X343)) | ($true = (X338 @ (lam @ X343)))) | ~! [X341 : term,X342 : term] : (($true != (X338 @ X342)) | ($true != (X338 @ X341)) | ($true = (X338 @ (ap @ X341 @ X342)))) | ~! [X340 : term] : (($true != (var @ X340)) | ($true = (X338 @ X340)))) => ! [X344 : term,X345 : term > $o,X346 : subst] : (~! [X350 : term,X351 : term] : (((X345 @ X351) != $true) | ($true != (X345 @ X350)) | ($true = (X345 @ (ap @ X351 @ X350)))) | ($true = (X345 @ (sub @ X344 @ X346))) | ~! [X349 : term] : (((var @ X349) != $true) | ($true = (X345 @ (sub @ X349 @ X346)))) | ~! [X347 : term] : (~! [X348 : term] : (($true != (X345 @ X348)) | ($true = (X345 @ (sub @ X347 @ (push @ X348 @ id))))) | ($true = (X345 @ (lam @ X347))))))))) <=> (induction2lem_lthm = $true)) & (hoaslamnotvar_gthm = $true) & (axassoc = $true) & (! [X70 : term,X71 : subst > term > subst > $o] : (~! [X72 : subst > term > term,X73 : term] : (($true = (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id)) | ~! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) | ~! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79)) | ~! [X80 : term] : (($true != (X71 @ id @ X80 @ id)) | ($true = (X71 @ id @ (X72 @ id @ X80) @ id)))) | ~! [X81 : term] : (($true = (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) | ($true != (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & (axapp = $true) & (lamnotvar = $true) & (hoasapinj2_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & ((hoasinduction_lem2 = $true) <=> ! [X162 : term,X163 : term,X164 : subst > term > subst > $o] : (~! [X171 : subst,X172 : subst,X173 : subst,X174 : term] : (($true != (X164 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173) @ X171)) | ($true = (X164 @ X172 @ X174 @ (comp @ X173 @ X171)))) | ~! [X167 : subst,X168 : subst,X169 : subst,X170 : term] : (($true != (X164 @ X167 @ X170 @ (comp @ X169 @ X168))) | ($true = (X164 @ (comp @ X167 @ X169) @ (sub @ X170 @ X169) @ X168))) | ($true != (X164 @ id @ X162 @ id)) | ~! [X165 : term,X166 : term] : (($true != (X164 @ id @ X165 @ id)) | ($true != (X164 @ id @ X166 @ id)) | ($true = (X164 @ id @ (ap @ (sub @ X165 @ id) @ X166) @ id))) | ($true = (X164 @ id @ (ap @ X162 @ X163) @ id)) | ($true != (X164 @ id @ X163 @ id)))) & ((induction = $true) <=> ! [X144 : term > $o,X145 : term] : (($true = (X144 @ X145)) | ~! [X147 : term,X148 : term] : (($true != (X144 @ X148)) | ($true = (X144 @ (ap @ X147 @ X148))) | ($true != (X144 @ X147))) | ~! [X149 : term] : (((var @ X149) != $true) | ($true = (X144 @ X149))) | ~! [X146 : term] : (($true != (X144 @ X146)) | ($true = (X144 @ (lam @ X146)))))) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X222 : term] : ((sub @ X222 @ id) = X222) => ! [X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (~! [X226 : subst > term > term] : (((X223 @ id @ (lam @ (X226 @ sh @ one)) @ id) = $true) | ~! [X227 : term,X228 : subst,X229 : subst] : ((sub @ (X226 @ X229 @ X227) @ X228) = (X226 @ (comp @ X229 @ X228) @ (sub @ X227 @ X228))) | ~! [X230 : term] : (((X223 @ id @ X230 @ id) != $true) | ($true = (X223 @ id @ (X226 @ id @ X230) @ id)))) | ~! [X236 : subst,X237 : subst,X238 : subst,X239 : term] : (($true != (X223 @ X237 @ X239 @ (comp @ X238 @ X236))) | ($true = (X223 @ (comp @ X237 @ X238) @ (sub @ X239 @ X238) @ X236))) | ~! [X240 : term] : (($true != (X224 @ X240)) | ($true = (X224 @ (sub @ X225 @ (push @ X240 @ id))))) | ((X224 @ (lam @ X225)) = $true) | ~! [X232 : subst,X233 : term,X234 : subst,X235 : subst] : (($true = (X223 @ X235 @ X233 @ (comp @ X232 @ X234))) | ($true != (X223 @ (comp @ X235 @ X232) @ (sub @ X233 @ X232) @ X234))) | ~! [X231 : term] : ((X224 @ X231) = (X223 @ id @ X231 @ id))))) & ((! [X287 : term] : ~! [X288 : subst > term > term] : ~! [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) = (X288 @ X289 @ X290)) => (! [X291 : term] : ((sub @ X291 @ id) = X291) => ! [X292 : term,X293 : term > $o,X294 : subst > term > subst > $o] : (~! [X300 : term] : (($true = (X293 @ (sub @ X292 @ (push @ X300 @ id)))) | ($true != (X293 @ X300))) | ~! [X301 : term] : ((X294 @ id @ X301 @ id) = (X293 @ X301)) | ~! [X295 : subst > term > term] : (($true = (X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) | ~! [X299 : term] : (($true != (X294 @ id @ X299 @ id)) | ($true = (X294 @ id @ (X295 @ id @ X299) @ id))) | ~! [X296 : term,X297 : subst,X298 : subst] : ((sub @ (X295 @ X297 @ X296) @ X298) = (X295 @ (comp @ X297 @ X298) @ (sub @ X296 @ X298)))) | ($true = (X293 @ (lam @ X292)))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (axmap = $true) & (pushprop_lem3v2 = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) = X324) => (! [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) = X325) => ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true != (X329 @ X330)) | ($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328)))))))) & (induction2_gthm = $true) & (pushprop_lthm_orig = $true) & ((induction2 = $true) <=> ! [X470 : term,X471 : term > $o] : (~! [X472 : term,X473 : term] : (($true != (X471 @ X472)) | ($true = (X471 @ (ap @ X472 @ X473))) | ($true != (X471 @ X473))) | ($true = (X471 @ X470)) | ~! [X475 : term] : (($true = (X471 @ (lam @ X475))) | ~! [X476 : term] : (($true = (X471 @ (sub @ X475 @ (push @ X476 @ id)))) | ($true != (X471 @ X476)))) | ~! [X474 : term] : (($true != (var @ X474)) | ($true = (X471 @ X474))))) & (pushprop_lem2v2_lthm = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) <=> (axscons = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3b_gthm = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) = (d2subst @ X455)) => (X454 = X455)) & (! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (~! [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true = (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96)) | ($true != (X82 @ X94 @ X93 @ (comp @ X95 @ X96)))) | ($true = (X83 @ (ap @ X85 @ X84))) | ~! [X90 : term] : ((X82 @ id @ X90 @ id) = (X83 @ X90)) | ~! [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (($true = (X82 @ X89 @ X87 @ (comp @ X86 @ X88))) | ($true != (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88))) | ($true != (X83 @ X84)) | ~! [X91 : term,X92 : term] : (($true = (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id)) | ($true != (X82 @ id @ X92 @ id)) | ($true != (X82 @ id @ X91 @ id))) | ($true != (X83 @ X85))) <=> (hoasinduction_lem2v2 = $true)) & ((hoasinduction_lem0 = $true) <=> ! [X209 : subst > term > subst > $o] : ~! [X210 : term > $o] : ~! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) = X458) => ! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (((X463 @ one) = $true) | ($true != (X461 @ X462)) | ~! [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) = (X463 @ X464))))) & ((! [X257 : subst > term > subst > $o] : ~! [X258 : term > $o] : ~! [X259 : term] : ((X258 @ X259) = (X257 @ id @ X259 @ id)) => (! [X260 : term > $o,X261 : term] : (~! [X266 : term] : (($true != (var @ X266)) | ($true = (X260 @ X266))) | ~! [X262 : term] : (($true = (X260 @ (lam @ X262))) | ~! [X263 : term] : (($true != (X260 @ X263)) | ($true = (X260 @ (sub @ X262 @ (push @ X263 @ id)))))) | ~! [X264 : term,X265 : term] : (($true = (X260 @ (ap @ X265 @ X264))) | ($true != (X260 @ X265)) | ($true != (X260 @ X264))) | ($true = (X260 @ X261))) => (! [X267 : term] : ((sub @ X267 @ id) = X267) => (! [X268 : term,X269 : subst > term > subst > $o,X270 : term > $o] : (~! [X273 : subst > term > term] : (($true = (X269 @ id @ (lam @ (X273 @ sh @ one)) @ id)) | ~! [X274 : term] : (($true = (X269 @ id @ (X273 @ id @ X274) @ id)) | ($true != (X269 @ id @ X274 @ id))) | ~! [X275 : subst,X276 : subst,X277 : term] : ((sub @ (X273 @ X276 @ X277) @ X275) = (X273 @ (comp @ X276 @ X275) @ (sub @ X277 @ X275)))) | ~! [X271 : term] : (($true != (X270 @ X271)) | ($true = (X270 @ (sub @ X268 @ (push @ X271 @ id))))) | ~! [X272 : term] : ((X270 @ X272) = (X269 @ id @ X272 @ id)) | ($true = (X270 @ (lam @ X268)))) => ! [X278 : subst > term > subst > $o,X279 : term] : (~! [X280 : subst > term > term] : (($true = (X278 @ id @ (lam @ (X280 @ sh @ one)) @ id)) | ~! [X284 : term] : (($true = (X278 @ id @ (X280 @ id @ X284) @ id)) | ($true != (X278 @ id @ X284 @ id))) | ~! [X281 : subst,X282 : term,X283 : subst] : ((sub @ (X280 @ X283 @ X282) @ X281) = (X280 @ (comp @ X283 @ X281) @ (sub @ X282 @ X281)))) | ($true = (X278 @ id @ X279 @ id)) | ~! [X285 : term,X286 : term] : (($true != (X278 @ id @ X286 @ id)) | ($true != (X278 @ id @ X285 @ id)) | ($true = (X278 @ id @ (ap @ (sub @ X285 @ id) @ X286) @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) <=> (hoasapinj2 = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X175 : term] : ~! [X176 : subst > term > term] : ~! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177))) & ((axshiftcons = $true) <=> ! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538)) & ((termmset = $true) <=> ! [X465 : term] : ((sub @ X465 @ id) = X465)) & ((pushprop_lem1v2 = $true) <=> ! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (~! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ($true != (X0 @ X3)) | ((X2 @ one) = $true))) & ((shinj = $true) <=> ! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh)))) & ((hoasapinj1 = $true) <=> ! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468)))) & (hoasinduction_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (! [X360 : subst > term > subst > $o,X361 : term,X362 : term > $o] : (~! [X369 : term] : ((X360 @ id @ X369 @ id) = (X362 @ X369)) | ($true = (X362 @ (lam @ X361))) | ~! [X368 : term] : (($true = (X362 @ (sub @ X361 @ (push @ X368 @ id)))) | ($true != (X362 @ X368))) | ~! [X363 : subst > term > term] : (~! [X367 : term] : (($true = (X360 @ id @ (X363 @ id @ X367) @ id)) | ($true != (X360 @ id @ X367 @ id))) | ((X360 @ id @ (lam @ (X363 @ sh @ one)) @ id) = $true) | ~! [X364 : term,X365 : subst,X366 : subst] : ((sub @ (X363 @ X365 @ X364) @ X366) = (X363 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))))) <=> (hoasinduction_lem3v2a = $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)))))))))))) & (! [X304 : subst > term > subst > $o,X305 : term] : (~! [X307 : subst > term > term] : (($true = (X304 @ id @ (lam @ (X307 @ sh @ one)) @ id)) | ~! [X309 : subst,X310 : subst,X311 : term] : ((X307 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309)) = (sub @ (X307 @ X310 @ X311) @ X309)) | ~! [X308 : term] : (($true = (X304 @ id @ (X307 @ id @ X308) @ id)) | ($true != (X304 @ id @ X308 @ id)))) | ((X304 @ id @ (lam @ X305) @ id) = $true) | ~! [X306 : term] : (($true != (X304 @ id @ X306 @ id)) | ($true = (X304 @ id @ (sub @ X305 @ (push @ X306 @ id)) @ id)))) <=> (hoasinduction_lem3a = $true)) & (! [X428 : subst > term > subst > $o,X429 : term] : (~! [X435 : term,X436 : term] : (($true != (X428 @ id @ X435 @ id)) | ($true != (X428 @ id @ X436 @ id)) | ($true = (X428 @ id @ (ap @ (sub @ X435 @ id) @ X436) @ id))) | ~! [X445 : term] : (($true = (X428 @ id @ X445 @ id)) | ($true != (var @ (sub @ X445 @ id)))) | ($true = (X428 @ id @ X429 @ id)) | ~! [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (($true != (X428 @ X444 @ X441 @ (comp @ X443 @ X442))) | ($true = (X428 @ (comp @ X444 @ X443) @ (sub @ X441 @ X443) @ X442))) | ~! [X437 : subst,X438 : subst,X439 : term,X440 : subst] : (($true != (X428 @ (comp @ X438 @ X440) @ (sub @ X439 @ X440) @ X437)) | ($true = (X428 @ X438 @ X439 @ (comp @ X440 @ X437)))) | ~! [X430 : subst > term > term] : (~! [X431 : term,X432 : subst,X433 : subst] : ((sub @ (X430 @ X432 @ X431) @ X433) = (X430 @ (comp @ X432 @ X433) @ (sub @ X431 @ X433))) | ($true = (X428 @ id @ (lam @ (X430 @ sh @ one)) @ id)) | ~! [X434 : term] : (($true != (X428 @ id @ X434 @ id)) | ((X428 @ id @ (X430 @ id @ X434) @ id) = $true)))) <=> (hoasinduction = $true)) & ((! [X320 : term] : ((sub @ X320 @ id) = X320) => ! [X321 : term] : ((sub @ X321 @ id) = X321)) <=> (termmset_lthm = $true)) & ((hoaslamnotap = $true) <=> ! [X138 : subst > term > term,X139 : term,X140 : term] : (~! [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) = (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142))) | ((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)))) & (lamnotap != $true) & (termmset_gthm = $true) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) <=> (axvarcons = $true)) & (ulamvar1 != $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X190 : term > $o,X191 : term,X192 : subst > term > subst > $o] : (~! [X200 : subst,X201 : subst,X202 : term,X203 : subst] : (($true != (X192 @ (comp @ X201 @ X203) @ (sub @ X202 @ X203) @ X200)) | ($true = (X192 @ X201 @ X202 @ (comp @ X203 @ X200)))) | ~! [X193 : term] : ((X192 @ id @ X193 @ id) = (X190 @ X193)) | ~! [X195 : subst > term > term] : (~! [X196 : subst,X197 : subst,X198 : term] : ((sub @ (X195 @ X197 @ X198) @ X196) = (X195 @ (comp @ X197 @ X196) @ (sub @ X198 @ X196))) | ~! [X199 : term] : (($true != (X192 @ id @ X199 @ id)) | ($true = (X192 @ id @ (X195 @ id @ X199) @ id))) | ($true = (X192 @ id @ (lam @ (X195 @ sh @ one)) @ id))) | ($true = (X190 @ (lam @ X191))) | ~! [X194 : term] : (((X190 @ (sub @ X191 @ (push @ X194 @ id))) = $true) | ($true != (X190 @ X194))) | ~! [X204 : term,X205 : subst,X206 : subst,X207 : subst] : (($true = (X192 @ (comp @ X206 @ X205) @ (sub @ X204 @ X205) @ X207)) | ($true != (X192 @ X206 @ X204 @ (comp @ X205 @ X207)))))) & (axclos = $true)),
% 5.84/2.07    inference(flattening,[status(thm)],[f9])).
% 5.84/2.07  thf(f9,plain,(
% 5.84/2.07    (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (~($true = (X0 @ X3)) | ~! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ((X2 @ one) = $true))) & (pushprop_lem2v2 = $true) & ((hoasinduction_lthm_3 = $true) <=> (! [X5 : subst > term > subst > $o] : ~! [X6 : term > $o] : ~! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) => (! [X8 : term,X9 : term > $o] : (~! [X10 : term] : (~($true = (var @ X10)) | ($true = (X9 @ X10))) | ~! [X11 : term] : (~! [X12 : term] : (~($true = (X9 @ X12)) | ($true = (X9 @ (sub @ X11 @ (push @ X12 @ id))))) | ($true = (X9 @ (lam @ X11)))) | ~! [X13 : term,X14 : term] : (~($true = (X9 @ X13)) | ~($true = (X9 @ X14)) | ($true = (X9 @ (ap @ X14 @ X13)))) | ($true = (X9 @ X8))) => (! [X15 : term] : ((sub @ X15 @ id) = X15) => (! [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (~! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) | ~! [X20 : term] : (~($true = (X18 @ X20)) | ($true = (X18 @ (sub @ X17 @ (push @ X20 @ id))))) | ($true = (X18 @ (lam @ X17))) | ~! [X21 : subst > term > term] : (~! [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) = (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ~! [X25 : term] : (~($true = (X16 @ id @ X25 @ id)) | ($true = (X16 @ id @ (X21 @ id @ X25) @ id))) | ($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id)))) => ! [X26 : term,X27 : subst > term > subst > $o] : (~! [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true = (X27 @ X31 @ X28 @ (comp @ X30 @ X29))) | ~($true = (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29))) | ~! [X32 : term,X33 : term] : (~($true = (X27 @ id @ X33 @ id)) | ($true = (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id)) | ~($true = (X27 @ id @ X32 @ id))) | ~! [X34 : term] : (($true = (X27 @ id @ X34 @ id)) | ~($true = (var @ (sub @ X34 @ id)))) | ~! [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true = (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35)) | ~($true = (X27 @ X38 @ X37 @ (comp @ X36 @ X35)))) | ($true = (X27 @ id @ X26 @ id)) | ~! [X39 : subst > term > term] : (~! [X40 : term] : (~($true = (X27 @ id @ X40 @ id)) | ($true = (X27 @ id @ (X39 @ id @ X40) @ id))) | ~! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) | ($true = (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id))))))))) & (hoasapinj2_gthm = $true) & (hoasinduction_lem1 = $true) & (! [X44 : term,X45 : subst > term > subst > $o] : (($true = (X45 @ id @ X44 @ id)) | ~! [X46 : term,X47 : term] : (~($true = (X45 @ id @ X47 @ id)) | ~($true = (X45 @ id @ X46 @ id)) | ($true = (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id))) | ~! [X48 : subst > term > term] : (~! [X49 : term] : (~($true = (X45 @ id @ X49 @ id)) | ($true = (X45 @ id @ (X48 @ id @ X49) @ id))) | ($true = (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id)) | ~! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)))) <=> (hoasinduction_no_psi_cond = $true)) & (induction2lem_gthm = $true) & ((! [X53 : term] : ((sub @ X53 @ id) = X53) => (! [X54 : term,X55 : subst > term > subst > $o] : (~! [X56 : term] : (~((X55 @ id @ X56 @ id) = $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id))) | ~! [X57 : subst > term > term] : (~! [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) = (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ~! [X61 : term] : (($true = (X55 @ id @ (X57 @ id @ X61) @ id)) | ~($true = (X55 @ id @ X61 @ id)))) | ($true = (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id))) => ! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ~! [X64 : term] : (~((X63 @ id @ X64 @ id) = $true) | ($true = (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id))) | ~! [X65 : subst > term > term] : (~! [X66 : term] : (~($true = (X63 @ id @ X66 @ id)) | ($true = (X63 @ id @ (X65 @ id @ X66) @ id))) | ~! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) | ($true = (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)))))) <=> (hoasinduction_lem3a_lthm = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X70 : term,X71 : subst > term > subst > $o] : (~! [X72 : subst > term > term,X73 : term] : (~! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) | ~! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79)) | ~! [X80 : term] : (($true = (X71 @ id @ (X72 @ id @ X80) @ id)) | ~($true = (X71 @ id @ X80 @ id))) | ($true = (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id))) | ~! [X81 : term] : (($true = (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) | ~($true = (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & (! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (~! [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (~($true = (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88)) | ($true = (X82 @ X89 @ X87 @ (comp @ X86 @ X88)))) | ~! [X90 : term] : ((X82 @ id @ X90 @ id) = (X83 @ X90)) | ~($true = (X83 @ X84)) | ~! [X91 : term,X92 : term] : (~($true = (X82 @ id @ X92 @ id)) | ~($true = (X82 @ id @ X91 @ id)) | ($true = (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id))) | ~($true = (X83 @ X85)) | ~! [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (~($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) | ($true = (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84)))) <=> (hoasinduction_lem2v2 = $true)) & (pushprop_lem2v2_gthm = $true) & (axclos = $true) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (hoasapnotvar_lthm = $true) & ((! [X99 : term] : ((sub @ X99 @ id) = X99) => (! [X100 : subst,X101 : term,X102 : term > $o] : (($true = (X102 @ (sub @ X101 @ X100))) | ~! [X103 : term] : (~($true = (var @ X103)) | ($true = (X102 @ (sub @ X103 @ X100)))) | ~! [X104 : term,X105 : term] : (~($true = (X102 @ X105)) | ~((X102 @ X104) = $true) | ($true = (X102 @ (ap @ X104 @ X105)))) | ~! [X106 : term] : (~! [X107 : term] : (($true = (X102 @ (sub @ X106 @ (push @ X107 @ id)))) | ~($true = (X102 @ X107))) | ((X102 @ (lam @ X106)) = $true))) => ! [X108 : term,X109 : term > $o] : (~! [X110 : term,X111 : term] : (~($true = (X109 @ X110)) | ($true = (X109 @ (ap @ X111 @ X110))) | ~($true = (X109 @ X111))) | ~! [X112 : term] : (($true = (X109 @ X112)) | ~($true = (var @ X112))) | ($true = (X109 @ X108)) | ~! [X113 : term] : (($true = (X109 @ (lam @ X113))) | ~! [X114 : term] : (~($true = (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))))))) <=> (induction2_lthm = $true)) & ~(lamnotap = $true) & ((substmonoid_lthm = $true) <=> (! [X115 : subst] : ((comp @ id @ X115) = X115) => (! [X116 : subst] : ((comp @ X116 @ id) = X116) => (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118))))) & ((hoasinduction_lem3 = $true) <=> ! [X119 : term,X120 : subst > term > subst > $o] : (($true = (X120 @ id @ (lam @ X119) @ id)) | ~! [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122)) | ~($true = (X120 @ X121 @ X124 @ (comp @ X123 @ X122)))) | ~! [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (~($true = (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125)) | ($true = (X120 @ X126 @ X128 @ (comp @ X127 @ X125)))) | ~! [X129 : subst > term > term] : (~! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) | ($true = (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id)) | ~! [X133 : term] : (((X120 @ id @ (X129 @ id @ X133) @ id) = $true) | ~((X120 @ id @ X133 @ id) = $true))) | ~! [X134 : term] : (($true = (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id)) | ~($true = (X120 @ id @ X134 @ id))))) & (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)))))))))))) & ! [X135 : d_subst] : (d_id = X135) & (! [X136 : term] : ~! [X137 : subst > term > term] : ((sub @ X136 @ (push @ one @ sh)) != (X137 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & ((hoaslamnotap = $true) <=> ! [X138 : subst > term > term,X139 : term,X140 : term] : (~! [X141 : term,X142 : subst,X143 : subst] : ((sub @ (X138 @ X143 @ X141) @ X142) = (X138 @ (comp @ X143 @ X142) @ (sub @ X141 @ X142))) | ((lam @ (X138 @ sh @ one)) != (ap @ (sub @ X139 @ id) @ X140)))) & ((induction = $true) <=> ! [X144 : term > $o,X145 : term] : (~! [X146 : term] : (~($true = (X144 @ X146)) | ($true = (X144 @ (lam @ X146)))) | ~! [X147 : term,X148 : term] : (~($true = (X144 @ X148)) | ($true = (X144 @ (ap @ X147 @ X148))) | ~($true = (X144 @ X147))) | ($true = (X144 @ X145)) | ~! [X149 : term] : (~((var @ X149) = $true) | ($true = (X144 @ X149))))) & (hoaslamnotap_lthm = $true) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoaslaminj = $true) <=> ! [X150 : subst > term > term,X151 : subst,X152 : term,X153 : subst > term > term] : (((X153 @ X151 @ X152) = (X150 @ X151 @ X152)) | ((lam @ (X153 @ sh @ one)) != (lam @ (X150 @ sh @ one))) | ~! [X157 : subst,X158 : subst,X159 : term] : ((sub @ (X153 @ X157 @ X159) @ X158) = (X153 @ (comp @ X157 @ X158) @ (sub @ X159 @ X158))) | ~! [X154 : subst,X155 : subst,X156 : term] : ((X150 @ (comp @ X154 @ X155) @ (sub @ X156 @ X155)) = (sub @ (X150 @ X154 @ X156) @ X155)))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (pushprop_lem2v2_lthm = $true) & (pushprop_lem0_gthm = $true) & ((substmonoid = $true) <=> (! [X160 : subst] : ((comp @ id @ X160) = X160) & ! [X161 : subst] : ((comp @ X161 @ id) = X161))) & (hoasinduction_lem3a_gthm = $true) & (one = (d2term @ d_one)) & ((hoasinduction_lem2 = $true) <=> ! [X162 : term,X163 : term,X164 : subst > term > subst > $o] : (~! [X165 : term,X166 : term] : (~($true = (X164 @ id @ X165 @ id)) | ~($true = (X164 @ id @ X166 @ id)) | ($true = (X164 @ id @ (ap @ (sub @ X165 @ id) @ X166) @ id))) | ($true = (X164 @ id @ (ap @ X162 @ X163) @ id)) | ~! [X167 : subst,X168 : subst,X169 : subst,X170 : term] : (~($true = (X164 @ X167 @ X170 @ (comp @ X169 @ X168))) | ($true = (X164 @ (comp @ X167 @ X169) @ (sub @ X170 @ X169) @ X168))) | ~! [X171 : subst,X172 : subst,X173 : subst,X174 : term] : (~($true = (X164 @ (comp @ X172 @ X173) @ (sub @ X174 @ X173) @ X171)) | ($true = (X164 @ X172 @ X174 @ (comp @ X173 @ X171)))) | ~($true = (X164 @ id @ X163 @ id)) | ~($true = (X164 @ id @ X162 @ id)))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X175 : term] : ~! [X176 : subst > term > term] : ~! [X177 : term,X178 : subst] : ((sub @ X175 @ (push @ X177 @ X178)) = (X176 @ X178 @ X177))) & ~(ulamvar1 = $true) & (pushprop_lem1v2_gthm = $true) & (! [X179 : subst,X180 : term] : ((sub @ one @ (push @ X180 @ X179)) = X180) <=> (axvarcons = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X181 : subst > term > subst > $o] : ~! [X182 : term > $o] : ~! [X183 : term] : ((X182 @ X183) = (X181 @ id @ X183 @ id))) & (pushprop_lthm_orig = $true) & (! [X184 : term,X185 : term,X186 : term,X187 : term] : ((X186 = X187) | ((ap @ (sub @ X185 @ id) @ X187) != (ap @ (sub @ X184 @ id) @ X186))) <=> (hoasapinj2 = $true)) & (! [X188 : term,X189 : term] : (((lam @ X189) != (lam @ X188)) | (X188 = X189)) <=> (laminj = $true)) & (hoasinduction_lem2_gthm = $true) & (! [X190 : term > $o,X191 : term,X192 : subst > term > subst > $o] : (~! [X193 : term] : ((X192 @ id @ X193 @ id) = (X190 @ X193)) | ~! [X194 : term] : (~($true = (X190 @ X194)) | ((X190 @ (sub @ X191 @ (push @ X194 @ id))) = $true)) | ~! [X195 : subst > term > term] : (($true = (X192 @ id @ (lam @ (X195 @ sh @ one)) @ id)) | ~! [X196 : subst,X197 : subst,X198 : term] : ((sub @ (X195 @ X197 @ X198) @ X196) = (X195 @ (comp @ X197 @ X196) @ (sub @ X198 @ X196))) | ~! [X199 : term] : (~($true = (X192 @ id @ X199 @ id)) | ($true = (X192 @ id @ (X195 @ id @ X199) @ id)))) | ~! [X200 : subst,X201 : subst,X202 : term,X203 : subst] : (~($true = (X192 @ (comp @ X201 @ X203) @ (sub @ X202 @ X203) @ X200)) | ($true = (X192 @ X201 @ X202 @ (comp @ X203 @ X200)))) | ($true = (X190 @ (lam @ X191))) | ~! [X204 : term,X205 : subst,X206 : subst,X207 : subst] : (($true = (X192 @ (comp @ X206 @ X205) @ (sub @ X204 @ X205) @ X207)) | ~($true = (X192 @ X206 @ X204 @ (comp @ X205 @ X207))))) <=> (hoasinduction_lem3v2 = $true)) & ((d2subst @ d_id) = sh) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoaslaminj_gthm = $true) & ! [X208 : d_term] : (d_one = X208) & ((hoasinduction_lem0 = $true) <=> ! [X209 : subst > term > subst > $o] : ~! [X210 : term > $o] : ~! [X211 : term] : ((X210 @ X211) = (X209 @ id @ X211 @ id))) & (! [X212 : subst] : ((comp @ X212 @ id) = X212) <=> (axidr = $true)) & (axabs = $true) & ((hoasapinj1_lthm = $true) <=> (! [X213 : term] : ((sub @ X213 @ id) = X213) => (! [X214 : term,X215 : term,X216 : term,X217 : term] : (((ap @ X214 @ X216) != (ap @ X215 @ X217)) | (X214 = X215)) => ! [X218 : term,X219 : term,X220 : term,X221 : term] : (((ap @ (sub @ X219 @ id) @ X221) != (ap @ (sub @ X220 @ id) @ X218)) | (X219 = X220))))) & (apnotvar = $true) & ((! [X222 : term] : ((sub @ X222 @ id) = X222) => ! [X223 : subst > term > subst > $o,X224 : term > $o,X225 : term] : (~! [X226 : subst > term > term] : (((X223 @ id @ (lam @ (X226 @ sh @ one)) @ id) = $true) | ~! [X227 : term,X228 : subst,X229 : subst] : ((sub @ (X226 @ X229 @ X227) @ X228) = (X226 @ (comp @ X229 @ X228) @ (sub @ X227 @ X228))) | ~! [X230 : term] : (~((X223 @ id @ X230 @ id) = $true) | ($true = (X223 @ id @ (X226 @ id @ X230) @ id)))) | ~! [X231 : term] : ((X224 @ X231) = (X223 @ id @ X231 @ id)) | ~! [X232 : subst,X233 : term,X234 : subst,X235 : subst] : (~($true = (X223 @ (comp @ X235 @ X232) @ (sub @ X233 @ X232) @ X234)) | ($true = (X223 @ X235 @ X233 @ (comp @ X232 @ X234)))) | ~! [X236 : subst,X237 : subst,X238 : subst,X239 : term] : (~($true = (X223 @ X237 @ X239 @ (comp @ X238 @ X236))) | ($true = (X223 @ (comp @ X237 @ X238) @ (sub @ X239 @ X238) @ X236))) | ~! [X240 : term] : (~($true = (X224 @ X240)) | ($true = (X224 @ (sub @ X225 @ (push @ X240 @ id))))) | ((X224 @ (lam @ X225)) = $true))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X241 : subst,X242 : term] : ((sub @ one @ (push @ X242 @ X241)) = X242) => (! [X243 : term,X244 : subst] : ((comp @ sh @ (push @ X243 @ X244)) = X244) => (! [X245 : term,X246 : term] : ((X245 = X246) | ((lam @ X246) != (lam @ X245))) => ! [X247 : subst > term > term,X248 : subst > term > term,X249 : term,X250 : subst] : (((X248 @ X250 @ X249) = (X247 @ X250 @ X249)) | ~! [X254 : subst,X255 : term,X256 : subst] : ((X247 @ (comp @ X254 @ X256) @ (sub @ X255 @ X256)) = (sub @ (X247 @ X254 @ X255) @ X256)) | ~! [X251 : subst,X252 : subst,X253 : term] : ((sub @ (X248 @ X252 @ X253) @ X251) = (X248 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251))) | ((lam @ (X247 @ sh @ one)) != (lam @ (X248 @ sh @ one)))))))) & ((! [X257 : subst > term > subst > $o] : ~! [X258 : term > $o] : ~! [X259 : term] : ((X258 @ X259) = (X257 @ id @ X259 @ id)) => (! [X260 : term > $o,X261 : term] : (~! [X262 : term] : (~! [X263 : term] : (~($true = (X260 @ X263)) | ($true = (X260 @ (sub @ X262 @ (push @ X263 @ id))))) | ($true = (X260 @ (lam @ X262)))) | ($true = (X260 @ X261)) | ~! [X264 : term,X265 : term] : (($true = (X260 @ (ap @ X265 @ X264))) | ~($true = (X260 @ X265)) | ~($true = (X260 @ X264))) | ~! [X266 : term] : (($true = (X260 @ X266)) | ~($true = (var @ X266)))) => (! [X267 : term] : ((sub @ X267 @ id) = X267) => (! [X268 : term,X269 : subst > term > subst > $o,X270 : term > $o] : (~! [X271 : term] : (($true = (X270 @ (sub @ X268 @ (push @ X271 @ id)))) | ~($true = (X270 @ X271))) | ~! [X272 : term] : ((X270 @ X272) = (X269 @ id @ X272 @ id)) | ~! [X273 : subst > term > term] : (~! [X274 : term] : (~($true = (X269 @ id @ X274 @ id)) | ($true = (X269 @ id @ (X273 @ id @ X274) @ id))) | ~! [X275 : subst,X276 : subst,X277 : term] : ((sub @ (X273 @ X276 @ X277) @ X275) = (X273 @ (comp @ X276 @ X275) @ (sub @ X277 @ X275))) | ($true = (X269 @ id @ (lam @ (X273 @ sh @ one)) @ id))) | ($true = (X270 @ (lam @ X268)))) => ! [X278 : subst > term > subst > $o,X279 : term] : (~! [X280 : subst > term > term] : (($true = (X278 @ id @ (lam @ (X280 @ sh @ one)) @ id)) | ~! [X281 : subst,X282 : term,X283 : subst] : ((sub @ (X280 @ X283 @ X282) @ X281) = (X280 @ (comp @ X283 @ X281) @ (sub @ X282 @ X281))) | ~! [X284 : term] : (($true = (X278 @ id @ (X280 @ id @ X284) @ id)) | ~($true = (X278 @ id @ X284 @ id)))) | ($true = (X278 @ id @ X279 @ id)) | ~! [X285 : term,X286 : term] : (~($true = (X278 @ id @ X285 @ id)) | ~($true = (X278 @ id @ X286 @ id)) | ($true = (X278 @ id @ (ap @ (sub @ X285 @ id) @ X286) @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ((! [X287 : term] : ~! [X288 : subst > term > term] : ~! [X289 : subst,X290 : term] : ((sub @ X287 @ (push @ X290 @ X289)) = (X288 @ X289 @ X290)) => (! [X291 : term] : ((sub @ X291 @ id) = X291) => ! [X292 : term,X293 : term > $o,X294 : subst > term > subst > $o] : (~! [X295 : subst > term > term] : (~! [X296 : term,X297 : subst,X298 : subst] : ((sub @ (X295 @ X297 @ X296) @ X298) = (X295 @ (comp @ X297 @ X298) @ (sub @ X296 @ X298))) | ($true = (X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) | ~! [X299 : term] : (~($true = (X294 @ id @ X299 @ id)) | ($true = (X294 @ id @ (X295 @ id @ X299) @ id)))) | ~! [X300 : term] : (($true = (X293 @ (sub @ X292 @ (push @ X300 @ id)))) | ~($true = (X293 @ X300))) | ($true = (X293 @ (lam @ X292))) | ~! [X301 : term] : ((X294 @ id @ X301 @ id) = (X293 @ X301))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (pushprop_lem1_gthm = $true) & ! [X302 : term] : ? [X303 : d_term] : ((d2term @ X303) = X302) & (! [X304 : subst > term > subst > $o,X305 : term] : (~! [X306 : term] : (~($true = (X304 @ id @ X306 @ id)) | ($true = (X304 @ id @ (sub @ X305 @ (push @ X306 @ id)) @ id))) | ((X304 @ id @ (lam @ X305) @ id) = $true) | ~! [X307 : subst > term > term] : (~! [X308 : term] : (($true = (X304 @ id @ (X307 @ id @ X308) @ id)) | ~($true = (X304 @ id @ X308 @ id))) | ($true = (X304 @ id @ (lam @ (X307 @ sh @ one)) @ id)) | ~! [X309 : subst,X310 : subst,X311 : term] : ((X307 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309)) = (sub @ (X307 @ X310 @ X311) @ X309)))) <=> (hoasinduction_lem3a = $true)) & ((hoasinduction_lem3b = $true) <=> ! [X312 : term] : ~! [X313 : subst > term > term] : ((X313 @ sh @ one) != (sub @ X312 @ (push @ one @ sh)))) & (hoasinduction_lem2v2_gthm = $true) & (hoasinduction_gthm = $true) & (! [X314 : subst,X315 : term > $o,X316 : term] : ~! [X317 : term > $o] : ~! [X318 : term] : ((X315 @ (sub @ X318 @ (push @ X316 @ X314))) = (X317 @ X318)) <=> (pushprop_lem0_lthm = $true)) & (hoasapinj1_gthm = $true) & ~((var @ (d2term @ d_one)) = $true) & (! [X319 : subst] : ((push @ (sub @ one @ X319) @ (comp @ sh @ X319)) = X319) <=> (axscons = $true)) & ((! [X320 : term] : ((sub @ X320 @ id) = X320) => ! [X321 : term] : ((sub @ X321 @ id) = X321)) <=> (termmset_lthm = $true)) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem1_gthm = $true) & ((axvarid = $true) <=> ! [X322 : term] : ((sub @ X322 @ id) = X322)) & (hoasinduction_lem1v2 = $true) & ((! [X323 : subst,X324 : term] : ((sub @ one @ (push @ X324 @ X323)) = X324) => (! [X325 : subst,X326 : term] : ((comp @ sh @ (push @ X326 @ X325)) = X325) => ! [X327 : term > $o,X328 : subst,X329 : term > $o,X330 : term,X331 : term] : (($true = (X327 @ (sub @ X330 @ (push @ X331 @ X328)))) | ~($true = (X329 @ X330))))) <=> (pushprop_lem1_lthm = $true)) & (! [X332 : subst] : ((comp @ id @ X332) = X332) <=> (axidl = $true)) & ((! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) => (! [X335 : term,X336 : subst] : ((comp @ sh @ (push @ X335 @ X336)) = X336) => (! [X337 : subst] : ((comp @ X337 @ id) = X337) => (! [X338 : term > $o,X339 : term] : (~! [X340 : term] : (~($true = (var @ X340)) | ($true = (X338 @ X340))) | ~! [X341 : term,X342 : term] : (~($true = (X338 @ X341)) | ~($true = (X338 @ X342)) | ($true = (X338 @ (ap @ X341 @ X342)))) | ($true = (X338 @ X339)) | ~! [X343 : term] : (~($true = (X338 @ X343)) | ($true = (X338 @ (lam @ X343))))) => ! [X344 : term,X345 : term > $o,X346 : subst] : (~! [X347 : term] : (($true = (X345 @ (lam @ X347))) | ~! [X348 : term] : (($true = (X345 @ (sub @ X347 @ (push @ X348 @ id)))) | ~($true = (X345 @ X348)))) | ~! [X349 : term] : (~((var @ X349) = $true) | ($true = (X345 @ (sub @ X349 @ X346)))) | ($true = (X345 @ (sub @ X344 @ X346))) | ~! [X350 : term,X351 : term] : (~($true = (X345 @ X350)) | ~((X345 @ X351) = $true) | ($true = (X345 @ (ap @ X351 @ X350))))))))) <=> (induction2lem_lthm = $true)) & (hoasapnotvar_gthm = $true) & (! [X352 : term,X353 : subst > term > subst > $o] : (($true = (X353 @ id @ (lam @ (sub @ X352 @ (push @ one @ sh))) @ id)) | ~! [X354 : subst > term > term] : (~! [X355 : subst,X356 : term,X357 : subst] : ((X354 @ (comp @ X355 @ X357) @ (sub @ X356 @ X357)) = (sub @ (X354 @ X355 @ X356) @ X357)) | ($true = (X353 @ id @ (lam @ (X354 @ sh @ one)) @ id)) | ~! [X358 : term] : (~($true = (X353 @ id @ X358 @ id)) | ($true = (X353 @ id @ (X354 @ id @ X358) @ id)))) | ~! [X359 : term] : (((X353 @ id @ (sub @ X352 @ (push @ X359 @ id)) @ id) = $true) | ~($true = (X353 @ id @ X359 @ id)))) <=> (hoasinduction_lem3aa = $true)) & (hoasinduction_lem1_lthm = $true) & (! [X360 : subst > term > subst > $o,X361 : term,X362 : term > $o] : (~! [X363 : subst > term > term] : (~! [X364 : term,X365 : subst,X366 : subst] : ((sub @ (X363 @ X365 @ X364) @ X366) = (X363 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))) | ~! [X367 : term] : (~($true = (X360 @ id @ X367 @ id)) | ($true = (X360 @ id @ (X363 @ id @ X367) @ id))) | ((X360 @ id @ (lam @ (X363 @ sh @ one)) @ id) = $true)) | ($true = (X362 @ (lam @ X361))) | ~! [X368 : term] : (($true = (X362 @ (sub @ X361 @ (push @ X368 @ id)))) | ~($true = (X362 @ X368))) | ~! [X369 : term] : ((X360 @ id @ X369 @ id) = (X362 @ X369))) <=> (hoasinduction_lem3v2a = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (lamnotvar = $true) & ((hoasinduction_lthm = $true) <=> (! [X370 : term > $o,X371 : term] : (~! [X372 : term] : (~! [X373 : term] : (($true = (X370 @ (sub @ X372 @ (push @ X373 @ id)))) | ~($true = (X370 @ X373))) | ($true = (X370 @ (lam @ X372)))) | ~! [X374 : term,X375 : term] : (~($true = (X370 @ X375)) | ~((X370 @ X374) = $true) | ($true = (X370 @ (ap @ X375 @ X374)))) | ~! [X376 : term] : (~($true = (var @ X376)) | ($true = (X370 @ X376))) | ($true = (X370 @ X371))) => (! [X377 : term,X378 : term,X379 : subst > term > subst > $o] : (~! [X380 : subst,X381 : subst,X382 : subst,X383 : term] : (~($true = (X379 @ (comp @ X381 @ X382) @ (sub @ X383 @ X382) @ X380)) | ($true = (X379 @ X381 @ X383 @ (comp @ X382 @ X380)))) | ~! [X384 : term,X385 : subst,X386 : subst,X387 : subst] : (($true = (X379 @ (comp @ X387 @ X385) @ (sub @ X384 @ X385) @ X386)) | ~($true = (X379 @ X387 @ X384 @ (comp @ X385 @ X386)))) | ~($true = (X379 @ id @ X378 @ id)) | ($true = (X379 @ id @ (ap @ X378 @ X377) @ id)) | ~($true = (X379 @ id @ X377 @ id)) | ~! [X388 : term,X389 : term] : (~((X379 @ id @ X388 @ id) = $true) | ~($true = (X379 @ id @ X389 @ id)) | ($true = (X379 @ id @ (ap @ (sub @ X389 @ id) @ X388) @ id)))) => (! [X390 : subst > term > subst > $o,X391 : term] : (~! [X392 : subst,X393 : subst,X394 : subst,X395 : term] : (~($true = (X390 @ (comp @ X392 @ X394) @ (sub @ X395 @ X394) @ X393)) | ($true = (X390 @ X392 @ X395 @ (comp @ X394 @ X393)))) | ~! [X396 : subst > term > term] : (($true = (X390 @ id @ (lam @ (X396 @ sh @ one)) @ id)) | ~! [X397 : subst,X398 : subst,X399 : term] : ((sub @ (X396 @ X398 @ X399) @ X397) = (X396 @ (comp @ X398 @ X397) @ (sub @ X399 @ X397))) | ~! [X400 : term] : (($true = (X390 @ id @ (X396 @ id @ X400) @ id)) | ~($true = (X390 @ id @ X400 @ id)))) | ($true = (X390 @ id @ (lam @ X391) @ id)) | ~! [X401 : term] : (~((X390 @ id @ X401 @ id) = $true) | ($true = (X390 @ id @ (sub @ X391 @ (push @ X401 @ id)) @ id))) | ~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (($true = (X390 @ (comp @ X403 @ X402) @ (sub @ X405 @ X402) @ X404)) | ~((X390 @ X403 @ X405 @ (comp @ X402 @ X404)) = $true))) => ! [X406 : term,X407 : subst > term > subst > $o] : (($true = (X407 @ id @ X406 @ id)) | ~! [X408 : term] : (~($true = (var @ (sub @ X408 @ id))) | ($true = (X407 @ id @ X408 @ id))) | ~! [X409 : subst > term > term] : (($true = (X407 @ id @ (lam @ (X409 @ sh @ one)) @ id)) | ~! [X410 : term] : (~($true = (X407 @ id @ X410 @ id)) | ($true = (X407 @ id @ (X409 @ id @ X410) @ id))) | ~! [X411 : subst,X412 : subst,X413 : term] : ((sub @ (X409 @ X411 @ X413) @ X412) = (X409 @ (comp @ X411 @ X412) @ (sub @ X413 @ X412)))) | ~! [X414 : subst,X415 : subst,X416 : subst,X417 : term] : (~($true = (X407 @ X415 @ X417 @ (comp @ X414 @ X416))) | ($true = (X407 @ (comp @ X415 @ X414) @ (sub @ X417 @ X414) @ X416))) | ~! [X418 : subst,X419 : term,X420 : subst,X421 : subst] : (($true = (X407 @ X420 @ X419 @ (comp @ X421 @ X418))) | ~($true = (X407 @ (comp @ X420 @ X421) @ (sub @ X419 @ X421) @ X418))) | ~! [X422 : term,X423 : term] : (~($true = (X407 @ id @ X423 @ id)) | ($true = (X407 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id)) | ~($true = (X407 @ id @ X422 @ id)))))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (axvarshift = $true) & (axmap = $true) & (! [X424 : term] : ~! [X425 : subst > term > term] : ~! [X426 : subst,X427 : term] : ((X425 @ X426 @ X427) = (sub @ X424 @ (push @ X427 @ X426))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((hoasinduction = $true) <=> ! [X428 : subst > term > subst > $o,X429 : term] : (~! [X430 : subst > term > term] : (~! [X431 : term,X432 : subst,X433 : subst] : ((sub @ (X430 @ X432 @ X431) @ X433) = (X430 @ (comp @ X432 @ X433) @ (sub @ X431 @ X433))) | ~! [X434 : term] : (~($true = (X428 @ id @ X434 @ id)) | ((X428 @ id @ (X430 @ id @ X434) @ id) = $true)) | ($true = (X428 @ id @ (lam @ (X430 @ sh @ one)) @ id))) | ~! [X435 : term,X436 : term] : (~($true = (X428 @ id @ X436 @ id)) | ~($true = (X428 @ id @ X435 @ id)) | ($true = (X428 @ id @ (ap @ (sub @ X435 @ id) @ X436) @ id))) | ~! [X437 : subst,X438 : subst,X439 : term,X440 : subst] : (~($true = (X428 @ (comp @ X438 @ X440) @ (sub @ X439 @ X440) @ X437)) | ($true = (X428 @ X438 @ X439 @ (comp @ X440 @ X437)))) | ~! [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (~($true = (X428 @ X444 @ X441 @ (comp @ X443 @ X442))) | ($true = (X428 @ (comp @ X444 @ X443) @ (sub @ X441 @ X443) @ X442))) | ($true = (X428 @ id @ X429 @ id)) | ~! [X445 : term] : (~($true = (var @ (sub @ X445 @ id))) | ($true = (X428 @ id @ X445 @ id))))) & ((hoasapinj2_lthm = $true) <=> (! [X446 : term,X447 : term,X448 : term,X449 : term] : (((ap @ X448 @ X446) != (ap @ X449 @ X447)) | (X446 = X447)) => ! [X450 : term,X451 : term,X452 : term,X453 : term] : (((ap @ (sub @ X451 @ id) @ X453) != (ap @ (sub @ X452 @ id) @ X450)) | (X450 = X453)))) & (axassoc = $true) & ! [X454 : d_subst,X455 : d_subst] : (((d2subst @ X454) = (d2subst @ X455)) => (X454 = X455)) & ((shinj = $true) <=> ! [X456 : term,X457 : term] : ((X456 = X457) | ((sub @ X456 @ sh) != (sub @ X457 @ sh)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X458 : term,X459 : subst] : ((sub @ one @ (push @ X458 @ X459)) = X458) => ! [X460 : subst,X461 : term > $o,X462 : term,X463 : term > $o] : (~($true = (X461 @ X462)) | ((X463 @ one) = $true) | ~! [X464 : term] : ((X461 @ (sub @ X464 @ (push @ X462 @ X460))) = (X463 @ X464))))) & (hoaslamnotvar = $true) & ((termmset = $true) <=> ! [X465 : term] : ((sub @ X465 @ id) = X465)) & (pushprop = $true) & ((d2subst @ d_id) = id) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & ((hoasapinj1 = $true) <=> ! [X466 : term,X467 : term,X468 : term,X469 : term] : ((X466 = X469) | ((ap @ (sub @ X466 @ id) @ X467) != (ap @ (sub @ X469 @ id) @ X468)))) & (hoasinduction_lem3b_gthm = $true) & ((induction2 = $true) <=> ! [X470 : term,X471 : term > $o] : (~! [X472 : term,X473 : term] : (~($true = (X471 @ X473)) | ~($true = (X471 @ X472)) | ($true = (X471 @ (ap @ X472 @ X473)))) | ~! [X474 : term] : (($true = (X471 @ X474)) | ~($true = (var @ X474))) | ~! [X475 : term] : (~! [X476 : term] : (($true = (X471 @ (sub @ X475 @ (push @ X476 @ id)))) | ~($true = (X471 @ X476))) | ($true = (X471 @ (lam @ X475)))) | ($true = (X471 @ X470)))) & (! [X477 : term > $o,X478 : term,X479 : term > $o,X480 : term,X481 : subst] : (($true = (X479 @ (sub @ X478 @ (push @ X480 @ X481)))) | ~($true = (X477 @ X478))) <=> (pushprop_lem1 = $true)) & (hoaslamnotap_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (termmset_gthm = $true) & (substmonoid_gthm = $true) & (pushprop_lem3v2 = $true) & ((induction2lem = $true) <=> ! [X482 : subst,X483 : term,X484 : term > $o] : (($true = (X484 @ (sub @ X483 @ X482))) | ~! [X485 : term] : (~! [X486 : term] : (($true = (X484 @ (sub @ X485 @ (push @ X486 @ id)))) | ~($true = (X484 @ X486))) | ($true = (X484 @ (lam @ X485)))) | ~! [X487 : term,X488 : term] : (($true = (X484 @ (ap @ X488 @ X487))) | ~($true = (X484 @ X488)) | ~($true = (X484 @ X487))) | ~! [X489 : term] : (($true = (X484 @ (sub @ X489 @ X482))) | ~($true = (var @ X489))))) & ((hoasinduction_lem3_lthm = $true) <=> (! [X490 : term] : ((sub @ X490 @ id) = X490) => (! [X491 : subst > term > subst > $o,X492 : term] : (($true = (X491 @ id @ (lam @ (sub @ X492 @ (push @ one @ sh))) @ id)) | ~! [X493 : term] : (~($true = (X491 @ id @ X493 @ id)) | ($true = (X491 @ id @ (sub @ X492 @ (push @ X493 @ id)) @ id))) | ~! [X494 : subst > term > term] : (~! [X495 : term,X496 : subst,X497 : subst] : ((X494 @ (comp @ X496 @ X497) @ (sub @ X495 @ X497)) = (sub @ (X494 @ X496 @ X495) @ X497)) | ((X491 @ id @ (lam @ (X494 @ sh @ one)) @ id) = $true) | ~! [X498 : term] : (~($true = (X491 @ id @ X498 @ id)) | ($true = (X491 @ id @ (X494 @ id @ X498) @ id))))) => ! [X499 : term,X500 : subst > term > subst > $o] : (~! [X501 : subst,X502 : subst,X503 : term,X504 : subst] : (~((X500 @ X502 @ X503 @ (comp @ X504 @ X501)) = $true) | ($true = (X500 @ (comp @ X502 @ X504) @ (sub @ X503 @ X504) @ X501))) | ~! [X505 : subst > term > term] : (($true = (X500 @ id @ (lam @ (X505 @ sh @ one)) @ id)) | ~! [X506 : subst,X507 : subst,X508 : term] : ((X505 @ (comp @ X507 @ X506) @ (sub @ X508 @ X506)) = (sub @ (X505 @ X507 @ X508) @ X506)) | ~! [X509 : term] : (~($true = (X500 @ id @ X509 @ id)) | ($true = (X500 @ id @ (X505 @ id @ X509) @ id)))) | ~! [X510 : term,X511 : subst,X512 : subst,X513 : subst] : (~($true = (X500 @ (comp @ X511 @ X513) @ (sub @ X510 @ X513) @ X512)) | ($true = (X500 @ X511 @ X510 @ (comp @ X513 @ X512)))) | ~! [X514 : term] : (($true = (X500 @ id @ (sub @ X499 @ (push @ X514 @ id)) @ id)) | ~($true = (X500 @ id @ X514 @ id))) | ($true = (X500 @ id @ (lam @ X499) @ id)))))) & (hoaslamnotvar_gthm = $true) & ((apinj2 = $true) <=> ! [X515 : term,X516 : term,X517 : term,X518 : term] : ((X515 = X518) | ((ap @ X516 @ X515) != (ap @ X517 @ X518)))) & (ulamvarind = $true) & (! [X519 : term > $o,X520 : term,X521 : subst] : ~! [X522 : term > $o] : ~! [X523 : term] : ((X519 @ (sub @ X523 @ (push @ X520 @ X521))) = (X522 @ X523)) <=> (pushprop_lem0 = $true)) & (induction2_gthm = $true) & (pushprop_lthm = $true) & ! [X524 : d_term,X525 : d_term] : (((d2term @ X525) = (d2term @ X524)) => (X524 = X525)) & ((apinj1 = $true) <=> ! [X526 : term,X527 : term,X528 : term,X529 : term] : ((X526 = X527) | ((ap @ X526 @ X529) != (ap @ X527 @ X528)))) & (hoasapnotvar = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X530 : term,X531 : subst > term > subst > $o] : (~! [X532 : subst > term > term] : (($true = (X531 @ id @ (lam @ (X532 @ sh @ one)) @ id)) | ~! [X533 : term,X534 : subst,X535 : subst] : ((sub @ (X532 @ X535 @ X533) @ X534) = (X532 @ (comp @ X535 @ X534) @ (sub @ X533 @ X534))) | ~! [X536 : term] : (~($true = (X531 @ id @ X536 @ id)) | ($true = (X531 @ id @ (X532 @ id @ X536) @ id)))) | ~! [X537 : term] : (~($true = (X531 @ id @ X537 @ id)) | ((X531 @ id @ (sub @ X530 @ (push @ X537 @ id)) @ id) = $true)) | ($true = (X531 @ id @ (lam @ (sub @ X530 @ (push @ one @ sh))) @ id)))) & ((axshiftcons = $true) <=> ! [X538 : subst,X539 : term] : ((comp @ sh @ (push @ X539 @ X538)) = X538))),
% 5.84/2.07    inference(rectify,[status(thm)],[f8])).
% 5.84/2.07  thf(f8,plain,(
% 5.84/2.07    (hoasinduction_lem3_gthm = $true) & (ulamvarsh = $true) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1v2 = $true) <=> ! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (~($true = (X0 @ X3)) | ~! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | ((X2 @ one) = $true))) & (pushprop_lem2v2 = $true) & ((hoasinduction_lthm_3 = $true) <=> (! [X5 : subst > term > subst > $o] : ~! [X6 : term > $o] : ~! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) => (! [X8 : term,X9 : term > $o] : (~! [X10 : term] : (~($true = (var @ X10)) | ($true = (X9 @ X10))) | ~! [X11 : term] : (~! [X12 : term] : (~($true = (X9 @ X12)) | ($true = (X9 @ (sub @ X11 @ (push @ X12 @ id))))) | ($true = (X9 @ (lam @ X11)))) | ~! [X13 : term,X14 : term] : (~($true = (X9 @ X13)) | ~($true = (X9 @ X14)) | ($true = (X9 @ (ap @ X14 @ X13)))) | ($true = (X9 @ X8))) => (! [X15 : term] : ((sub @ X15 @ id) = X15) => (! [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (~! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) | ~! [X20 : term] : (~($true = (X18 @ X20)) | ($true = (X18 @ (sub @ X17 @ (push @ X20 @ id))))) | ($true = (X18 @ (lam @ X17))) | ~! [X21 : subst > term > term] : (~! [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) = (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ~! [X25 : term] : (~($true = (X16 @ id @ X25 @ id)) | ($true = (X16 @ id @ (X21 @ id @ X25) @ id))) | ($true = (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id)))) => ! [X26 : term,X27 : subst > term > subst > $o] : (~! [X28 : term,X29 : subst,X30 : subst,X31 : subst] : (($true = (X27 @ X31 @ X28 @ (comp @ X30 @ X29))) | ~($true = (X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29))) | ~! [X32 : term,X33 : term] : (~($true = (X27 @ id @ X33 @ id)) | ($true = (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id)) | ~($true = (X27 @ id @ X32 @ id))) | ~! [X34 : term] : (($true = (X27 @ id @ X34 @ id)) | ~($true = (var @ (sub @ X34 @ id)))) | ~! [X35 : subst,X36 : subst,X37 : term,X38 : subst] : (($true = (X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35)) | ~($true = (X27 @ X38 @ X37 @ (comp @ X36 @ X35)))) | ($true = (X27 @ id @ X26 @ id)) | ~! [X39 : subst > term > term] : (~! [X40 : term] : (~($true = (X27 @ id @ X40 @ id)) | ($true = (X27 @ id @ (X39 @ id @ X40) @ id))) | ~! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) | ($true = (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id))))))))) & (hoasapinj2_gthm = $true) & (hoasinduction_lem1 = $true) & (! [X44 : term,X45 : subst > term > subst > $o] : (($true = (X45 @ id @ X44 @ id)) | ~! [X46 : term,X47 : term] : (~($true = (X45 @ id @ X47 @ id)) | ~($true = (X45 @ id @ X46 @ id)) | ($true = (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id))) | ~! [X48 : subst > term > term] : (~! [X49 : term] : (~($true = (X45 @ id @ X49 @ id)) | ($true = (X45 @ id @ (X48 @ id @ X49) @ id))) | ($true = (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id)) | ~! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)))) <=> (hoasinduction_no_psi_cond = $true)) & (induction2lem_gthm = $true) & ((! [X53 : term] : ((sub @ X53 @ id) = X53) => (! [X54 : term,X55 : subst > term > subst > $o] : (~! [X56 : term] : (~((X55 @ id @ X56 @ id) = $true) | ($true = (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id))) | ~! [X57 : subst > term > term] : (~! [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) = (sub @ (X57 @ X58 @ X60) @ X59)) | ($true = (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id)) | ~! [X61 : term] : (($true = (X55 @ id @ (X57 @ id @ X61) @ id)) | ~($true = (X55 @ id @ X61 @ id)))) | ($true = (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id))) => ! [X62 : term,X63 : subst > term > subst > $o] : (($true = (X63 @ id @ (lam @ X62) @ id)) | ~! [X64 : term] : (~((X63 @ id @ X64 @ id) = $true) | ($true = (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id))) | ~! [X65 : subst > term > term] : (~! [X66 : term] : (~($true = (X63 @ id @ X66 @ id)) | ($true = (X63 @ id @ (X65 @ id @ X66) @ id))) | ~! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) | ($true = (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)))))) <=> (hoasinduction_lem3a_lthm = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X70 : term,X71 : subst > term > subst > $o] : (~! [X72 : subst > term > term,X73 : term] : (~! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) | ~! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79)) | ~! [X80 : term] : (($true = (X71 @ id @ (X72 @ id @ X80) @ id)) | ~($true = (X71 @ id @ X80 @ id))) | ($true = (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id))) | ~! [X81 : term] : (($true = (X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id)) | ~($true = (X71 @ id @ X81 @ id))) | ($true = (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & (! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (~! [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (~($true = (X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88)) | ($true = (X82 @ X89 @ X87 @ (comp @ X86 @ X88)))) | ~! [X90 : term] : ((X82 @ id @ X90 @ id) = (X83 @ X90)) | ~($true = (X83 @ X84)) | ~! [X91 : term,X92 : term] : (~($true = (X82 @ id @ X92 @ id)) | ~($true = (X82 @ id @ X91 @ id)) | ($true = (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id))) | ~($true = (X83 @ X85)) | ~! [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (~($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) | ($true = (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84)))) <=> (hoasinduction_lem2v2 = $true)) & (pushprop_lem2v2_gthm = $true) & (axclos = $true) & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & (hoasapnotvar_lthm = $true) & ((! [X99 : term] : ((sub @ X99 @ id) = X99) => (! [X100 : subst,X101 : term,X102 : term > $o] : (($true = (X102 @ (sub @ X101 @ X100))) | ~! [X103 : term] : (~($true = (var @ X103)) | ($true = (X102 @ (sub @ X103 @ X100)))) | ~! [X104 : term,X105 : term] : (~($true = (X102 @ X105)) | ~((X102 @ X104) = $true) | ($true = (X102 @ (ap @ X104 @ X105)))) | ~! [X106 : term] : (~! [X107 : term] : (($true = (X102 @ (sub @ X106 @ (push @ X107 @ id)))) | ~($true = (X102 @ X107))) | ((X102 @ (lam @ X106)) = $true))) => ! [X108 : term,X109 : term > $o] : (~! [X110 : term,X111 : term] : (~($true = (X109 @ X110)) | ($true = (X109 @ (ap @ X111 @ X110))) | ~($true = (X109 @ X111))) | ~! [X112 : term] : (($true = (X109 @ X112)) | ~($true = (var @ X112))) | ($true = (X109 @ X108)) | ~! [X113 : term] : (($true = (X109 @ (lam @ X113))) | ~! [X114 : term] : (~($true = (X109 @ X114)) | ($true = (X109 @ (sub @ X113 @ (push @ X114 @ id))))))))) <=> (induction2_lthm = $true)) & ~(lamnotap = $true) & ((substmonoid_lthm = $true) <=> (! [X115 : subst] : ((comp @ id @ X115) = X115) => (! [X116 : subst] : ((comp @ X116 @ id) = X116) => (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118))))) & ((hoasinduction_lem3 = $true) <=> ! [X119 : term,X120 : subst > term > subst > $o] : (($true = (X120 @ id @ (lam @ X119) @ id)) | ~! [X121 : subst,X122 : subst,X123 : subst,X124 : term] : (($true = (X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122)) | ~($true = (X120 @ X121 @ X124 @ (comp @ X123 @ X122)))) | ~! [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (~($true = (X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125)) | ($true = (X120 @ X126 @ X128 @ (comp @ X127 @ X125)))) | ~! [X129 : subst > term > term] : (~! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) | ($true = (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id)) | ~! [X133 : term] : (((X120 @ id @ (X129 @ id @ X133) @ id) = $true) | ~((X120 @ id @ X133 @ id) = $true))) | ~! [X134 : term] : (($true = (X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id)) | ~($true = (X120 @ id @ X134 @ id))))) & (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)))))))))))) & ! [X140 : d_subst] : (d_id = X140) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((sub @ X141 @ (push @ one @ sh)) != (X142 @ sh @ one))) & (! [X143 : subst > term > term,X144 : term,X145 : term] : (((ap @ (sub @ X144 @ id) @ X145) != (lam @ (X143 @ sh @ one))) | ~! [X146 : term,X147 : subst,X148 : subst] : ((sub @ (X143 @ X148 @ X146) @ X147) = (X143 @ (comp @ X148 @ X147) @ (sub @ X146 @ X147)))) <=> (hoaslamnotap = $true)) & ((induction = $true) <=> ! [X149 : term > $o,X150 : term] : (~! [X151 : term] : (~($true = (X149 @ X151)) | ((X149 @ (lam @ X151)) = $true)) | ~! [X152 : term,X153 : term] : (~($true = (X149 @ X153)) | ($true = (X149 @ (ap @ X152 @ X153))) | ~($true = (X149 @ X152))) | ($true = (X149 @ X150)) | ~! [X154 : term] : (~($true = (var @ X154)) | ($true = (X149 @ X154))))) & (hoaslamnotap_lthm = $true) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoaslaminj = $true) <=> ! [X157 : subst > term > term,X158 : subst,X159 : term,X160 : subst > term > term] : (((X157 @ X158 @ X159) = (X160 @ X158 @ X159)) | ~! [X161 : subst,X162 : subst,X163 : term] : ((X157 @ (comp @ X161 @ X162) @ (sub @ X163 @ X162)) = (sub @ (X157 @ X161 @ X163) @ X162)) | ~! [X164 : subst,X165 : subst,X166 : term] : ((X160 @ (comp @ X164 @ X165) @ (sub @ X166 @ X165)) = (sub @ (X160 @ X164 @ X166) @ X165)) | ((lam @ (X157 @ sh @ one)) != (lam @ (X160 @ sh @ one))))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (pushprop_lem2v2_lthm = $true) & (pushprop_lem0_gthm = $true) & ((substmonoid = $true) <=> (! [X170 : subst] : ((comp @ id @ X170) = X170) & ! [X171 : subst] : ((comp @ X171 @ id) = X171))) & (hoasinduction_lem3a_gthm = $true) & (one = (d2term @ d_one)) & ((hoasinduction_lem2 = $true) <=> ! [X172 : term,X173 : term,X174 : subst > term > subst > $o] : (~! [X175 : term,X176 : term] : (~($true = (X174 @ id @ X175 @ id)) | ~($true = (X174 @ id @ X176 @ id)) | ($true = (X174 @ id @ (ap @ (sub @ X175 @ id) @ X176) @ id))) | ($true = (X174 @ id @ (ap @ X172 @ X173) @ id)) | ~! [X177 : subst,X178 : subst,X179 : subst,X180 : term] : (~($true = (X174 @ X177 @ X180 @ (comp @ X179 @ X178))) | ((X174 @ (comp @ X177 @ X179) @ (sub @ X180 @ X179) @ X178) = $true)) | ~! [X181 : subst,X182 : subst,X183 : subst,X184 : term] : (~($true = (X174 @ (comp @ X182 @ X183) @ (sub @ X184 @ X183) @ X181)) | ($true = (X174 @ X182 @ X184 @ (comp @ X183 @ X181)))) | ~($true = (X174 @ id @ X173 @ id)) | ~($true = (X174 @ id @ X172 @ id)))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X185 : term] : ~! [X186 : subst > term > term] : ~! [X187 : term,X188 : subst] : ((sub @ X185 @ (push @ X187 @ X188)) = (X186 @ X188 @ X187))) & ~(ulamvar1 = $true) & (pushprop_lem1v2_gthm = $true) & (! [X189 : subst,X190 : term] : ((sub @ one @ (push @ X190 @ X189)) = X190) <=> (axvarcons = $true)) & (! [X191 : subst > term > subst > $o] : ~! [X192 : term > $o] : ~! [X193 : term] : ((X191 @ id @ X193 @ id) = (X192 @ X193)) <=> (hoasinduction_lem0_lthm = $true)) & (pushprop_lthm_orig = $true) & ((hoasapinj2 = $true) <=> ! [X194 : term,X195 : term,X196 : term,X197 : term] : ((X196 = X197) | ((ap @ (sub @ X195 @ id) @ X197) != (ap @ (sub @ X194 @ id) @ X196)))) & (! [X198 : term,X199 : term] : ((X198 = X199) | ((lam @ X199) != (lam @ X198))) <=> (laminj = $true)) & (hoasinduction_lem2_gthm = $true) & (! [X200 : term > $o,X201 : term,X202 : subst > term > subst > $o] : (~! [X203 : term] : ((X200 @ X203) = (X202 @ id @ X203 @ id)) | ~! [X204 : term] : (~($true = (X200 @ X204)) | ($true = (X200 @ (sub @ X201 @ (push @ X204 @ id))))) | ~! [X205 : subst > term > term] : (($true = (X202 @ id @ (lam @ (X205 @ sh @ one)) @ id)) | ~! [X206 : subst,X207 : subst,X208 : term] : ((sub @ (X205 @ X207 @ X208) @ X206) = (X205 @ (comp @ X207 @ X206) @ (sub @ X208 @ X206))) | ~! [X209 : term] : (~($true = (X202 @ id @ X209 @ id)) | ($true = (X202 @ id @ (X205 @ id @ X209) @ id)))) | ~! [X210 : subst,X211 : subst,X212 : term,X213 : subst] : (~($true = (X202 @ (comp @ X211 @ X213) @ (sub @ X212 @ X213) @ X210)) | ((X202 @ X211 @ X212 @ (comp @ X213 @ X210)) = $true)) | ((X200 @ (lam @ X201)) = $true) | ~! [X214 : term,X215 : subst,X216 : subst,X217 : subst] : (($true = (X202 @ (comp @ X216 @ X215) @ (sub @ X214 @ X215) @ X217)) | ~($true = (X202 @ X216 @ X214 @ (comp @ X215 @ X217))))) <=> (hoasinduction_lem3v2 = $true)) & ((d2subst @ d_id) = sh) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoaslaminj_gthm = $true) & ! [X218 : d_term] : (d_one = X218) & (! [X219 : subst > term > subst > $o] : ~! [X220 : term > $o] : ~! [X221 : term] : ((X220 @ X221) = (X219 @ id @ X221 @ id)) <=> (hoasinduction_lem0 = $true)) & ((axidr = $true) <=> ! [X222 : subst] : ((comp @ X222 @ id) = X222)) & (axabs = $true) & ((! [X223 : term] : ((sub @ X223 @ id) = X223) => (! [X224 : term,X225 : term,X226 : term,X227 : term] : ((X224 = X225) | ((ap @ X224 @ X226) != (ap @ X225 @ X227))) => ! [X228 : term,X229 : term,X230 : term,X231 : term] : (((ap @ (sub @ X229 @ id) @ X231) != (ap @ (sub @ X230 @ id) @ X228)) | (X229 = X230)))) <=> (hoasapinj1_lthm = $true)) & (apnotvar = $true) & ((! [X232 : term] : ((sub @ X232 @ id) = X232) => ! [X233 : subst > term > subst > $o,X234 : term > $o,X235 : term] : (~! [X236 : subst > term > term] : (($true = (X233 @ id @ (lam @ (X236 @ sh @ one)) @ id)) | ~! [X237 : term,X238 : subst,X239 : subst] : ((sub @ (X236 @ X239 @ X237) @ X238) = (X236 @ (comp @ X239 @ X238) @ (sub @ X237 @ X238))) | ~! [X240 : term] : (~($true = (X233 @ id @ X240 @ id)) | ($true = (X233 @ id @ (X236 @ id @ X240) @ id)))) | ~! [X241 : term] : ((X233 @ id @ X241 @ id) = (X234 @ X241)) | ~! [X242 : subst,X243 : term,X244 : subst,X245 : subst] : (~($true = (X233 @ (comp @ X245 @ X242) @ (sub @ X243 @ X242) @ X244)) | ($true = (X233 @ X245 @ X243 @ (comp @ X242 @ X244)))) | ~! [X246 : subst,X247 : subst,X248 : subst,X249 : term] : (~($true = (X233 @ X247 @ X249 @ (comp @ X248 @ X246))) | ($true = (X233 @ (comp @ X247 @ X248) @ (sub @ X249 @ X248) @ X246))) | ~! [X250 : term] : (~($true = (X234 @ X250)) | ($true = (X234 @ (sub @ X235 @ (push @ X250 @ id))))) | ((X234 @ (lam @ X235)) = $true))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X251 : subst,X252 : term] : ((sub @ one @ (push @ X252 @ X251)) = X252) => (! [X253 : term,X254 : subst] : ((comp @ sh @ (push @ X253 @ X254)) = X254) => (! [X255 : term,X256 : term] : (((lam @ X255) != (lam @ X256)) | (X255 = X256)) => ! [X257 : subst > term > term,X258 : subst > term > term,X259 : term,X260 : subst] : (((lam @ (X257 @ sh @ one)) != (lam @ (X258 @ sh @ one))) | ((X258 @ X260 @ X259) = (X257 @ X260 @ X259)) | ~! [X261 : subst,X262 : subst,X263 : term] : ((sub @ (X258 @ X262 @ X263) @ X261) = (X258 @ (comp @ X262 @ X261) @ (sub @ X263 @ X261))) | ~! [X264 : subst,X265 : term,X266 : subst] : ((X257 @ (comp @ X264 @ X266) @ (sub @ X265 @ X266)) = (sub @ (X257 @ X264 @ X265) @ X266))))))) & ((! [X267 : subst > term > subst > $o] : ~! [X268 : term > $o] : ~! [X269 : term] : ((X268 @ X269) = (X267 @ id @ X269 @ id)) => (! [X270 : term > $o,X271 : term] : (~! [X272 : term] : (~! [X273 : term] : (~((X270 @ X273) = $true) | ($true = (X270 @ (sub @ X272 @ (push @ X273 @ id))))) | ($true = (X270 @ (lam @ X272)))) | ($true = (X270 @ X271)) | ~! [X274 : term,X275 : term] : (($true = (X270 @ (ap @ X275 @ X274))) | ~($true = (X270 @ X275)) | ~($true = (X270 @ X274))) | ~! [X276 : term] : (($true = (X270 @ X276)) | ~($true = (var @ X276)))) => (! [X277 : term] : ((sub @ X277 @ id) = X277) => (! [X278 : term,X279 : subst > term > subst > $o,X280 : term > $o] : (~! [X281 : term] : (($true = (X280 @ (sub @ X278 @ (push @ X281 @ id)))) | ~((X280 @ X281) = $true)) | ~! [X282 : term] : ((X279 @ id @ X282 @ id) = (X280 @ X282)) | ~! [X283 : subst > term > term] : (~! [X284 : term] : (~($true = (X279 @ id @ X284 @ id)) | ($true = (X279 @ id @ (X283 @ id @ X284) @ id))) | ~! [X285 : subst,X286 : subst,X287 : term] : ((X283 @ (comp @ X286 @ X285) @ (sub @ X287 @ X285)) = (sub @ (X283 @ X286 @ X287) @ X285)) | ($true = (X279 @ id @ (lam @ (X283 @ sh @ one)) @ id))) | ($true = (X280 @ (lam @ X278)))) => ! [X288 : subst > term > subst > $o,X289 : term] : (~! [X290 : subst > term > term] : (($true = (X288 @ id @ (lam @ (X290 @ sh @ one)) @ id)) | ~! [X291 : subst,X292 : term,X293 : subst] : ((X290 @ (comp @ X293 @ X291) @ (sub @ X292 @ X291)) = (sub @ (X290 @ X293 @ X292) @ X291)) | ~! [X294 : term] : (($true = (X288 @ id @ (X290 @ id @ X294) @ id)) | ~($true = (X288 @ id @ X294 @ id)))) | ($true = (X288 @ id @ X289 @ id)) | ~! [X295 : term,X296 : term] : (~($true = (X288 @ id @ X295 @ id)) | ~((X288 @ id @ X296 @ id) = $true) | ($true = (X288 @ id @ (ap @ (sub @ X295 @ id) @ X296) @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ((! [X297 : term] : ~! [X298 : subst > term > term] : ~! [X299 : subst,X300 : term] : ((sub @ X297 @ (push @ X300 @ X299)) = (X298 @ X299 @ X300)) => (! [X301 : term] : ((sub @ X301 @ id) = X301) => ! [X302 : term,X303 : term > $o,X304 : subst > term > subst > $o] : (~! [X305 : subst > term > term] : (~! [X306 : term,X307 : subst,X308 : subst] : ((X305 @ (comp @ X307 @ X308) @ (sub @ X306 @ X308)) = (sub @ (X305 @ X307 @ X306) @ X308)) | ($true = (X304 @ id @ (lam @ (X305 @ sh @ one)) @ id)) | ~! [X309 : term] : (~($true = (X304 @ id @ X309 @ id)) | ($true = (X304 @ id @ (X305 @ id @ X309) @ id)))) | ~! [X310 : term] : (($true = (X303 @ (sub @ X302 @ (push @ X310 @ id)))) | ~((X303 @ X310) = $true)) | ($true = (X303 @ (lam @ X302))) | ~! [X311 : term] : ((X303 @ X311) = (X304 @ id @ X311 @ id))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (pushprop_lem1_gthm = $true) & ! [X312 : term] : ? [X313 : d_term] : ((d2term @ X313) = X312) & (! [X314 : subst > term > subst > $o,X315 : term] : (~! [X316 : term] : (~($true = (X314 @ id @ X316 @ id)) | ($true = (X314 @ id @ (sub @ X315 @ (push @ X316 @ id)) @ id))) | ($true = (X314 @ id @ (lam @ X315) @ id)) | ~! [X317 : subst > term > term] : (~! [X318 : term] : (($true = (X314 @ id @ (X317 @ id @ X318) @ id)) | ~($true = (X314 @ id @ X318 @ id))) | ($true = (X314 @ id @ (lam @ (X317 @ sh @ one)) @ id)) | ~! [X319 : subst,X320 : subst,X321 : term] : ((X317 @ (comp @ X320 @ X319) @ (sub @ X321 @ X319)) = (sub @ (X317 @ X320 @ X321) @ X319)))) <=> (hoasinduction_lem3a = $true)) & (! [X322 : term] : ~! [X323 : subst > term > term] : ((X323 @ sh @ one) != (sub @ X322 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (hoasinduction_lem2v2_gthm = $true) & (hoasinduction_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X324 : subst,X325 : term > $o,X326 : term] : ~! [X327 : term > $o] : ~! [X328 : term] : ((X327 @ X328) = (X325 @ (sub @ X328 @ (push @ X326 @ X324))))) & (hoasapinj1_gthm = $true) & ~((var @ (d2term @ d_one)) = $true) & ((axscons = $true) <=> ! [X329 : subst] : ((push @ (sub @ one @ X329) @ (comp @ sh @ X329)) = X329)) & ((termmset_lthm = $true) <=> (! [X330 : term] : ((sub @ X330 @ id) = X330) => ! [X331 : term] : ((sub @ X331 @ id) = X331))) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem1_gthm = $true) & ((axvarid = $true) <=> ! [X332 : term] : ((sub @ X332 @ id) = X332)) & (hoasinduction_lem1v2 = $true) & ((! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) => (! [X335 : subst,X336 : term] : ((comp @ sh @ (push @ X336 @ X335)) = X335) => ! [X337 : term > $o,X338 : subst,X339 : term > $o,X340 : term,X341 : term] : (($true = (X337 @ (sub @ X340 @ (push @ X341 @ X338)))) | ~($true = (X339 @ X340))))) <=> (pushprop_lem1_lthm = $true)) & ((axidl = $true) <=> ! [X342 : subst] : ((comp @ id @ X342) = X342)) & ((! [X343 : subst,X344 : term] : ((sub @ one @ (push @ X344 @ X343)) = X344) => (! [X345 : term,X346 : subst] : ((comp @ sh @ (push @ X345 @ X346)) = X346) => (! [X347 : subst] : ((comp @ X347 @ id) = X347) => (! [X348 : term > $o,X349 : term] : (~! [X350 : term] : (~($true = (var @ X350)) | ((X348 @ X350) = $true)) | ~! [X351 : term,X352 : term] : (~($true = (X348 @ X351)) | ~($true = (X348 @ X352)) | ($true = (X348 @ (ap @ X351 @ X352)))) | ($true = (X348 @ X349)) | ~! [X353 : term] : (~($true = (X348 @ X353)) | ((X348 @ (lam @ X353)) = $true))) => ! [X354 : term,X355 : term > $o,X356 : subst] : (~! [X357 : term] : (((X355 @ (lam @ X357)) = $true) | ~! [X358 : term] : (($true = (X355 @ (sub @ X357 @ (push @ X358 @ id)))) | ~($true = (X355 @ X358)))) | ~! [X359 : term] : (~($true = (var @ X359)) | ($true = (X355 @ (sub @ X359 @ X356)))) | ($true = (X355 @ (sub @ X354 @ X356))) | ~! [X360 : term,X361 : term] : (~($true = (X355 @ X360)) | ~((X355 @ X361) = $true) | ($true = (X355 @ (ap @ X361 @ X360))))))))) <=> (induction2lem_lthm = $true)) & (hoasapnotvar_gthm = $true) & (! [X362 : term,X363 : subst > term > subst > $o] : (($true = (X363 @ id @ (lam @ (sub @ X362 @ (push @ one @ sh))) @ id)) | ~! [X364 : subst > term > term] : (~! [X365 : subst,X366 : term,X367 : subst] : ((X364 @ (comp @ X365 @ X367) @ (sub @ X366 @ X367)) = (sub @ (X364 @ X365 @ X366) @ X367)) | ($true = (X363 @ id @ (lam @ (X364 @ sh @ one)) @ id)) | ~! [X368 : term] : (~($true = (X363 @ id @ X368 @ id)) | ($true = (X363 @ id @ (X364 @ id @ X368) @ id)))) | ~! [X369 : term] : (($true = (X363 @ id @ (sub @ X362 @ (push @ X369 @ id)) @ id)) | ~($true = (X363 @ id @ X369 @ id)))) <=> (hoasinduction_lem3aa = $true)) & (hoasinduction_lem1_lthm = $true) & (! [X370 : subst > term > subst > $o,X371 : term,X372 : term > $o] : (~! [X373 : subst > term > term] : (~! [X374 : term,X375 : subst,X376 : subst] : ((sub @ (X373 @ X375 @ X374) @ X376) = (X373 @ (comp @ X375 @ X376) @ (sub @ X374 @ X376))) | ~! [X377 : term] : (~($true = (X370 @ id @ X377 @ id)) | ($true = (X370 @ id @ (X373 @ id @ X377) @ id))) | ($true = (X370 @ id @ (lam @ (X373 @ sh @ one)) @ id))) | ($true = (X372 @ (lam @ X371))) | ~! [X378 : term] : (($true = (X372 @ (sub @ X371 @ (push @ X378 @ id)))) | ~((X372 @ X378) = $true)) | ~! [X379 : term] : ((X370 @ id @ X379 @ id) = (X372 @ X379))) <=> (hoasinduction_lem3v2a = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (lamnotvar = $true) & ((hoasinduction_lthm = $true) <=> (! [X380 : term > $o,X381 : term] : (~! [X382 : term] : (~! [X383 : term] : (($true = (X380 @ (sub @ X382 @ (push @ X383 @ id)))) | ~($true = (X380 @ X383))) | ($true = (X380 @ (lam @ X382)))) | ~! [X384 : term,X385 : term] : (~($true = (X380 @ X385)) | ~($true = (X380 @ X384)) | ((X380 @ (ap @ X385 @ X384)) = $true)) | ~! [X386 : term] : (~($true = (var @ X386)) | ($true = (X380 @ X386))) | ($true = (X380 @ X381))) => (! [X387 : term,X388 : term,X389 : subst > term > subst > $o] : (~! [X390 : subst,X391 : subst,X392 : subst,X393 : term] : (~($true = (X389 @ (comp @ X391 @ X392) @ (sub @ X393 @ X392) @ X390)) | ((X389 @ X391 @ X393 @ (comp @ X392 @ X390)) = $true)) | ~! [X394 : term,X395 : subst,X396 : subst,X397 : subst] : (($true = (X389 @ (comp @ X397 @ X395) @ (sub @ X394 @ X395) @ X396)) | ~((X389 @ X397 @ X394 @ (comp @ X395 @ X396)) = $true)) | ~($true = (X389 @ id @ X388 @ id)) | ($true = (X389 @ id @ (ap @ X388 @ X387) @ id)) | ~($true = (X389 @ id @ X387 @ id)) | ~! [X398 : term,X399 : term] : (~((X389 @ id @ X398 @ id) = $true) | ~($true = (X389 @ id @ X399 @ id)) | ((X389 @ id @ (ap @ (sub @ X399 @ id) @ X398) @ id) = $true))) => (! [X400 : subst > term > subst > $o,X401 : term] : (~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (~((X400 @ (comp @ X402 @ X404) @ (sub @ X405 @ X404) @ X403) = $true) | ($true = (X400 @ X402 @ X405 @ (comp @ X404 @ X403)))) | ~! [X406 : subst > term > term] : (($true = (X400 @ id @ (lam @ (X406 @ sh @ one)) @ id)) | ~! [X407 : subst,X408 : subst,X409 : term] : ((X406 @ (comp @ X408 @ X407) @ (sub @ X409 @ X407)) = (sub @ (X406 @ X408 @ X409) @ X407)) | ~! [X410 : term] : (((X400 @ id @ (X406 @ id @ X410) @ id) = $true) | ~($true = (X400 @ id @ X410 @ id)))) | ($true = (X400 @ id @ (lam @ X401) @ id)) | ~! [X411 : term] : (~($true = (X400 @ id @ X411 @ id)) | ($true = (X400 @ id @ (sub @ X401 @ (push @ X411 @ id)) @ id))) | ~! [X412 : subst,X413 : subst,X414 : subst,X415 : term] : (($true = (X400 @ (comp @ X413 @ X412) @ (sub @ X415 @ X412) @ X414)) | ~($true = (X400 @ X413 @ X415 @ (comp @ X412 @ X414))))) => ! [X416 : term,X417 : subst > term > subst > $o] : (($true = (X417 @ id @ X416 @ id)) | ~! [X418 : term] : (~($true = (var @ (sub @ X418 @ id))) | ($true = (X417 @ id @ X418 @ id))) | ~! [X419 : subst > term > term] : (($true = (X417 @ id @ (lam @ (X419 @ sh @ one)) @ id)) | ~! [X420 : term] : (~($true = (X417 @ id @ X420 @ id)) | ($true = (X417 @ id @ (X419 @ id @ X420) @ id))) | ~! [X421 : subst,X422 : subst,X423 : term] : ((X419 @ (comp @ X421 @ X422) @ (sub @ X423 @ X422)) = (sub @ (X419 @ X421 @ X423) @ X422))) | ~! [X424 : subst,X425 : subst,X426 : subst,X427 : term] : (~($true = (X417 @ X425 @ X427 @ (comp @ X424 @ X426))) | ($true = (X417 @ (comp @ X425 @ X424) @ (sub @ X427 @ X424) @ X426))) | ~! [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (($true = (X417 @ X430 @ X429 @ (comp @ X431 @ X428))) | ~($true = (X417 @ (comp @ X430 @ X431) @ (sub @ X429 @ X431) @ X428))) | ~! [X432 : term,X433 : term] : (~($true = (X417 @ id @ X433 @ id)) | ($true = (X417 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id)) | ~($true = (X417 @ id @ X432 @ id)))))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (axvarshift = $true) & (axmap = $true) & (! [X434 : term] : ~! [X435 : subst > term > term] : ~! [X436 : subst,X437 : term] : ((sub @ X434 @ (push @ X437 @ X436)) = (X435 @ X436 @ X437)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((hoasinduction = $true) <=> ! [X438 : subst > term > subst > $o,X439 : term] : (~! [X440 : subst > term > term] : (~! [X441 : term,X442 : subst,X443 : subst] : ((X440 @ (comp @ X442 @ X443) @ (sub @ X441 @ X443)) = (sub @ (X440 @ X442 @ X441) @ X443)) | ~! [X444 : term] : (~($true = (X438 @ id @ X444 @ id)) | ($true = (X438 @ id @ (X440 @ id @ X444) @ id))) | ($true = (X438 @ id @ (lam @ (X440 @ sh @ one)) @ id))) | ~! [X445 : term,X446 : term] : (~($true = (X438 @ id @ X446 @ id)) | ~($true = (X438 @ id @ X445 @ id)) | ($true = (X438 @ id @ (ap @ (sub @ X445 @ id) @ X446) @ id))) | ~! [X447 : subst,X448 : subst,X449 : term,X450 : subst] : (~($true = (X438 @ (comp @ X448 @ X450) @ (sub @ X449 @ X450) @ X447)) | ((X438 @ X448 @ X449 @ (comp @ X450 @ X447)) = $true)) | ~! [X451 : term,X452 : subst,X453 : subst,X454 : subst] : (~($true = (X438 @ X454 @ X451 @ (comp @ X453 @ X452))) | ($true = (X438 @ (comp @ X454 @ X453) @ (sub @ X451 @ X453) @ X452))) | ($true = (X438 @ id @ X439 @ id)) | ~! [X455 : term] : (~($true = (var @ (sub @ X455 @ id))) | ((X438 @ id @ X455 @ id) = $true)))) & ((hoasapinj2_lthm = $true) <=> (! [X456 : term,X457 : term,X458 : term,X459 : term] : (((ap @ X459 @ X457) != (ap @ X458 @ X456)) | (X456 = X457)) => ! [X460 : term,X461 : term,X462 : term,X463 : term] : (((ap @ (sub @ X462 @ id) @ X460) != (ap @ (sub @ X461 @ id) @ X463)) | (X460 = X463)))) & (axassoc = $true) & ! [X464 : d_subst,X465 : d_subst] : (((d2subst @ X465) = (d2subst @ X464)) => (X464 = X465)) & ((shinj = $true) <=> ! [X466 : term,X467 : term] : ((X466 = X467) | ((sub @ X466 @ sh) != (sub @ X467 @ sh)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X468 : term,X469 : subst] : ((sub @ one @ (push @ X468 @ X469)) = X468) => ! [X470 : subst,X471 : term > $o,X472 : term,X473 : term > $o] : (~($true = (X471 @ X472)) | ($true = (X473 @ one)) | ~! [X474 : term] : ((X471 @ (sub @ X474 @ (push @ X472 @ X470))) = (X473 @ X474))))) & (hoaslamnotvar = $true) & (! [X475 : term] : ((sub @ X475 @ id) = X475) <=> (termmset = $true)) & (pushprop = $true) & ((d2subst @ d_id) = id) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (! [X476 : term,X477 : term,X478 : term,X479 : term] : (((ap @ (sub @ X476 @ id) @ X477) != (ap @ (sub @ X479 @ id) @ X478)) | (X476 = X479)) <=> (hoasapinj1 = $true)) & (hoasinduction_lem3b_gthm = $true) & ((induction2 = $true) <=> ! [X480 : term,X481 : term > $o] : (~! [X482 : term,X483 : term] : (~($true = (X481 @ X483)) | ~($true = (X481 @ X482)) | ((X481 @ (ap @ X482 @ X483)) = $true)) | ~! [X484 : term] : (($true = (X481 @ X484)) | ~((var @ X484) = $true)) | ~! [X485 : term] : (~! [X486 : term] : (($true = (X481 @ (sub @ X485 @ (push @ X486 @ id)))) | ~($true = (X481 @ X486))) | ($true = (X481 @ (lam @ X485)))) | ($true = (X481 @ X480)))) & (! [X487 : term > $o,X488 : term,X489 : term > $o,X490 : term,X491 : subst] : (($true = (X489 @ (sub @ X488 @ (push @ X490 @ X491)))) | ~($true = (X487 @ X488))) <=> (pushprop_lem1 = $true)) & (hoaslamnotap_gthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (pushprop_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (termmset_gthm = $true) & (substmonoid_gthm = $true) & (pushprop_lem3v2 = $true) & ((induction2lem = $true) <=> ! [X492 : subst,X493 : term,X494 : term > $o] : (($true = (X494 @ (sub @ X493 @ X492))) | ~! [X495 : term] : (~! [X496 : term] : (($true = (X494 @ (sub @ X495 @ (push @ X496 @ id)))) | ~((X494 @ X496) = $true)) | ($true = (X494 @ (lam @ X495)))) | ~! [X497 : term,X498 : term] : (($true = (X494 @ (ap @ X498 @ X497))) | ~($true = (X494 @ X498)) | ~($true = (X494 @ X497))) | ~! [X499 : term] : (($true = (X494 @ (sub @ X499 @ X492))) | ~($true = (var @ X499))))) & ((hoasinduction_lem3_lthm = $true) <=> (! [X500 : term] : ((sub @ X500 @ id) = X500) => (! [X501 : subst > term > subst > $o,X502 : term] : (($true = (X501 @ id @ (lam @ (sub @ X502 @ (push @ one @ sh))) @ id)) | ~! [X503 : term] : (~($true = (X501 @ id @ X503 @ id)) | ($true = (X501 @ id @ (sub @ X502 @ (push @ X503 @ id)) @ id))) | ~! [X504 : subst > term > term] : (~! [X505 : term,X506 : subst,X507 : subst] : ((X504 @ (comp @ X506 @ X507) @ (sub @ X505 @ X507)) = (sub @ (X504 @ X506 @ X505) @ X507)) | ($true = (X501 @ id @ (lam @ (X504 @ sh @ one)) @ id)) | ~! [X508 : term] : (~($true = (X501 @ id @ X508 @ id)) | ($true = (X501 @ id @ (X504 @ id @ X508) @ id))))) => ! [X509 : term,X510 : subst > term > subst > $o] : (~! [X511 : subst,X512 : subst,X513 : term,X514 : subst] : (~($true = (X510 @ X512 @ X513 @ (comp @ X514 @ X511))) | ($true = (X510 @ (comp @ X512 @ X514) @ (sub @ X513 @ X514) @ X511))) | ~! [X515 : subst > term > term] : (($true = (X510 @ id @ (lam @ (X515 @ sh @ one)) @ id)) | ~! [X516 : subst,X517 : subst,X518 : term] : ((sub @ (X515 @ X517 @ X518) @ X516) = (X515 @ (comp @ X517 @ X516) @ (sub @ X518 @ X516))) | ~! [X519 : term] : (~($true = (X510 @ id @ X519 @ id)) | ($true = (X510 @ id @ (X515 @ id @ X519) @ id)))) | ~! [X520 : term,X521 : subst,X522 : subst,X523 : subst] : (~($true = (X510 @ (comp @ X521 @ X523) @ (sub @ X520 @ X523) @ X522)) | ($true = (X510 @ X521 @ X520 @ (comp @ X523 @ X522)))) | ~! [X524 : term] : (($true = (X510 @ id @ (sub @ X509 @ (push @ X524 @ id)) @ id)) | ~($true = (X510 @ id @ X524 @ id))) | ($true = (X510 @ id @ (lam @ X509) @ id)))))) & (hoaslamnotvar_gthm = $true) & ((apinj2 = $true) <=> ! [X525 : term,X526 : term,X527 : term,X528 : term] : ((X525 = X528) | ((ap @ X526 @ X525) != (ap @ X527 @ X528)))) & (ulamvarind = $true) & (! [X529 : term > $o,X530 : term,X531 : subst] : ~! [X532 : term > $o] : ~! [X533 : term] : ((X529 @ (sub @ X533 @ (push @ X530 @ X531))) = (X532 @ X533)) <=> (pushprop_lem0 = $true)) & (induction2_gthm = $true) & (pushprop_lthm = $true) & ! [X534 : d_term,X535 : d_term] : (((d2term @ X535) = (d2term @ X534)) => (X534 = X535)) & ((apinj1 = $true) <=> ! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ X537 @ X538) != (ap @ X536 @ X539)) | (X536 = X537))) & (hoasapnotvar = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X540 : term,X541 : subst > term > subst > $o] : (~! [X542 : subst > term > term] : (($true = (X541 @ id @ (lam @ (X542 @ sh @ one)) @ id)) | ~! [X543 : term,X544 : subst,X545 : subst] : ((X542 @ (comp @ X545 @ X544) @ (sub @ X543 @ X544)) = (sub @ (X542 @ X545 @ X543) @ X544)) | ~! [X546 : term] : (~($true = (X541 @ id @ X546 @ id)) | ($true = (X541 @ id @ (X542 @ id @ X546) @ id)))) | ~! [X547 : term] : (~($true = (X541 @ id @ X547 @ id)) | ($true = (X541 @ id @ (sub @ X540 @ (push @ X547 @ id)) @ id))) | ($true = (X541 @ id @ (lam @ (sub @ X540 @ (push @ one @ sh))) @ id)))) & (! [X548 : subst,X549 : term] : ((comp @ sh @ (push @ X549 @ X548)) = X548) <=> (axshiftcons = $true))),
% 5.84/2.07    inference(fool_elimination,[status(thm)],[f7])).
% 5.84/2.07  thf(f7,plain,(
% 5.84/2.07    hoasinduction_lem3_gthm & ulamvarsh & pushprop_lem3v2_lthm & (pushprop_lem1v2 <=> ! [X0 : term > $o,X1 : subst,X2 : term > $o,X3 : term] : (~(X0 @ X3) | ~! [X4 : term] : ((X2 @ X4) = (X0 @ (sub @ X4 @ (push @ X3 @ X1)))) | (X2 @ one))) & pushprop_lem2v2 & (hoasinduction_lthm_3 <=> (! [X5 : subst > term > subst > $o] : ~! [X6 : term > $o] : ~! [X7 : term] : ((X5 @ id @ X7 @ id) = (X6 @ X7)) => (! [X8 : term,X9 : term > $o] : (~! [X10 : term] : (~(var @ X10) | (X9 @ X10)) | ~! [X11 : term] : (~! [X12 : term] : (~(X9 @ X12) | (X9 @ (sub @ X11 @ (push @ X12 @ id)))) | (X9 @ (lam @ X11))) | ~! [X13 : term,X14 : term] : (~(X9 @ X13) | ~(X9 @ X14) | (X9 @ (ap @ X14 @ X13))) | (X9 @ X8)) => (! [X15 : term] : ((sub @ X15 @ id) = X15) => (! [X16 : subst > term > subst > $o,X17 : term,X18 : term > $o] : (~! [X19 : term] : ((X18 @ X19) = (X16 @ id @ X19 @ id)) | ~! [X20 : term] : (~(X18 @ X20) | (X18 @ (sub @ X17 @ (push @ X20 @ id)))) | (X18 @ (lam @ X17)) | ~! [X21 : subst > term > term] : (~! [X22 : term,X23 : subst,X24 : subst] : ((sub @ (X21 @ X23 @ X22) @ X24) = (X21 @ (comp @ X23 @ X24) @ (sub @ X22 @ X24))) | ~! [X25 : term] : (~(X16 @ id @ X25 @ id) | (X16 @ id @ (X21 @ id @ X25) @ id)) | (X16 @ id @ (lam @ (X21 @ sh @ one)) @ id))) => ! [X26 : term,X27 : subst > term > subst > $o] : (~! [X28 : term,X29 : subst,X30 : subst,X31 : subst] : ((X27 @ X31 @ X28 @ (comp @ X30 @ X29)) | ~(X27 @ (comp @ X31 @ X30) @ (sub @ X28 @ X30) @ X29)) | ~! [X32 : term,X33 : term] : (~(X27 @ id @ X33 @ id) | (X27 @ id @ (ap @ (sub @ X33 @ id) @ X32) @ id) | ~(X27 @ id @ X32 @ id)) | ~! [X34 : term] : ((X27 @ id @ X34 @ id) | ~(var @ (sub @ X34 @ id))) | ~! [X35 : subst,X36 : subst,X37 : term,X38 : subst] : ((X27 @ (comp @ X38 @ X36) @ (sub @ X37 @ X36) @ X35) | ~(X27 @ X38 @ X37 @ (comp @ X36 @ X35))) | (X27 @ id @ X26 @ id) | ~! [X39 : subst > term > term] : (~! [X40 : term] : (~(X27 @ id @ X40 @ id) | (X27 @ id @ (X39 @ id @ X40) @ id)) | ~! [X41 : subst,X42 : term,X43 : subst] : ((sub @ (X39 @ X43 @ X42) @ X41) = (X39 @ (comp @ X43 @ X41) @ (sub @ X42 @ X41))) | (X27 @ id @ (lam @ (X39 @ sh @ one)) @ id)))))))) & hoasapinj2_gthm & hoasinduction_lem1 & (! [X44 : term,X45 : subst > term > subst > $o] : ((X45 @ id @ X44 @ id) | ~! [X46 : term,X47 : term] : (~(X45 @ id @ X47 @ id) | ~(X45 @ id @ X46 @ id) | (X45 @ id @ (ap @ (sub @ X47 @ id) @ X46) @ id)) | ~! [X48 : subst > term > term] : (~! [X49 : term] : (~(X45 @ id @ X49 @ id) | (X45 @ id @ (X48 @ id @ X49) @ id)) | (X45 @ id @ (lam @ (X48 @ sh @ one)) @ id) | ~! [X50 : subst,X51 : term,X52 : subst] : ((X48 @ (comp @ X52 @ X50) @ (sub @ X51 @ X50)) = (sub @ (X48 @ X52 @ X51) @ X50)))) <=> hoasinduction_no_psi_cond) & induction2lem_gthm & ((! [X53 : term] : ((sub @ X53 @ id) = X53) => (! [X54 : term,X55 : subst > term > subst > $o] : (~! [X56 : term] : (~(X55 @ id @ X56 @ id) | (X55 @ id @ (sub @ X54 @ (push @ X56 @ id)) @ id)) | ~! [X57 : subst > term > term] : (~! [X58 : subst,X59 : subst,X60 : term] : ((X57 @ (comp @ X58 @ X59) @ (sub @ X60 @ X59)) = (sub @ (X57 @ X58 @ X60) @ X59)) | (X55 @ id @ (lam @ (X57 @ sh @ one)) @ id) | ~! [X61 : term] : ((X55 @ id @ (X57 @ id @ X61) @ id) | ~(X55 @ id @ X61 @ id))) | (X55 @ id @ (lam @ (sub @ X54 @ (push @ one @ sh))) @ id)) => ! [X62 : term,X63 : subst > term > subst > $o] : ((X63 @ id @ (lam @ X62) @ id) | ~! [X64 : term] : (~(X63 @ id @ X64 @ id) | (X63 @ id @ (sub @ X62 @ (push @ X64 @ id)) @ id)) | ~! [X65 : subst > term > term] : (~! [X66 : term] : (~(X63 @ id @ X66 @ id) | (X63 @ id @ (X65 @ id @ X66) @ id)) | ~! [X67 : term,X68 : subst,X69 : subst] : ((sub @ (X65 @ X69 @ X67) @ X68) = (X65 @ (comp @ X69 @ X68) @ (sub @ X67 @ X68))) | (X63 @ id @ (lam @ (X65 @ sh @ one)) @ id))))) <=> hoasinduction_lem3a_lthm) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X70 : term,X71 : subst > term > subst > $o] : (~! [X72 : subst > term > term,X73 : term] : (~! [X74 : term,X75 : subst,X76 : subst] : ((sub @ X73 @ (push @ (sub @ X74 @ X75) @ (comp @ X76 @ X75))) = (X72 @ (comp @ X76 @ X75) @ (sub @ X74 @ X75))) | ~! [X77 : term,X78 : subst,X79 : subst] : ((sub @ (X72 @ X78 @ X77) @ X79) = (sub @ (sub @ X73 @ (push @ X77 @ X78)) @ X79)) | ~! [X80 : term] : ((X71 @ id @ (X72 @ id @ X80) @ id) | ~(X71 @ id @ X80 @ id)) | (X71 @ id @ (lam @ (X72 @ sh @ one)) @ id)) | ~! [X81 : term] : ((X71 @ id @ (sub @ X70 @ (push @ X81 @ id)) @ id) | ~(X71 @ id @ X81 @ id)) | (X71 @ id @ (lam @ (sub @ X70 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aaa) & (! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (~! [X86 : subst,X87 : term,X88 : subst,X89 : subst] : (~(X82 @ (comp @ X89 @ X86) @ (sub @ X87 @ X86) @ X88) | (X82 @ X89 @ X87 @ (comp @ X86 @ X88))) | ~! [X90 : term] : ((X82 @ id @ X90 @ id) = (X83 @ X90)) | ~(X83 @ X84) | ~! [X91 : term,X92 : term] : (~(X82 @ id @ X92 @ id) | ~(X82 @ id @ X91 @ id) | (X82 @ id @ (ap @ (sub @ X92 @ id) @ X91) @ id)) | ~(X83 @ X85) | ~! [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (~(X82 @ X94 @ X93 @ (comp @ X95 @ X96)) | (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96)) | (X83 @ (ap @ X85 @ X84))) <=> hoasinduction_lem2v2) & pushprop_lem2v2_gthm & axclos & ! [X97 : subst] : ? [X98 : d_subst] : ((d2subst @ X98) = X97) & hoasapnotvar_lthm & ((! [X99 : term] : ((sub @ X99 @ id) = X99) => (! [X100 : subst,X101 : term,X102 : term > $o] : ((X102 @ (sub @ X101 @ X100)) | ~! [X103 : term] : (~(var @ X103) | (X102 @ (sub @ X103 @ X100))) | ~! [X104 : term,X105 : term] : (~(X102 @ X105) | ~(X102 @ X104) | (X102 @ (ap @ X104 @ X105))) | ~! [X106 : term] : (~! [X107 : term] : ((X102 @ (sub @ X106 @ (push @ X107 @ id))) | ~(X102 @ X107)) | (X102 @ (lam @ X106)))) => ! [X108 : term,X109 : term > $o] : (~! [X110 : term,X111 : term] : (~(X109 @ X110) | (X109 @ (ap @ X111 @ X110)) | ~(X109 @ X111)) | ~! [X112 : term] : ((X109 @ X112) | ~(var @ X112)) | (X109 @ X108) | ~! [X113 : term] : ((X109 @ (lam @ X113)) | ~! [X114 : term] : (~(X109 @ X114) | (X109 @ (sub @ X113 @ (push @ X114 @ id)))))))) <=> induction2_lthm) & ~lamnotap & (substmonoid_lthm <=> (! [X115 : subst] : ((comp @ id @ X115) = X115) => (! [X116 : subst] : ((comp @ X116 @ id) = X116) => (! [X117 : subst] : ((comp @ X117 @ id) = X117) & ! [X118 : subst] : ((comp @ id @ X118) = X118))))) & (hoasinduction_lem3 <=> ! [X119 : term,X120 : subst > term > subst > $o] : ((X120 @ id @ (lam @ X119) @ id) | ~! [X121 : subst,X122 : subst,X123 : subst,X124 : term] : ((X120 @ (comp @ X121 @ X123) @ (sub @ X124 @ X123) @ X122) | ~(X120 @ X121 @ X124 @ (comp @ X123 @ X122))) | ~! [X125 : subst,X126 : subst,X127 : subst,X128 : term] : (~(X120 @ (comp @ X126 @ X127) @ (sub @ X128 @ X127) @ X125) | (X120 @ X126 @ X128 @ (comp @ X127 @ X125))) | ~! [X129 : subst > term > term] : (~! [X130 : subst,X131 : subst,X132 : term] : ((sub @ (X129 @ X131 @ X132) @ X130) = (X129 @ (comp @ X131 @ X130) @ (sub @ X132 @ X130))) | (X120 @ id @ (lam @ (X129 @ sh @ one)) @ id) | ~! [X133 : term] : ((X120 @ id @ (X129 @ id @ X133) @ id) | ~(X120 @ id @ X133 @ id))) | ~! [X134 : term] : ((X120 @ id @ (sub @ X119 @ (push @ X134 @ id)) @ id) | ~(X120 @ id @ X134 @ id)))) & (pushprop_p_and_p_prime = (^[X135 : term, X136 : subst, X137 : term > $o, X138 : term > $o] : (! [X139 : term] : ((X137 @ (sub @ X139 @ (push @ X135 @ X136))) = (X138 @ X139))))) & ! [X140 : d_subst] : (d_id = X140) & (hoasinduction_lem3b_lthm <=> ! [X141 : term] : ~! [X142 : subst > term > term] : ((sub @ X141 @ (push @ one @ sh)) != (X142 @ sh @ one))) & (! [X143 : subst > term > term,X144 : term,X145 : term] : (((ap @ (sub @ X144 @ id) @ X145) != (lam @ (X143 @ sh @ one))) | ~! [X146 : term,X147 : subst,X148 : subst] : ((sub @ (X143 @ X148 @ X146) @ X147) = (X143 @ (comp @ X148 @ X147) @ (sub @ X146 @ X147)))) <=> hoaslamnotap) & (induction <=> ! [X149 : term > $o,X150 : term] : (~! [X151 : term] : (~(X149 @ X151) | (X149 @ (lam @ X151))) | ~! [X152 : term,X153 : term] : (~(X149 @ X153) | (X149 @ (ap @ X152 @ X153)) | ~(X149 @ X152)) | (X149 @ X150) | ~! [X154 : term] : (~(var @ X154) | (X149 @ X154)))) & hoaslamnotap_lthm & axapp & (hoaslam = (^[X155 : subst, X156 : subst > term > term] : (d2term @ d_one))) & (hoaslaminj <=> ! [X157 : subst > term > term,X158 : subst,X159 : term,X160 : subst > term > term] : (((X157 @ X158 @ X159) = (X160 @ X158 @ X159)) | ~! [X161 : subst,X162 : subst,X163 : term] : ((X157 @ (comp @ X161 @ X162) @ (sub @ X163 @ X162)) = (sub @ (X157 @ X161 @ X163) @ X162)) | ~! [X164 : subst,X165 : subst,X166 : term] : ((X160 @ (comp @ X164 @ X165) @ (sub @ X166 @ X165)) = (sub @ (X160 @ X164 @ X166) @ X165)) | ((lam @ (X157 @ sh @ one)) != (lam @ (X160 @ sh @ one))))) & (hoasinduction_p_and_p_prime = (^[X167 : subst > term > subst > $o, X168 : term > $o] : (! [X169 : term] : ((X168 @ X169) = (X167 @ id @ X169 @ id))))) & pushprop_lem2v2_lthm & pushprop_lem0_gthm & (substmonoid <=> (! [X170 : subst] : ((comp @ id @ X170) = X170) & ! [X171 : subst] : ((comp @ X171 @ id) = X171))) & hoasinduction_lem3a_gthm & (one = (d2term @ d_one)) & (hoasinduction_lem2 <=> ! [X172 : term,X173 : term,X174 : subst > term > subst > $o] : (~! [X175 : term,X176 : term] : (~(X174 @ id @ X175 @ id) | ~(X174 @ id @ X176 @ id) | (X174 @ id @ (ap @ (sub @ X175 @ id) @ X176) @ id)) | (X174 @ id @ (ap @ X172 @ X173) @ id) | ~! [X177 : subst,X178 : subst,X179 : subst,X180 : term] : (~(X174 @ X177 @ X180 @ (comp @ X179 @ X178)) | (X174 @ (comp @ X177 @ X179) @ (sub @ X180 @ X179) @ X178)) | ~! [X181 : subst,X182 : subst,X183 : subst,X184 : term] : (~(X174 @ (comp @ X182 @ X183) @ (sub @ X184 @ X183) @ X181) | (X174 @ X182 @ X184 @ (comp @ X183 @ X181))) | ~(X174 @ id @ X173 @ id) | ~(X174 @ id @ X172 @ id))) & (hoasinduction_lem3v2_f <=> ! [X185 : term] : ~! [X186 : subst > term > term] : ~! [X187 : term,X188 : subst] : ((sub @ X185 @ (push @ X187 @ X188)) = (X186 @ X188 @ X187))) & ~ulamvar1 & pushprop_lem1v2_gthm & (! [X189 : subst,X190 : term] : ((sub @ one @ (push @ X190 @ X189)) = X190) <=> axvarcons) & (! [X191 : subst > term > subst > $o] : ~! [X192 : term > $o] : ~! [X193 : term] : ((X191 @ id @ X193 @ id) = (X192 @ X193)) <=> hoasinduction_lem0_lthm) & pushprop_lthm_orig & (hoasapinj2 <=> ! [X194 : term,X195 : term,X196 : term,X197 : term] : ((X196 = X197) | ((ap @ (sub @ X195 @ id) @ X197) != (ap @ (sub @ X194 @ id) @ X196)))) & (! [X198 : term,X199 : term] : ((X198 = X199) | ((lam @ X199) != (lam @ X198))) <=> laminj) & hoasinduction_lem2_gthm & (! [X200 : term > $o,X201 : term,X202 : subst > term > subst > $o] : (~! [X203 : term] : ((X200 @ X203) = (X202 @ id @ X203 @ id)) | ~! [X204 : term] : (~(X200 @ X204) | (X200 @ (sub @ X201 @ (push @ X204 @ id)))) | ~! [X205 : subst > term > term] : ((X202 @ id @ (lam @ (X205 @ sh @ one)) @ id) | ~! [X206 : subst,X207 : subst,X208 : term] : ((sub @ (X205 @ X207 @ X208) @ X206) = (X205 @ (comp @ X207 @ X206) @ (sub @ X208 @ X206))) | ~! [X209 : term] : (~(X202 @ id @ X209 @ id) | (X202 @ id @ (X205 @ id @ X209) @ id))) | ~! [X210 : subst,X211 : subst,X212 : term,X213 : subst] : (~(X202 @ (comp @ X211 @ X213) @ (sub @ X212 @ X213) @ X210) | (X202 @ X211 @ X212 @ (comp @ X213 @ X210))) | (X200 @ (lam @ X201)) | ~! [X214 : term,X215 : subst,X216 : subst,X217 : subst] : ((X202 @ (comp @ X216 @ X215) @ (sub @ X214 @ X215) @ X217) | ~(X202 @ X216 @ X214 @ (comp @ X215 @ X217)))) <=> hoasinduction_lem3v2) & ((d2subst @ d_id) = sh) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & hoaslaminj_gthm & ! [X218 : d_term] : (d_one = X218) & (! [X219 : subst > term > subst > $o] : ~! [X220 : term > $o] : ~! [X221 : term] : ((X220 @ X221) = (X219 @ id @ X221 @ id)) <=> hoasinduction_lem0) & (axidr <=> ! [X222 : subst] : ((comp @ X222 @ id) = X222)) & axabs & ((! [X223 : term] : ((sub @ X223 @ id) = X223) => (! [X224 : term,X225 : term,X226 : term,X227 : term] : ((X224 = X225) | ((ap @ X224 @ X226) != (ap @ X225 @ X227))) => ! [X228 : term,X229 : term,X230 : term,X231 : term] : (((ap @ (sub @ X229 @ id) @ X231) != (ap @ (sub @ X230 @ id) @ X228)) | (X229 = X230)))) <=> hoasapinj1_lthm) & apnotvar & ((! [X232 : term] : ((sub @ X232 @ id) = X232) => ! [X233 : subst > term > subst > $o,X234 : term > $o,X235 : term] : (~! [X236 : subst > term > term] : ((X233 @ id @ (lam @ (X236 @ sh @ one)) @ id) | ~! [X237 : term,X238 : subst,X239 : subst] : ((sub @ (X236 @ X239 @ X237) @ X238) = (X236 @ (comp @ X239 @ X238) @ (sub @ X237 @ X238))) | ~! [X240 : term] : (~(X233 @ id @ X240 @ id) | (X233 @ id @ (X236 @ id @ X240) @ id))) | ~! [X241 : term] : ((X233 @ id @ X241 @ id) = (X234 @ X241)) | ~! [X242 : subst,X243 : term,X244 : subst,X245 : subst] : (~(X233 @ (comp @ X245 @ X242) @ (sub @ X243 @ X242) @ X244) | (X233 @ X245 @ X243 @ (comp @ X242 @ X244))) | ~! [X246 : subst,X247 : subst,X248 : subst,X249 : term] : (~(X233 @ X247 @ X249 @ (comp @ X248 @ X246)) | (X233 @ (comp @ X247 @ X248) @ (sub @ X249 @ X248) @ X246)) | ~! [X250 : term] : (~(X234 @ X250) | (X234 @ (sub @ X235 @ (push @ X250 @ id)))) | (X234 @ (lam @ X235)))) <=> hoasinduction_lem3v2_lthm) & (hoaslaminj_lthm <=> (! [X251 : subst,X252 : term] : ((sub @ one @ (push @ X252 @ X251)) = X252) => (! [X253 : term,X254 : subst] : ((comp @ sh @ (push @ X253 @ X254)) = X254) => (! [X255 : term,X256 : term] : (((lam @ X255) != (lam @ X256)) | (X255 = X256)) => ! [X257 : subst > term > term,X258 : subst > term > term,X259 : term,X260 : subst] : (((lam @ (X257 @ sh @ one)) != (lam @ (X258 @ sh @ one))) | ((X258 @ X260 @ X259) = (X257 @ X260 @ X259)) | ~! [X261 : subst,X262 : subst,X263 : term] : ((sub @ (X258 @ X262 @ X263) @ X261) = (X258 @ (comp @ X262 @ X261) @ (sub @ X263 @ X261))) | ~! [X264 : subst,X265 : term,X266 : subst] : ((X257 @ (comp @ X264 @ X266) @ (sub @ X265 @ X266)) = (sub @ (X257 @ X264 @ X265) @ X266))))))) & ((! [X267 : subst > term > subst > $o] : ~! [X268 : term > $o] : ~! [X269 : term] : ((X268 @ X269) = (X267 @ id @ X269 @ id)) => (! [X270 : term > $o,X271 : term] : (~! [X272 : term] : (~! [X273 : term] : (~(X270 @ X273) | (X270 @ (sub @ X272 @ (push @ X273 @ id)))) | (X270 @ (lam @ X272))) | (X270 @ X271) | ~! [X274 : term,X275 : term] : ((X270 @ (ap @ X275 @ X274)) | ~(X270 @ X275) | ~(X270 @ X274)) | ~! [X276 : term] : ((X270 @ X276) | ~(var @ X276))) => (! [X277 : term] : ((sub @ X277 @ id) = X277) => (! [X278 : term,X279 : subst > term > subst > $o,X280 : term > $o] : (~! [X281 : term] : ((X280 @ (sub @ X278 @ (push @ X281 @ id))) | ~(X280 @ X281)) | ~! [X282 : term] : ((X279 @ id @ X282 @ id) = (X280 @ X282)) | ~! [X283 : subst > term > term] : (~! [X284 : term] : (~(X279 @ id @ X284 @ id) | (X279 @ id @ (X283 @ id @ X284) @ id)) | ~! [X285 : subst,X286 : subst,X287 : term] : ((X283 @ (comp @ X286 @ X285) @ (sub @ X287 @ X285)) = (sub @ (X283 @ X286 @ X287) @ X285)) | (X279 @ id @ (lam @ (X283 @ sh @ one)) @ id)) | (X280 @ (lam @ X278))) => ! [X288 : subst > term > subst > $o,X289 : term] : (~! [X290 : subst > term > term] : ((X288 @ id @ (lam @ (X290 @ sh @ one)) @ id) | ~! [X291 : subst,X292 : term,X293 : subst] : ((X290 @ (comp @ X293 @ X291) @ (sub @ X292 @ X291)) = (sub @ (X290 @ X293 @ X292) @ X291)) | ~! [X294 : term] : ((X288 @ id @ (X290 @ id @ X294) @ id) | ~(X288 @ id @ X294 @ id))) | (X288 @ id @ X289 @ id) | ~! [X295 : term,X296 : term] : (~(X288 @ id @ X295 @ id) | ~(X288 @ id @ X296 @ id) | (X288 @ id @ (ap @ (sub @ X295 @ id) @ X296) @ id))))))) <=> hoasinduction_no_psi_cond_lthm) & ((! [X297 : term] : ~! [X298 : subst > term > term] : ~! [X299 : subst,X300 : term] : ((sub @ X297 @ (push @ X300 @ X299)) = (X298 @ X299 @ X300)) => (! [X301 : term] : ((sub @ X301 @ id) = X301) => ! [X302 : term,X303 : term > $o,X304 : subst > term > subst > $o] : (~! [X305 : subst > term > term] : (~! [X306 : term,X307 : subst,X308 : subst] : ((X305 @ (comp @ X307 @ X308) @ (sub @ X306 @ X308)) = (sub @ (X305 @ X307 @ X306) @ X308)) | (X304 @ id @ (lam @ (X305 @ sh @ one)) @ id) | ~! [X309 : term] : (~(X304 @ id @ X309 @ id) | (X304 @ id @ (X305 @ id @ X309) @ id))) | ~! [X310 : term] : ((X303 @ (sub @ X302 @ (push @ X310 @ id))) | ~(X303 @ X310)) | (X303 @ (lam @ X302)) | ~! [X311 : term] : ((X303 @ X311) = (X304 @ id @ X311 @ id))))) <=> hoasinduction_lem3v2a_lthm) & pushprop_lem1_gthm & ! [X312 : term] : ? [X313 : d_term] : ((d2term @ X313) = X312) & (! [X314 : subst > term > subst > $o,X315 : term] : (~! [X316 : term] : (~(X314 @ id @ X316 @ id) | (X314 @ id @ (sub @ X315 @ (push @ X316 @ id)) @ id)) | (X314 @ id @ (lam @ X315) @ id) | ~! [X317 : subst > term > term] : (~! [X318 : term] : ((X314 @ id @ (X317 @ id @ X318) @ id) | ~(X314 @ id @ X318 @ id)) | (X314 @ id @ (lam @ (X317 @ sh @ one)) @ id) | ~! [X319 : subst,X320 : subst,X321 : term] : ((X317 @ (comp @ X320 @ X319) @ (sub @ X321 @ X319)) = (sub @ (X317 @ X320 @ X321) @ X319)))) <=> hoasinduction_lem3a) & (! [X322 : term] : ~! [X323 : subst > term > term] : ((X323 @ sh @ one) != (sub @ X322 @ (push @ one @ sh))) <=> hoasinduction_lem3b) & hoasinduction_lem2v2_gthm & hoasinduction_gthm & (pushprop_lem0_lthm <=> ! [X324 : subst,X325 : term > $o,X326 : term] : ~! [X327 : term > $o] : ~! [X328 : term] : ((X327 @ X328) = (X325 @ (sub @ X328 @ (push @ X326 @ X324))))) & hoasapinj1_gthm & ~(var @ (d2term @ d_one)) & (axscons <=> ! [X329 : subst] : ((push @ (sub @ one @ X329) @ (comp @ sh @ X329)) = X329)) & (termmset_lthm <=> (! [X330 : term] : ((sub @ X330 @ id) = X330) => ! [X331 : term] : ((sub @ X331 @ id) = X331))) & hoaslamnotvar_lthm & hoasinduction_lem1_gthm & (axvarid <=> ! [X332 : term] : ((sub @ X332 @ id) = X332)) & hoasinduction_lem1v2 & ((! [X333 : subst,X334 : term] : ((sub @ one @ (push @ X334 @ X333)) = X334) => (! [X335 : subst,X336 : term] : ((comp @ sh @ (push @ X336 @ X335)) = X335) => ! [X337 : term > $o,X338 : subst,X339 : term > $o,X340 : term,X341 : term] : ((X337 @ (sub @ X340 @ (push @ X341 @ X338))) | ~(X339 @ X340)))) <=> pushprop_lem1_lthm) & (axidl <=> ! [X342 : subst] : ((comp @ id @ X342) = X342)) & ((! [X343 : subst,X344 : term] : ((sub @ one @ (push @ X344 @ X343)) = X344) => (! [X345 : term,X346 : subst] : ((comp @ sh @ (push @ X345 @ X346)) = X346) => (! [X347 : subst] : ((comp @ X347 @ id) = X347) => (! [X348 : term > $o,X349 : term] : (~! [X350 : term] : (~(var @ X350) | (X348 @ X350)) | ~! [X351 : term,X352 : term] : (~(X348 @ X351) | ~(X348 @ X352) | (X348 @ (ap @ X351 @ X352))) | (X348 @ X349) | ~! [X353 : term] : (~(X348 @ X353) | (X348 @ (lam @ X353)))) => ! [X354 : term,X355 : term > $o,X356 : subst] : (~! [X357 : term] : ((X355 @ (lam @ X357)) | ~! [X358 : term] : ((X355 @ (sub @ X357 @ (push @ X358 @ id))) | ~(X355 @ X358))) | ~! [X359 : term] : (~(var @ X359) | (X355 @ (sub @ X359 @ X356))) | (X355 @ (sub @ X354 @ X356)) | ~! [X360 : term,X361 : term] : (~(X355 @ X360) | ~(X355 @ X361) | (X355 @ (ap @ X361 @ X360)))))))) <=> induction2lem_lthm) & hoasapnotvar_gthm & (! [X362 : term,X363 : subst > term > subst > $o] : ((X363 @ id @ (lam @ (sub @ X362 @ (push @ one @ sh))) @ id) | ~! [X364 : subst > term > term] : (~! [X365 : subst,X366 : term,X367 : subst] : ((X364 @ (comp @ X365 @ X367) @ (sub @ X366 @ X367)) = (sub @ (X364 @ X365 @ X366) @ X367)) | (X363 @ id @ (lam @ (X364 @ sh @ one)) @ id) | ~! [X368 : term] : (~(X363 @ id @ X368 @ id) | (X363 @ id @ (X364 @ id @ X368) @ id))) | ~! [X369 : term] : ((X363 @ id @ (sub @ X362 @ (push @ X369 @ id)) @ id) | ~(X363 @ id @ X369 @ id))) <=> hoasinduction_lem3aa) & hoasinduction_lem1_lthm & (! [X370 : subst > term > subst > $o,X371 : term,X372 : term > $o] : (~! [X373 : subst > term > term] : (~! [X374 : term,X375 : subst,X376 : subst] : ((sub @ (X373 @ X375 @ X374) @ X376) = (X373 @ (comp @ X375 @ X376) @ (sub @ X374 @ X376))) | ~! [X377 : term] : (~(X370 @ id @ X377 @ id) | (X370 @ id @ (X373 @ id @ X377) @ id)) | (X370 @ id @ (lam @ (X373 @ sh @ one)) @ id)) | (X372 @ (lam @ X371)) | ~! [X378 : term] : ((X372 @ (sub @ X371 @ (push @ X378 @ id))) | ~(X372 @ X378)) | ~! [X379 : term] : ((X370 @ id @ X379 @ id) = (X372 @ X379))) <=> hoasinduction_lem3v2a) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & lamnotvar & (hoasinduction_lthm <=> (! [X380 : term > $o,X381 : term] : (~! [X382 : term] : (~! [X383 : term] : ((X380 @ (sub @ X382 @ (push @ X383 @ id))) | ~(X380 @ X383)) | (X380 @ (lam @ X382))) | ~! [X384 : term,X385 : term] : (~(X380 @ X385) | ~(X380 @ X384) | (X380 @ (ap @ X385 @ X384))) | ~! [X386 : term] : (~(var @ X386) | (X380 @ X386)) | (X380 @ X381)) => (! [X387 : term,X388 : term,X389 : subst > term > subst > $o] : (~! [X390 : subst,X391 : subst,X392 : subst,X393 : term] : (~(X389 @ (comp @ X391 @ X392) @ (sub @ X393 @ X392) @ X390) | (X389 @ X391 @ X393 @ (comp @ X392 @ X390))) | ~! [X394 : term,X395 : subst,X396 : subst,X397 : subst] : ((X389 @ (comp @ X397 @ X395) @ (sub @ X394 @ X395) @ X396) | ~(X389 @ X397 @ X394 @ (comp @ X395 @ X396))) | ~(X389 @ id @ X388 @ id) | (X389 @ id @ (ap @ X388 @ X387) @ id) | ~(X389 @ id @ X387 @ id) | ~! [X398 : term,X399 : term] : (~(X389 @ id @ X398 @ id) | ~(X389 @ id @ X399 @ id) | (X389 @ id @ (ap @ (sub @ X399 @ id) @ X398) @ id))) => (! [X400 : subst > term > subst > $o,X401 : term] : (~! [X402 : subst,X403 : subst,X404 : subst,X405 : term] : (~(X400 @ (comp @ X402 @ X404) @ (sub @ X405 @ X404) @ X403) | (X400 @ X402 @ X405 @ (comp @ X404 @ X403))) | ~! [X406 : subst > term > term] : ((X400 @ id @ (lam @ (X406 @ sh @ one)) @ id) | ~! [X407 : subst,X408 : subst,X409 : term] : ((X406 @ (comp @ X408 @ X407) @ (sub @ X409 @ X407)) = (sub @ (X406 @ X408 @ X409) @ X407)) | ~! [X410 : term] : ((X400 @ id @ (X406 @ id @ X410) @ id) | ~(X400 @ id @ X410 @ id))) | (X400 @ id @ (lam @ X401) @ id) | ~! [X411 : term] : (~(X400 @ id @ X411 @ id) | (X400 @ id @ (sub @ X401 @ (push @ X411 @ id)) @ id)) | ~! [X412 : subst,X413 : subst,X414 : subst,X415 : term] : ((X400 @ (comp @ X413 @ X412) @ (sub @ X415 @ X412) @ X414) | ~(X400 @ X413 @ X415 @ (comp @ X412 @ X414)))) => ! [X416 : term,X417 : subst > term > subst > $o] : ((X417 @ id @ X416 @ id) | ~! [X418 : term] : (~(var @ (sub @ X418 @ id)) | (X417 @ id @ X418 @ id)) | ~! [X419 : subst > term > term] : ((X417 @ id @ (lam @ (X419 @ sh @ one)) @ id) | ~! [X420 : term] : (~(X417 @ id @ X420 @ id) | (X417 @ id @ (X419 @ id @ X420) @ id)) | ~! [X421 : subst,X422 : subst,X423 : term] : ((X419 @ (comp @ X421 @ X422) @ (sub @ X423 @ X422)) = (sub @ (X419 @ X421 @ X423) @ X422))) | ~! [X424 : subst,X425 : subst,X426 : subst,X427 : term] : (~(X417 @ X425 @ X427 @ (comp @ X424 @ X426)) | (X417 @ (comp @ X425 @ X424) @ (sub @ X427 @ X424) @ X426)) | ~! [X428 : subst,X429 : term,X430 : subst,X431 : subst] : ((X417 @ X430 @ X429 @ (comp @ X431 @ X428)) | ~(X417 @ (comp @ X430 @ X431) @ (sub @ X429 @ X431) @ X428)) | ~! [X432 : term,X433 : term] : (~(X417 @ id @ X433 @ id) | (X417 @ id @ (ap @ (sub @ X433 @ id) @ X432) @ id) | ~(X417 @ id @ X432 @ id))))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & axvarshift & axmap & (! [X434 : term] : ~! [X435 : subst > term > term] : ~! [X436 : subst,X437 : term] : ((sub @ X434 @ (push @ X437 @ X436)) = (X435 @ X436 @ X437)) <=> hoasinduction_lem3v2_f_lthm) & (hoasinduction <=> ! [X438 : subst > term > subst > $o,X439 : term] : (~! [X440 : subst > term > term] : (~! [X441 : term,X442 : subst,X443 : subst] : ((X440 @ (comp @ X442 @ X443) @ (sub @ X441 @ X443)) = (sub @ (X440 @ X442 @ X441) @ X443)) | ~! [X444 : term] : (~(X438 @ id @ X444 @ id) | (X438 @ id @ (X440 @ id @ X444) @ id)) | (X438 @ id @ (lam @ (X440 @ sh @ one)) @ id)) | ~! [X445 : term,X446 : term] : (~(X438 @ id @ X446 @ id) | ~(X438 @ id @ X445 @ id) | (X438 @ id @ (ap @ (sub @ X445 @ id) @ X446) @ id)) | ~! [X447 : subst,X448 : subst,X449 : term,X450 : subst] : (~(X438 @ (comp @ X448 @ X450) @ (sub @ X449 @ X450) @ X447) | (X438 @ X448 @ X449 @ (comp @ X450 @ X447))) | ~! [X451 : term,X452 : subst,X453 : subst,X454 : subst] : (~(X438 @ X454 @ X451 @ (comp @ X453 @ X452)) | (X438 @ (comp @ X454 @ X453) @ (sub @ X451 @ X453) @ X452)) | (X438 @ id @ X439 @ id) | ~! [X455 : term] : (~(var @ (sub @ X455 @ id)) | (X438 @ id @ X455 @ id)))) & (hoasapinj2_lthm <=> (! [X456 : term,X457 : term,X458 : term,X459 : term] : (((ap @ X459 @ X457) != (ap @ X458 @ X456)) | (X456 = X457)) => ! [X460 : term,X461 : term,X462 : term,X463 : term] : (((ap @ (sub @ X462 @ id) @ X460) != (ap @ (sub @ X461 @ id) @ X463)) | (X460 = X463)))) & axassoc & ! [X464 : d_subst,X465 : d_subst] : (((d2subst @ X465) = (d2subst @ X464)) => (X464 = X465)) & (shinj <=> ! [X466 : term,X467 : term] : ((X466 = X467) | ((sub @ X466 @ sh) != (sub @ X467 @ sh)))) & (pushprop_lem1v2_lthm <=> (! [X468 : term,X469 : subst] : ((sub @ one @ (push @ X468 @ X469)) = X468) => ! [X470 : subst,X471 : term > $o,X472 : term,X473 : term > $o] : (~(X471 @ X472) | (X473 @ one) | ~! [X474 : term] : ((X471 @ (sub @ X474 @ (push @ X472 @ X470))) = (X473 @ X474))))) & hoaslamnotvar & (! [X475 : term] : ((sub @ X475 @ id) = X475) <=> termmset) & pushprop & ((d2subst @ d_id) = id) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (! [X476 : term,X477 : term,X478 : term,X479 : term] : (((ap @ (sub @ X476 @ id) @ X477) != (ap @ (sub @ X479 @ id) @ X478)) | (X476 = X479)) <=> hoasapinj1) & hoasinduction_lem3b_gthm & (induction2 <=> ! [X480 : term,X481 : term > $o] : (~! [X482 : term,X483 : term] : (~(X481 @ X483) | ~(X481 @ X482) | (X481 @ (ap @ X482 @ X483))) | ~! [X484 : term] : ((X481 @ X484) | ~(var @ X484)) | ~! [X485 : term] : (~! [X486 : term] : ((X481 @ (sub @ X485 @ (push @ X486 @ id))) | ~(X481 @ X486)) | (X481 @ (lam @ X485))) | (X481 @ X480))) & (! [X487 : term > $o,X488 : term,X489 : term > $o,X490 : term,X491 : subst] : ((X489 @ (sub @ X488 @ (push @ X490 @ X491))) | ~(X487 @ X488)) <=> pushprop_lem1) & hoaslamnotap_gthm & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & hoasinduction_lem1v2_gthm & hoasinduction_lem3v2_gthm & pushprop_gthm & hoasinduction_lem2_lthm & termmset_gthm & substmonoid_gthm & pushprop_lem3v2 & (induction2lem <=> ! [X492 : subst,X493 : term,X494 : term > $o] : ((X494 @ (sub @ X493 @ X492)) | ~! [X495 : term] : (~! [X496 : term] : ((X494 @ (sub @ X495 @ (push @ X496 @ id))) | ~(X494 @ X496)) | (X494 @ (lam @ X495))) | ~! [X497 : term,X498 : term] : ((X494 @ (ap @ X498 @ X497)) | ~(X494 @ X498) | ~(X494 @ X497)) | ~! [X499 : term] : ((X494 @ (sub @ X499 @ X492)) | ~(var @ X499)))) & (hoasinduction_lem3_lthm <=> (! [X500 : term] : ((sub @ X500 @ id) = X500) => (! [X501 : subst > term > subst > $o,X502 : term] : ((X501 @ id @ (lam @ (sub @ X502 @ (push @ one @ sh))) @ id) | ~! [X503 : term] : (~(X501 @ id @ X503 @ id) | (X501 @ id @ (sub @ X502 @ (push @ X503 @ id)) @ id)) | ~! [X504 : subst > term > term] : (~! [X505 : term,X506 : subst,X507 : subst] : ((X504 @ (comp @ X506 @ X507) @ (sub @ X505 @ X507)) = (sub @ (X504 @ X506 @ X505) @ X507)) | (X501 @ id @ (lam @ (X504 @ sh @ one)) @ id) | ~! [X508 : term] : (~(X501 @ id @ X508 @ id) | (X501 @ id @ (X504 @ id @ X508) @ id)))) => ! [X509 : term,X510 : subst > term > subst > $o] : (~! [X511 : subst,X512 : subst,X513 : term,X514 : subst] : (~(X510 @ X512 @ X513 @ (comp @ X514 @ X511)) | (X510 @ (comp @ X512 @ X514) @ (sub @ X513 @ X514) @ X511)) | ~! [X515 : subst > term > term] : ((X510 @ id @ (lam @ (X515 @ sh @ one)) @ id) | ~! [X516 : subst,X517 : subst,X518 : term] : ((sub @ (X515 @ X517 @ X518) @ X516) = (X515 @ (comp @ X517 @ X516) @ (sub @ X518 @ X516))) | ~! [X519 : term] : (~(X510 @ id @ X519 @ id) | (X510 @ id @ (X515 @ id @ X519) @ id))) | ~! [X520 : term,X521 : subst,X522 : subst,X523 : subst] : (~(X510 @ (comp @ X521 @ X523) @ (sub @ X520 @ X523) @ X522) | (X510 @ X521 @ X520 @ (comp @ X523 @ X522))) | ~! [X524 : term] : ((X510 @ id @ (sub @ X509 @ (push @ X524 @ id)) @ id) | ~(X510 @ id @ X524 @ id)) | (X510 @ id @ (lam @ X509) @ id))))) & hoaslamnotvar_gthm & (apinj2 <=> ! [X525 : term,X526 : term,X527 : term,X528 : term] : ((X525 = X528) | ((ap @ X526 @ X525) != (ap @ X527 @ X528)))) & ulamvarind & (! [X529 : term > $o,X530 : term,X531 : subst] : ~! [X532 : term > $o] : ~! [X533 : term] : ((X529 @ (sub @ X533 @ (push @ X530 @ X531))) = (X532 @ X533)) <=> pushprop_lem0) & induction2_gthm & pushprop_lthm & ! [X534 : d_term,X535 : d_term] : (((d2term @ X535) = (d2term @ X534)) => (X534 = X535)) & (apinj1 <=> ! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ X537 @ X538) != (ap @ X536 @ X539)) | (X536 = X537))) & hoasapnotvar & (hoasinduction_lem3aa_lthm <=> ! [X540 : term,X541 : subst > term > subst > $o] : (~! [X542 : subst > term > term] : ((X541 @ id @ (lam @ (X542 @ sh @ one)) @ id) | ~! [X543 : term,X544 : subst,X545 : subst] : ((X542 @ (comp @ X545 @ X544) @ (sub @ X543 @ X544)) = (sub @ (X542 @ X545 @ X543) @ X544)) | ~! [X546 : term] : (~(X541 @ id @ X546 @ id) | (X541 @ id @ (X542 @ id @ X546) @ id))) | ~! [X547 : term] : (~(X541 @ id @ X547 @ id) | (X541 @ id @ (sub @ X540 @ (push @ X547 @ id)) @ id)) | (X541 @ id @ (lam @ (sub @ X540 @ (push @ one @ sh))) @ id))) & (! [X548 : subst,X549 : term] : ((comp @ sh @ (push @ X549 @ X548)) = X548) <=> axshiftcons)),
% 5.84/2.07    inference(rectify,[status(thm)],[f1])).
% 5.84/2.07  thf(f1,axiom,(
% 5.84/2.07    hoasinduction_lem3_gthm & ulamvarsh & pushprop_lem3v2_lthm & (pushprop_lem1v2 <=> ! [X10 : term > $o,X14 : subst,X11 : term > $o,X13 : term] : (~(X10 @ X13) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | (X11 @ one))) & pushprop_lem2v2 & (hoasinduction_lthm_3 <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X22 : term,X10 : term > $o] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | (X10 @ X22)) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X29 : term,X11 : term > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X29 @ (push @ X15 @ id)))) | (X11 @ (lam @ X29)) | ~! [X18 : subst > term > term] : (~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id))) => ! [X28 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : ((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))) | ~! [X25 : subst,X26 : subst,X13 : term,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ X28 @ id) | ~! [X18 : subst > term > term] : (~! [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))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)))))))) & hoasapinj2_gthm & hoasinduction_lem1 & (! [X30 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ X30 @ id) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))) <=> hoasinduction_no_psi_cond) & induction2lem_gthm & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ 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 @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) => ! [X43 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ X43) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [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))))) <=> hoasinduction_lem3a_lthm) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X34 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term,X35 : term] : (~! [X40 : term,X41 : subst,X39 : subst] : ((X18 @ (comp @ X39 @ X41) @ (sub @ X40 @ X41)) = (sub @ X35 @ (push @ (sub @ X40 @ X41) @ (comp @ X39 @ X41)))) | ~! [X37 : term,X36 : subst,X38 : subst] : ((sub @ (X18 @ X36 @ X37) @ X38) = (sub @ (sub @ X35 @ (push @ X37 @ X36)) @ X38)) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : ((X10 @ id @ (sub @ X34 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X34 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aaa) & (! [X10 : subst > term > subst > $o,X11 : term > $o,X45 : term,X44 : term] : (~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~(X11 @ X45) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~(X11 @ X44) | ~! [X13 : term,X14 : subst,X26 : subst,X25 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X11 @ (ap @ X44 @ X45))) <=> hoasinduction_lem2v2) & pushprop_lem2v2_gthm & axclos & ! [X4 : subst] : ? [X5 : d_subst] : ((d2subst @ X5) = X4) & hoasapnotvar_lthm & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X17 : subst,X16 : term,X10 : term > $o] : ((X10 @ (sub @ X16 @ X17)) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13)))) => ! [X22 : term,X10 : term > $o] : (~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | (X10 @ X22) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))))))) <=> induction2_lthm) & ~lamnotap & (substmonoid_lthm <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) & ! [X14 : subst] : ((comp @ id @ X14) = X14))))) & (hoasinduction_lem3 <=> ! [X27 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ X27) @ id) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)))) & (pushprop_p_and_p_prime = (^[X13 : term, X14 : subst, X10 : term > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))))) & ! [X5 : d_subst] : (d_id = X5) & (hoasinduction_lem3b_lthm <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & (! [X18 : subst > term > term,X46 : term,X47 : term] : (((lam @ (X18 @ sh @ one)) != (ap @ (sub @ X46 @ id) @ X47)) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) <=> hoaslamnotap) & (induction <=> ! [X10 : term > $o,X21 : term] : (~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13))) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ X21) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)))) & hoaslamnotap_lthm & axapp & (hoaslam = (^[X8 : subst, X9 : subst > term > term] : (d2term @ d_one))) & (hoaslaminj <=> ! [X18 : subst > term > term,X32 : subst,X33 : term,X31 : subst > term > term] : (((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))))) & (hoasinduction_p_and_p_prime = (^[X10 : subst > term > subst > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))))) & pushprop_lem2v2_lthm & pushprop_lem0_gthm & (substmonoid <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))) & hoasinduction_lem3a_gthm & (one = (d2term @ d_one)) & (hoasinduction_lem2 <=> ! [X23 : term,X24 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~(X10 @ id @ X24 @ id) | ~(X10 @ id @ X23 @ id))) & (hoasinduction_lem3v2_f <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13))) & ~ulamvar1 & pushprop_lem1v2_gthm & (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) <=> axvarcons) & (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) <=> hoasinduction_lem0_lthm) & pushprop_lthm_orig & (hoasapinj2 <=> ! [X13 : term,X15 : term,X19 : term,X20 : term] : ((X19 = X20) | ((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)))) & (! [X15 : term,X13 : term] : ((X13 = X15) | ((lam @ X13) != (lam @ X15))) <=> laminj) & hoasinduction_lem2_gthm & (! [X11 : term > $o,X48 : term,X10 : subst > term > subst > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X25 : subst,X14 : subst,X13 : term,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X11 @ (lam @ X48)) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)))) <=> hoasinduction_lem3v2) & ((d2subst @ d_id) = sh) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & hoaslaminj_gthm & ! [X1 : d_term] : (d_one = X1) & (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) <=> hoasinduction_lem0) & (axidr <=> ! [X14 : subst] : ((comp @ X14 @ id) = X14)) & axabs & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X13 : term,X15 : term,X19 : term,X20 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X20 : term,X13 : term,X15 : term,X19 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15)))) <=> hoasapinj1_lthm) & apnotvar & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X10 : subst > term > subst > $o,X11 : term > $o,X48 : term] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [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,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | (X11 @ (lam @ X48)))) <=> hoasinduction_lem3v2_lthm) & (hoaslaminj_lthm <=> (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X13 : term,X15 : term] : (((lam @ X13) != (lam @ X15)) | (X13 = X15)) => ! [X31 : subst > term > term,X18 : subst > term > term,X33 : term,X32 : subst] : (((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X25 : subst,X14 : subst,X13 : term] : ((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)))))))) & ((! [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 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | (X10 @ X22) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X29 : term,X10 : subst > term > subst > $o,X11 : term > $o] : (~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X18 : subst > term > term] : (~! [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)) | (X11 @ (lam @ X29))) => ! [X10 : subst > term > subst > $o,X30 : term] : (~! [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))) | (X10 @ id @ X30 @ id) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id))))))) <=> hoasinduction_no_psi_cond_lthm) & ((! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X29 : term,X11 : term > $o,X10 : subst > term > subst > $o] : (~! [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] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | (X11 @ (lam @ X29)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))))) <=> hoasinduction_lem3v2a_lthm) & pushprop_lem1_gthm & ! [X0 : term] : ? [X1 : d_term] : ((d2term @ X1) = X0) & (! [X10 : subst > term > subst > $o,X43 : term] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ X43) @ 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,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))) <=> hoasinduction_lem3a) & (! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh))) <=> hoasinduction_lem3b) & hoasinduction_lem2v2_gthm & hoasinduction_gthm & (pushprop_lem0_lthm <=> ! [X14 : subst,X10 : term > $o,X13 : term] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))) & hoasapinj1_gthm & ~(var @ (d2term @ d_one)) & (axscons <=> ! [X14 : subst] : ((push @ (sub @ one @ X14) @ (comp @ sh @ X14)) = X14)) & (termmset_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X13 : term] : ((sub @ X13 @ id) = X13))) & hoaslamnotvar_lthm & hoasinduction_lem1_gthm & (axvarid <=> ! [X13 : term] : ((sub @ X13 @ id) = X13)) & hoasinduction_lem1v2 & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => ! [X26 : term > $o,X14 : subst,X10 : term > $o,X13 : term,X15 : term] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13)))) <=> pushprop_lem1_lthm) & (axidl <=> ! [X14 : subst] : ((comp @ id @ X14) = X14)) & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X10 : term > $o,X21 : term] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term,X15 : term] : (~(X10 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15))) | (X10 @ X21) | ~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13)))) => ! [X16 : term,X10 : term > $o,X17 : subst] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | (X10 @ (sub @ X16 @ X17)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15)))))))) <=> induction2lem_lthm) & hoasapnotvar_gthm & (! [X42 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : (~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [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))) <=> hoasinduction_lem3aa) & hoasinduction_lem1_lthm & (! [X10 : subst > term > subst > $o,X29 : term,X11 : term > $o] : (~! [X18 : subst > term > term] : (~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X11 @ (lam @ X29)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) <=> hoasinduction_lem3v2a) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & lamnotvar & (hoasinduction_lthm <=> (! [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 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | (X10 @ X22)) => (! [X24 : term,X23 : term,X10 : subst > term > subst > $o] : (~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term,X26 : subst,X25 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~(X10 @ id @ X23 @ id) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~(X10 @ id @ X24 @ id) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id))) => (! [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))) | ~! [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))) | (X10 @ id @ (lam @ X27) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id)) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)))) => ! [X28 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ X28 @ id) | ~! [X13 : term] : (~(var @ (sub @ X13 @ id)) | (X10 @ id @ X13 @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X25 : subst,X13 : term,X14 : subst,X26 : subst] : ((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))))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & axvarshift & axmap & (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) <=> hoasinduction_lem3v2_f_lthm) & (hoasinduction <=> ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X25 : subst,X14 : subst,X13 : term,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X10 @ id @ X28 @ id) | ~! [X13 : term] : (~(var @ (sub @ X13 @ id)) | (X10 @ id @ X13 @ id)))) & (hoasapinj2_lthm <=> (! [X19 : term,X20 : term,X13 : term,X15 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20)) => ! [X20 : term,X13 : term,X15 : term,X19 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20)))) & axassoc & ! [X6 : d_subst,X7 : d_subst] : (((d2subst @ X6) = (d2subst @ X7)) => (X6 = X7)) & (shinj <=> ! [X15 : term,X13 : term] : ((X13 = X15) | ((sub @ X13 @ sh) != (sub @ X15 @ sh)))) & (pushprop_lem1v2_lthm <=> (! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => ! [X14 : subst,X10 : term > $o,X13 : term,X11 : term > $o] : (~(X10 @ X13) | (X11 @ one) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))))) & hoaslamnotvar & (! [X13 : term] : ((sub @ X13 @ id) = X13) <=> termmset) & pushprop & ((d2subst @ d_id) = id) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (! [X13 : term,X19 : term,X20 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15)) <=> hoasapinj1) & hoasinduction_lem3b_gthm & (induction2 <=> ! [X22 : term,X10 : term > $o] : (~! [X13 : term,X15 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | (X10 @ X22))) & (! [X10 : term > $o,X13 : term,X26 : term > $o,X15 : term,X14 : subst] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13)) <=> pushprop_lem1) & hoaslamnotap_gthm & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & hoasinduction_lem1v2_gthm & hoasinduction_lem3v2_gthm & pushprop_gthm & hoasinduction_lem2_lthm & termmset_gthm & substmonoid_gthm & pushprop_lem3v2 & (induction2lem <=> ! [X17 : subst,X16 : term,X10 : term > $o] : ((X10 @ (sub @ X16 @ X17)) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15)))) & (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 @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)) | ~! [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)))) => ! [X27 : term,X10 : subst > term > subst > $o] : (~! [X25 : subst,X14 : subst,X13 : term,X26 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ 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 @ X13 @ id) | (X10 @ id @ (X18 @ 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))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ X27) @ id))))) & hoaslamnotvar_gthm & (apinj2 <=> ! [X20 : term,X15 : term,X13 : term,X19 : term] : ((X19 = X20) | ((ap @ X13 @ X19) != (ap @ X15 @ X20)))) & ulamvarind & (! [X10 : term > $o,X13 : term,X14 : subst] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0) & induction2_gthm & pushprop_lthm & ! [X3 : d_term,X2 : d_term] : (((d2term @ X2) = (d2term @ X3)) => (X2 = X3)) & (apinj1 <=> ! [X13 : term,X15 : term,X20 : term,X19 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X13 = X15))) & hoasapnotvar & (hoasinduction_lem3aa_lthm <=> ! [X42 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id))) & (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) <=> axshiftcons)),
% 5.84/2.07    file('/export/starexec/sandbox2/tmp/tmp.1J4YzlxBxw/DTF2THF_24745.p',alg444_1)).
% 5.84/2.07  thf(f1339,plain,(
% 5.84/2.07    ( ! [X213 : term] : (((d2term @ (sK635 @ X213)) = X213)) )),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f767])).
% 5.84/2.07  thf(f783,plain,(
% 5.84/2.07    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true) | ($true = (X0 @ (sK126 @ X0)))) )),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f147])).
% 5.84/2.07  thf(f147,plain,(
% 5.84/2.07    ! [X0 : term > $o] : ((((sP0 @ X0) = $true) | (($true != (X0 @ (ap @ (sK127 @ X0) @ (sK126 @ X0)))) & ($true = (X0 @ (sK127 @ X0))) & ($true = (X0 @ (sK126 @ X0))))) & (! [X3 : term,X4 : term] : (($true = (X0 @ (ap @ X4 @ X3))) | ($true != (X0 @ X4)) | ($true != (X0 @ X3))) | ((sP0 @ X0) != $true)))),
% 5.84/2.07    inference(skolemisation,[status(esa),new_symbols(skolem,[sK126,sK127])],[f145,f146])).
% 5.84/2.07  thf(f146,plain,(
% 5.84/2.07    ! [X0 : term > $o] : (? [X1 : term,X2 : term] : (($true != (X0 @ (ap @ X2 @ X1))) & ($true = (X0 @ X2)) & ($true = (X0 @ X1))) => (($true != (X0 @ (ap @ (sK127 @ X0) @ (sK126 @ X0)))) & ($true = (X0 @ (sK127 @ X0))) & ($true = (X0 @ (sK126 @ X0)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f145,plain,(
% 5.84/2.07    ! [X0 : term > $o] : ((((sP0 @ X0) = $true) | ? [X1 : term,X2 : term] : (($true != (X0 @ (ap @ X2 @ X1))) & ($true = (X0 @ X2)) & ($true = (X0 @ X1)))) & (! [X3 : term,X4 : term] : (($true = (X0 @ (ap @ X4 @ X3))) | ($true != (X0 @ X4)) | ($true != (X0 @ X3))) | ((sP0 @ X0) != $true)))),
% 5.84/2.07    inference(rectify,[status(thm)],[f144])).
% 5.84/2.07  thf(f144,plain,(
% 5.84/2.07    ! [X1 : term > $o] : ((($true = (sP0 @ X1)) | ? [X12 : term,X13 : term] : (($true != (X1 @ (ap @ X13 @ X12))) & ($true = (X1 @ X13)) & ($true = (X1 @ X12)))) & (! [X12 : term,X13 : term] : (($true = (X1 @ (ap @ X13 @ X12))) | ($true != (X1 @ X13)) | ($true != (X1 @ X12))) | ($true != (sP0 @ X1))))),
% 5.84/2.07    inference(nnf_transformation,[status(thm)],[f15])).
% 5.84/2.07  thf(f15,plain,(
% 5.84/2.07    ! [X1 : term > $o] : (($true = (sP0 @ X1)) <=> ! [X12 : term,X13 : term] : (($true = (X1 @ (ap @ X13 @ X12))) | ($true != (X1 @ X13)) | ($true != (X1 @ X12))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f5337,plain,(
% 5.84/2.07    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true) | ($true != (X0 @ (d2term @ d_one)))) )),
% 5.84/2.07    inference(forward_demodulation,[status(thm)],[f785,f3913])).
% 5.84/2.07  thf(f785,plain,(
% 5.84/2.07    ( ! [X0 : term > $o] : (((sP0 @ X0) = $true) | ($true != (X0 @ (ap @ (sK127 @ X0) @ (sK126 @ X0))))) )),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f147])).
% 5.84/2.07  thf(f2253,plain,(
% 5.84/2.07    ($true != (sP0 @ sK115)) | spl660_83),
% 5.84/2.07    inference(avatar_component_clause,[status(thm)],[f2252])).
% 5.84/2.07  thf(f2252,definition,(
% 5.84/2.07    spl660_83 <=> ($true = (sP0 @ sK115))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_83])],[avatar_definition])).
% 5.84/2.07  thf(f4024,plain,(
% 5.84/2.07    spl660_226 | ~spl660_310),
% 5.84/2.07    inference(avatar_contradiction_clause,[status(thm)],[f4023])).
% 5.84/2.07  thf(f4023,plain,(
% 5.84/2.07    $false | (spl660_226 | ~spl660_310)),
% 5.84/2.07    inference(subsumption_resolution,[status(thm)],[f4022,f3928])).
% 5.84/2.07  thf(f3928,plain,(
% 5.84/2.07    ( ! [X0 : term] : (($true = (sK451 @ X0))) ) | ~spl660_310),
% 5.84/2.07    inference(superposition,[status(thm)],[f3213,f3917])).
% 5.84/2.07  thf(f3917,plain,(
% 5.84/2.07    ( ! [X0 : term,X1 : term] : ((X0 = X1)) )),
% 5.84/2.07    inference(superposition,[status(thm)],[f3913,f3913])).
% 5.84/2.07  thf(f3213,plain,(
% 5.84/2.07    ($true = (sK451 @ sK453)) | ~spl660_310),
% 5.84/2.07    inference(avatar_component_clause,[status(thm)],[f3212])).
% 5.84/2.07  thf(f3212,definition,(
% 5.84/2.07    spl660_310 <=> ($true = (sK451 @ sK453))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_310])],[avatar_definition])).
% 5.84/2.07  thf(f4022,plain,(
% 5.84/2.07    ($true != (sK451 @ (d2term @ d_one))) | spl660_226),
% 5.84/2.07    inference(forward_demodulation,[status(thm)],[f2842,f3913])).
% 5.84/2.07  thf(f2842,plain,(
% 5.84/2.07    ($true != (sK451 @ (ap @ sK453 @ sK452))) | spl660_226),
% 5.84/2.07    inference(avatar_component_clause,[status(thm)],[f2841])).
% 5.84/2.07  thf(f2841,definition,(
% 5.84/2.07    spl660_226 <=> ($true = (sK451 @ (ap @ sK453 @ sK452)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_226])],[avatar_definition])).
% 5.84/2.07  thf(f3284,plain,(
% 5.84/2.07    ~spl660_82 | ~spl660_45),
% 5.84/2.07    inference(avatar_split_clause,[status(thm)],[f787,f2108,f2249])).
% 5.84/2.07  thf(f2249,definition,(
% 5.84/2.07    spl660_82 <=> ($true = sP3)),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_82])],[avatar_definition])).
% 5.84/2.07  thf(f2108,definition,(
% 5.84/2.07    spl660_45 <=> (hoasinduction_lem2v2 = $true)),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_45])],[avatar_definition])).
% 5.84/2.07  thf(f787,plain,(
% 5.84/2.07    (hoasinduction_lem2v2 != $true) | ($true != sP3)),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f148])).
% 5.84/2.07  thf(f148,plain,(
% 5.84/2.07    ((hoasinduction_lem2v2 != $true) | ($true != sP3)) & ((hoasinduction_lem2v2 = $true) | ($true = sP3))),
% 5.84/2.07    inference(nnf_transformation,[status(thm)],[f19])).
% 5.84/2.07  thf(f19,plain,(
% 5.84/2.07    ($true = sP3) <~> (hoasinduction_lem2v2 = $true)),
% 5.84/2.07    inference(definition_folding,[status(thm)],[f12,f18,f17,f16,f15])).
% 5.84/2.07  thf(f16,plain,(
% 5.84/2.07    ! [X0 : subst > term > subst > $o] : (($true = (sP1 @ X0)) <=> ? [X10 : term,X11 : term] : (($true = (X0 @ id @ X11 @ id)) & ($true = (X0 @ id @ X10 @ id)) & ($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id))))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f17,plain,(
% 5.84/2.07    ! [X0 : subst > term > subst > $o] : (($true = (sP2 @ X0)) <=> ? [X6 : term,X7 : subst,X8 : subst,X9 : subst] : (($true != (X0 @ X9 @ X6 @ (comp @ X8 @ X7))) & ((X0 @ (comp @ X9 @ X8) @ (sub @ X6 @ X8) @ X7) = $true)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f18,plain,(
% 5.84/2.07    ($true = sP3) <=> ! [X0 : subst > term > subst > $o,X1 : term > $o] : (($true = (sP0 @ X1)) | ? [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true != (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) & ($true = (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) | ($true = (sP2 @ X0)) | ($true = (sP1 @ X0)) | ($true != (hoasinduction_p_and_p_prime @ X0 @ X1)))),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 5.84/2.07  thf(f12,plain,(
% 5.84/2.07    ! [X0 : subst > term > subst > $o,X1 : term > $o] : (! [X12 : term,X13 : term] : (($true = (X1 @ (ap @ X13 @ X12))) | ($true != (X1 @ X13)) | ($true != (X1 @ X12))) | ? [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true != (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) & ($true = (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) | ? [X6 : term,X7 : subst,X8 : subst,X9 : subst] : (($true != (X0 @ X9 @ X6 @ (comp @ X8 @ X7))) & ((X0 @ (comp @ X9 @ X8) @ (sub @ X6 @ X8) @ X7) = $true)) | ? [X10 : term,X11 : term] : (($true = (X0 @ id @ X11 @ id)) & ($true = (X0 @ id @ X10 @ id)) & ($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id))) | ($true != (hoasinduction_p_and_p_prime @ X0 @ X1))) <~> (hoasinduction_lem2v2 = $true)),
% 5.84/2.07    inference(flattening,[status(thm)],[f11])).
% 5.84/2.07  thf(f11,plain,(
% 5.84/2.07    (hoasinduction_lem2v2 = $true) <~> ! [X0 : subst > term > subst > $o,X1 : term > $o] : ((((! [X12 : term,X13 : term] : ((($true = (X1 @ (ap @ X13 @ X12))) | ($true != (X1 @ X12))) | ($true != (X1 @ X13))) | ($true != (hoasinduction_p_and_p_prime @ X0 @ X1))) | ? [X10 : term,X11 : term] : ((($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) & ($true = (X0 @ id @ X11 @ id))) & ($true = (X0 @ id @ X10 @ id)))) | ? [X6 : term,X7 : subst,X8 : subst,X9 : subst] : (($true != (X0 @ X9 @ X6 @ (comp @ X8 @ X7))) & ((X0 @ (comp @ X9 @ X8) @ (sub @ X6 @ X8) @ X7) = $true))) | ? [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true != (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) & ($true = (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))))),
% 5.84/2.07    inference(ennf_transformation,[status(thm)],[f6])).
% 5.84/2.07  thf(f6,plain,(
% 5.84/2.07    ~((hoasinduction_lem2v2 = $true) <=> ! [X0 : subst > term > subst > $o,X1 : term > $o] : (! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true = (X0 @ X5 @ X2 @ (comp @ X4 @ X3))) => ($true = (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3))) => (! [X6 : term,X7 : subst,X8 : subst,X9 : subst] : (((X0 @ (comp @ X9 @ X8) @ (sub @ X6 @ X8) @ X7) = $true) => ($true = (X0 @ X9 @ X6 @ (comp @ X8 @ X7)))) => (! [X10 : term,X11 : term] : (($true = (X0 @ id @ X10 @ id)) => (($true = (X0 @ id @ X11 @ id)) => ($true = (X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)))) => (($true = (hoasinduction_p_and_p_prime @ X0 @ X1)) => ! [X12 : term,X13 : term] : (($true = (X1 @ X13)) => (($true = (X1 @ X12)) => ($true = (X1 @ (ap @ X13 @ X12))))))))))),
% 5.84/2.07    inference(fool_elimination,[status(thm)],[f5])).
% 5.84/2.07  thf(f5,plain,(
% 5.84/2.07    ~(! [X0 : subst > term > subst > $o,X1 : term > $o] : (! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : ((X0 @ X5 @ X2 @ (comp @ X4 @ X3)) => (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) => (! [X6 : term,X7 : subst,X8 : subst,X9 : subst] : ((X0 @ (comp @ X9 @ X8) @ (sub @ X6 @ X8) @ X7) => (X0 @ X9 @ X6 @ (comp @ X8 @ X7))) => (! [X10 : term,X11 : term] : ((X0 @ id @ X10 @ id) => ((X0 @ id @ X11 @ id) => (X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id))) => ((hoasinduction_p_and_p_prime @ X0 @ X1) => ! [X12 : term,X13 : term] : ((X1 @ X13) => ((X1 @ X12) => (X1 @ (ap @ X13 @ X12)))))))) = hoasinduction_lem2v2)),
% 5.84/2.07    inference(rectify,[status(thm)],[f3])).
% 5.84/2.07  thf(f3,negated_conjecture,(
% 5.84/2.07    ~(! [X10 : subst > term > subst > $o,X11 : term > $o] : (! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) => (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) => (! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) => (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) => (! [X13 : term,X15 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (hoasap @ id @ X13 @ id @ X15) @ id))) => ((hoasinduction_p_and_p_prime @ X10 @ X11) => ! [X15 : term,X13 : term] : ((X11 @ X13) => ((X11 @ X15) => (X11 @ (ap @ X13 @ X15)))))))) = hoasinduction_lem2v2)),
% 5.84/2.07    inference(negated_conjecture,[status(cth)],[f2])).
% 5.84/2.07  thf(f2,conjecture,(
% 5.84/2.07    (! [X10 : subst > term > subst > $o,X11 : term > $o] : (! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) => (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) => (! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) => (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) => (! [X13 : term,X15 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (hoasap @ id @ X13 @ id @ X15) @ id))) => ((hoasinduction_p_and_p_prime @ X10 @ X11) => ! [X15 : term,X13 : term] : ((X11 @ X13) => ((X11 @ X15) => (X11 @ (ap @ X13 @ X15)))))))) = hoasinduction_lem2v2)),
% 5.84/2.07    file('/export/starexec/sandbox2/tmp/tmp.1J4YzlxBxw/DTF2THF_24745.p',hoasinduction_lem2v2)).
% 5.84/2.07  thf(f3214,plain,(
% 5.84/2.07    spl660_46 | spl660_310),
% 5.84/2.07    inference(avatar_split_clause,[status(thm)],[f1199,f3212,f2111])).
% 5.84/2.07  thf(f2111,definition,(
% 5.84/2.07    spl660_46 <=> ($true = sP27)),
% 5.84/2.07    introduced(definition,[new_symbols(naming,[spl660_46])],[avatar_definition])).
% 5.84/2.07  thf(f1199,plain,(
% 5.84/2.07    ($true = (sK451 @ sK453)) | ($true = sP27)),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f578])).
% 5.84/2.07  thf(f578,plain,(
% 5.84/2.07    (($true = sP27) | (($true = (sK451 @ sK453)) & ! [X4 : term] : ((sK451 @ X4) = (sK450 @ id @ X4 @ id)) & ($true != (sP25 @ sK450)) & ($true = (sK451 @ sK452)) & ! [X5 : term,X6 : subst,X7 : subst,X8 : subst] : (($true != (sK450 @ X6 @ X5 @ (comp @ X7 @ X8))) | ((sK450 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7) @ X8) = $true)) & ($true != (sK451 @ (ap @ sK453 @ sK452))) & ($true != (sP26 @ sK450)))) & (! [X9 : subst > term > subst > $o,X10 : term > $o,X11 : term,X12 : term] : (($true != (X10 @ X12)) | ((X10 @ (sK454 @ X10 @ X9)) != (X9 @ id @ (sK454 @ X10 @ X9) @ id)) | ($true = (sP25 @ X9)) | ($true != (X10 @ X11)) | (($true = (X9 @ (sK456 @ X9) @ (sK455 @ X9) @ (comp @ (sK457 @ X9) @ (sK458 @ X9)))) & ($true != (X9 @ (comp @ (sK456 @ X9) @ (sK457 @ X9)) @ (sub @ (sK455 @ X9) @ (sK457 @ X9)) @ (sK458 @ X9)))) | ($true = (X10 @ (ap @ X12 @ X11))) | ($true = (sP26 @ X9))) | ($true != sP27))),
% 5.84/2.07    inference(skolemisation,[status(esa),new_symbols(skolem,[sK450,sK451,sK452,sK453,sK454,sK455,sK456,sK457,sK458])],[f574,f577,f576,f575])).
% 5.84/2.07  thf(f575,plain,(
% 5.84/2.07    ? [X0 : subst > term > subst > $o,X1 : term > $o,X2 : term,X3 : term] : (($true = (X1 @ X3)) & ! [X4 : term] : ((X0 @ id @ X4 @ id) = (X1 @ X4)) & ($true != (sP25 @ X0)) & ($true = (X1 @ X2)) & ! [X5 : term,X6 : subst,X7 : subst,X8 : subst] : (($true != (X0 @ X6 @ X5 @ (comp @ X7 @ X8))) | ($true = (X0 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7) @ X8))) & ((X1 @ (ap @ X3 @ X2)) != $true) & ($true != (sP26 @ X0))) => (($true = (sK451 @ sK453)) & ! [X4 : term] : ((sK451 @ X4) = (sK450 @ id @ X4 @ id)) & ($true != (sP25 @ sK450)) & ($true = (sK451 @ sK452)) & ! [X8 : subst,X7 : subst,X6 : subst,X5 : term] : (($true != (sK450 @ X6 @ X5 @ (comp @ X7 @ X8))) | ((sK450 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7) @ X8) = $true)) & ($true != (sK451 @ (ap @ sK453 @ sK452))) & ($true != (sP26 @ sK450)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f576,plain,(
% 5.84/2.07    ! [X9 : subst > term > subst > $o,X10 : term > $o] : (? [X13 : term] : ((X10 @ X13) != (X9 @ id @ X13 @ id)) => ((X10 @ (sK454 @ X10 @ X9)) != (X9 @ id @ (sK454 @ X10 @ X9) @ id)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f577,plain,(
% 5.84/2.07    ! [X9 : subst > term > subst > $o] : (? [X14 : term,X15 : subst,X16 : subst,X17 : subst] : (($true = (X9 @ X15 @ X14 @ (comp @ X16 @ X17))) & ($true != (X9 @ (comp @ X15 @ X16) @ (sub @ X14 @ X16) @ X17))) => (($true = (X9 @ (sK456 @ X9) @ (sK455 @ X9) @ (comp @ (sK457 @ X9) @ (sK458 @ X9)))) & ($true != (X9 @ (comp @ (sK456 @ X9) @ (sK457 @ X9)) @ (sub @ (sK455 @ X9) @ (sK457 @ X9)) @ (sK458 @ X9)))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f574,plain,(
% 5.84/2.07    (($true = sP27) | ? [X0 : subst > term > subst > $o,X1 : term > $o,X2 : term,X3 : term] : (($true = (X1 @ X3)) & ! [X4 : term] : ((X0 @ id @ X4 @ id) = (X1 @ X4)) & ($true != (sP25 @ X0)) & ($true = (X1 @ X2)) & ! [X5 : term,X6 : subst,X7 : subst,X8 : subst] : (($true != (X0 @ X6 @ X5 @ (comp @ X7 @ X8))) | ($true = (X0 @ (comp @ X6 @ X7) @ (sub @ X5 @ X7) @ X8))) & ((X1 @ (ap @ X3 @ X2)) != $true) & ($true != (sP26 @ X0)))) & (! [X9 : subst > term > subst > $o,X10 : term > $o,X11 : term,X12 : term] : (($true != (X10 @ X12)) | ? [X13 : term] : ((X10 @ X13) != (X9 @ id @ X13 @ id)) | ($true = (sP25 @ X9)) | ($true != (X10 @ X11)) | ? [X14 : term,X15 : subst,X16 : subst,X17 : subst] : (($true = (X9 @ X15 @ X14 @ (comp @ X16 @ X17))) & ($true != (X9 @ (comp @ X15 @ X16) @ (sub @ X14 @ X16) @ X17))) | ($true = (X10 @ (ap @ X12 @ X11))) | ($true = (sP26 @ X9))) | ($true != sP27))),
% 5.84/2.07    inference(rectify,[status(thm)],[f573])).
% 5.84/2.07  thf(f573,plain,(
% 5.84/2.07    (($true = sP27) | ? [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (($true = (X83 @ X85)) & ! [X90 : term] : ((X82 @ id @ X90 @ id) = (X83 @ X90)) & ($true != (sP25 @ X82)) & ($true = (X83 @ X84)) & ! [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true != (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) | ($true = (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) & ($true != (X83 @ (ap @ X85 @ X84))) & ($true != (sP26 @ X82)))) & (! [X82 : subst > term > subst > $o,X83 : term > $o,X84 : term,X85 : term] : (($true != (X83 @ X85)) | ? [X90 : term] : ((X82 @ id @ X90 @ id) != (X83 @ X90)) | ($true = (sP25 @ X82)) | ($true != (X83 @ X84)) | ? [X93 : term,X94 : subst,X95 : subst,X96 : subst] : (($true = (X82 @ X94 @ X93 @ (comp @ X95 @ X96))) & ($true != (X82 @ (comp @ X94 @ X95) @ (sub @ X93 @ X95) @ X96))) | ($true = (X83 @ (ap @ X85 @ X84))) | ($true = (sP26 @ X82))) | ($true != sP27))),
% 5.84/2.07    inference(nnf_transformation,[status(thm)],[f43])).
% 5.84/2.07  thf(f2843,plain,(
% 5.84/2.07    ~spl660_226 | spl660_46),
% 5.84/2.07    inference(avatar_split_clause,[status(thm)],[f1194,f2111,f2841])).
% 5.84/2.07  thf(f1194,plain,(
% 5.84/2.07    ($true = sP27) | ($true != (sK451 @ (ap @ sK453 @ sK452)))),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f578])).
% 5.84/2.07  thf(f2254,plain,(
% 5.84/2.07    spl660_82 | ~spl660_83),
% 5.84/2.07    inference(avatar_split_clause,[status(thm)],[f774,f2252,f2249])).
% 5.84/2.07  thf(f774,plain,(
% 5.84/2.07    ($true != (sP0 @ sK115)) | ($true = sP3)),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f135])).
% 5.84/2.07  thf(f135,plain,(
% 5.84/2.07    (($true = sP3) | (($true != (sP0 @ sK115)) & ! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true = (sK114 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) | ($true != (sK114 @ X5 @ X2 @ (comp @ X4 @ X3)))) & ((sP2 @ sK114) != $true) & ($true != (sP1 @ sK114)) & ($true = (hoasinduction_p_and_p_prime @ sK114 @ sK115)))) & (! [X6 : subst > term > subst > $o,X7 : term > $o] : (($true = (sP0 @ X7)) | (($true != (X6 @ (comp @ (sK119 @ X6) @ (sK118 @ X6)) @ (sub @ (sK116 @ X6) @ (sK118 @ X6)) @ (sK117 @ X6))) & ($true = (X6 @ (sK119 @ X6) @ (sK116 @ X6) @ (comp @ (sK118 @ X6) @ (sK117 @ X6))))) | ($true = (sP2 @ X6)) | ($true = (sP1 @ X6)) | ($true != (hoasinduction_p_and_p_prime @ X6 @ X7))) | ($true != sP3))),
% 5.84/2.07    inference(skolemisation,[status(esa),new_symbols(skolem,[sK114,sK115,sK116,sK117,sK118,sK119])],[f132,f134,f133])).
% 5.84/2.07  thf(f133,plain,(
% 5.84/2.07    ? [X0 : subst > term > subst > $o,X1 : term > $o] : (($true != (sP0 @ X1)) & ! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true = (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) | ($true != (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) & ($true != (sP2 @ X0)) & ($true != (sP1 @ X0)) & ($true = (hoasinduction_p_and_p_prime @ X0 @ X1))) => (($true != (sP0 @ sK115)) & ! [X5 : subst,X4 : subst,X3 : subst,X2 : term] : (($true = (sK114 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) | ($true != (sK114 @ X5 @ X2 @ (comp @ X4 @ X3)))) & ((sP2 @ sK114) != $true) & ($true != (sP1 @ sK114)) & ($true = (hoasinduction_p_and_p_prime @ sK114 @ sK115)))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f134,plain,(
% 5.84/2.07    ! [X6 : subst > term > subst > $o] : (? [X8 : term,X9 : subst,X10 : subst,X11 : subst] : (((X6 @ (comp @ X11 @ X10) @ (sub @ X8 @ X10) @ X9) != $true) & ($true = (X6 @ X11 @ X8 @ (comp @ X10 @ X9)))) => (($true != (X6 @ (comp @ (sK119 @ X6) @ (sK118 @ X6)) @ (sub @ (sK116 @ X6) @ (sK118 @ X6)) @ (sK117 @ X6))) & ($true = (X6 @ (sK119 @ X6) @ (sK116 @ X6) @ (comp @ (sK118 @ X6) @ (sK117 @ X6))))))),
% 5.84/2.07    introduced(definition,[],[choice_axiom])).
% 5.84/2.07  thf(f132,plain,(
% 5.84/2.07    (($true = sP3) | ? [X0 : subst > term > subst > $o,X1 : term > $o] : (($true != (sP0 @ X1)) & ! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true = (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) | ($true != (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) & ($true != (sP2 @ X0)) & ($true != (sP1 @ X0)) & ($true = (hoasinduction_p_and_p_prime @ X0 @ X1)))) & (! [X6 : subst > term > subst > $o,X7 : term > $o] : (($true = (sP0 @ X7)) | ? [X8 : term,X9 : subst,X10 : subst,X11 : subst] : (((X6 @ (comp @ X11 @ X10) @ (sub @ X8 @ X10) @ X9) != $true) & ($true = (X6 @ X11 @ X8 @ (comp @ X10 @ X9)))) | ($true = (sP2 @ X6)) | ($true = (sP1 @ X6)) | ($true != (hoasinduction_p_and_p_prime @ X6 @ X7))) | ($true != sP3))),
% 5.84/2.07    inference(rectify,[status(thm)],[f131])).
% 5.84/2.07  thf(f131,plain,(
% 5.84/2.07    (($true = sP3) | ? [X0 : subst > term > subst > $o,X1 : term > $o] : (($true != (sP0 @ X1)) & ! [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true = (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) | ($true != (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) & ($true != (sP2 @ X0)) & ($true != (sP1 @ X0)) & ($true = (hoasinduction_p_and_p_prime @ X0 @ X1)))) & (! [X0 : subst > term > subst > $o,X1 : term > $o] : (($true = (sP0 @ X1)) | ? [X2 : term,X3 : subst,X4 : subst,X5 : subst] : (($true != (X0 @ (comp @ X5 @ X4) @ (sub @ X2 @ X4) @ X3)) & ($true = (X0 @ X5 @ X2 @ (comp @ X4 @ X3)))) | ($true = (sP2 @ X0)) | ($true = (sP1 @ X0)) | ($true != (hoasinduction_p_and_p_prime @ X0 @ X1))) | ($true != sP3))),
% 5.84/2.07    inference(nnf_transformation,[status(thm)],[f18])).
% 5.84/2.07  thf(f2113,plain,(
% 5.84/2.07    spl660_45 | ~spl660_46),
% 5.84/2.07    inference(avatar_split_clause,[status(thm)],[f1355,f2111,f2108])).
% 5.84/2.07  thf(f1355,plain,(
% 5.84/2.07    (hoasinduction_lem2v2 = $true) | ($true != sP27)),
% 5.84/2.07    inference(cnf_transformation,[status(thm)],[f767])).
% 5.84/2.07  % SZS output end Proof for DTF2THF_24745
% 5.84/2.07  % (25062)------------------------------
% 5.84/2.07  % (25062)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.84/2.07  % (25062)Termination reason: Refutation
% 5.84/2.07  
% 5.84/2.07  % (25062)Memory used [KB]: 12792
% 5.84/2.07  % (25062)Time elapsed: 0.199 s
% 5.84/2.07  % (25062)Instructions burned: 544 (million)
% 5.84/2.07  % (25062)------------------------------
% 5.84/2.07  % (25062)------------------------------
% 5.84/2.07  % (25014)Success in time 0.517 s
%------------------------------------------------------------------------------