↑ 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 : n027.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:44 PM UTC 2026

% Result   : Theorem 2.47s 1.94s
% Output   : Refutation 2.47s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   16
%            Number of leaves      :  187
% Syntax   : Number of formulae    :  217 (  12 unt;   0 typ;   0 def)
%            Number of atoms       : 11534 (5461 equ;   0 cnn)
%            Maximal formula atoms :  530 (  53 avg)
%            Number of connectives : 26041 (3082   ~;2779   |;2426   &;16908   @)
%                                         ( 559 <=>; 266  =>;   0  <=;   1 <~>)
%            Maximal formula depth :  188 (  15 avg)
%            Number of types       :    5 (   4 usr)
%            Number of type conns  : 2137 (2137   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  773 ( 769 usr; 300 con; 0-4 aty)
%                                         (  20  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 5713 ( 116   ^;4258   !;1339   ?;5713   :)

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

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

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

thf(func_def_146,type,
    sP5: ( term > $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_155,type,
    sP14: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

thf(func_def_165,type,
    sP24: ( subst > term > subst > $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_168,type,
    sP27: ( term > $o ) > $o ).

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

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

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

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

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

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

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

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

thf(func_def_184,type,
    sP43: ( term > $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_188,type,
    sP47: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_222,type,
    sP81: ( term > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_243,type,
    sP102: ( subst > term > subst > $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_248,type,
    sP107: ( subst > term > subst > $o ) > $o ).

thf(func_def_250,type,
    sK109: term ).

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

thf(func_def_252,type,
    sK111: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_271,type,
    sK130: term ).

thf(func_def_272,type,
    sK131: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_293,type,
    sK152: term ).

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

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

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

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

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

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

thf(func_def_300,type,
    sK159: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_323,type,
    sK182: term ).

thf(func_def_324,type,
    sK183: term ).

thf(func_def_325,type,
    sK184: term ).

thf(func_def_326,type,
    sK185: term ).

thf(func_def_327,type,
    sK186: term ).

thf(func_def_328,type,
    sK187: term ).

thf(func_def_329,type,
    sK188: term ).

thf(func_def_330,type,
    sK189: term ).

thf(func_def_331,type,
    sK190: term ).

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

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

thf(func_def_334,type,
    sK193: term ).

thf(func_def_335,type,
    sK194: term > ( term > $o ) > term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_352,type,
    sK211: term ).

thf(func_def_353,type,
    sK212: subst ).

thf(func_def_354,type,
    sK213: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_365,type,
    sK224: term ).

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

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

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

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

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

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

thf(func_def_372,type,
    sK231: term ).

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_384,type,
    sK243: term ).

thf(func_def_385,type,
    sK244: subst ).

thf(func_def_386,type,
    sK245: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_397,type,
    sK256: term ).

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

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

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

thf(func_def_401,type,
    sK260: term ).

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

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

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

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

thf(func_def_406,type,
    sK265: term ).

thf(func_def_407,type,
    sK266: term ).

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

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

thf(func_def_410,type,
    sK269: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_451,type,
    sK310: term ).

thf(func_def_452,type,
    sK311: term ).

thf(func_def_453,type,
    sK312: term ).

thf(func_def_454,type,
    sK313: term ).

thf(func_def_455,type,
    sK314: term ).

thf(func_def_456,type,
    sK315: term ).

thf(func_def_457,type,
    sK316: term ).

thf(func_def_458,type,
    sK317: term ).

thf(func_def_459,type,
    sK318: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_483,type,
    sK342: subst ).

thf(func_def_484,type,
    sK343: term ).

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

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

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

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

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

thf(func_def_490,type,
    sK349: subst ).

thf(func_def_491,type,
    sK350: subst ).

thf(func_def_492,type,
    sK351: subst ).

thf(func_def_493,type,
    sK352: subst ).

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

thf(func_def_495,type,
    sK354: term ).

thf(func_def_496,type,
    sK355: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_507,type,
    sK366: term ).

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

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

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

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

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

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

thf(func_def_514,type,
    sK373: term ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_527,type,
    sK386: term ).

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

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

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

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

thf(func_def_532,type,
    sK391: term ).

thf(func_def_533,type,
    sK392: term ).

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

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

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

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

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

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

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

thf(func_def_541,type,
    sK400: ( subst > term > term ) > term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_560,type,
    sK419: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_580,type,
    sK439: term ).

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

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

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

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

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

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

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

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

thf(func_def_589,type,
    sK448: term ).

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

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

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

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

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

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

thf(func_def_596,type,
    sK455: subst ).

thf(func_def_597,type,
    sK456: term ).

thf(func_def_598,type,
    sK457: term ).

thf(func_def_599,type,
    sK458: term ).

thf(func_def_600,type,
    sK459: term ).

thf(func_def_601,type,
    sK460: subst ).

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

thf(func_def_603,type,
    sK462: subst ).

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

thf(func_def_605,type,
    sK464: term ).

thf(func_def_606,type,
    sK465: ( subst > term > term ) > subst ).

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

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

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

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

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

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

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

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

thf(func_def_615,type,
    sK474: term ).

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

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

thf(func_def_618,type,
    sK477: term ).

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

thf(func_def_620,type,
    sK479: term ).

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

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

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

thf(func_def_624,type,
    sK483: ( subst > term > term ) > term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_639,type,
    sK498: term ).

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

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

thf(func_def_642,type,
    sK501: term ).

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

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

thf(func_def_645,type,
    sK504: ( subst > term > term ) > subst ).

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

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

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

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

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

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

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

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

thf(func_def_654,type,
    sK513: term ).

thf(func_def_655,type,
    sK514: term ).

thf(func_def_656,type,
    sK515: term ).

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

thf(func_def_658,type,
    sK517: term ).

thf(func_def_659,type,
    sK518: term ).

thf(func_def_660,type,
    sK519: term ).

thf(func_def_661,type,
    sK520: subst ).

thf(func_def_662,type,
    sK521: term ).

thf(func_def_663,type,
    sK522: subst ).

thf(func_def_664,type,
    sK523: subst ).

thf(func_def_665,type,
    sK524: term ).

thf(func_def_666,type,
    sK525: term ).

thf(func_def_667,type,
    sK526: term ).

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

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

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

thf(func_def_671,type,
    sK530: term ).

thf(func_def_672,type,
    sK531: term ).

thf(func_def_673,type,
    sK532: term > d_term ).

thf(func_def_674,type,
    sK533: term ).

thf(func_def_675,type,
    sK534: ( subst > term > term ) > term ).

thf(func_def_676,type,
    sK535: ( subst > term > term ) > subst ).

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

thf(func_def_678,type,
    sK537: term ).

thf(func_def_679,type,
    sK538: term ).

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

thf(func_def_681,type,
    sK540: ( subst > term > term ) > subst ).

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

thf(func_def_683,type,
    sK542: term ).

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

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

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

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

thf(func_def_688,type,
    sK547: term > $o ).

thf(func_def_689,type,
    sK548: term ).

thf(func_def_690,type,
    sK549: subst ).

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

thf(func_def_692,type,
    sK551: term ).

thf(func_def_693,type,
    sK552: subst ).

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

thf(func_def_695,type,
    sK554: term ).

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

thf(func_def_697,type,
    sK556: term ).

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

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

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

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

thf(func_def_702,type,
    sK561: ( subst > term > term ) > term ).

thf(func_def_703,type,
    sK562: ( subst > term > term ) > subst ).

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

thf(func_def_705,type,
    sK564: subst > term > term ).

thf(func_def_706,type,
    sK565: term ).

thf(func_def_707,type,
    sK566: subst ).

thf(func_def_708,type,
    sK567: ( subst > term > term ) > term ).

thf(func_def_709,type,
    sK568: ( subst > term > term ) > subst ).

thf(func_def_710,type,
    sK569: ( subst > term > term ) > subst ).

thf(func_def_711,type,
    sK570: term ).

thf(func_def_712,type,
    sK571: subst > term > term ).

thf(func_def_713,type,
    sK572: term ).

thf(func_def_714,type,
    sK573: term ).

thf(func_def_715,type,
    sK574: term ).

thf(func_def_716,type,
    sK575: term ).

thf(func_def_717,type,
    sK576: term ).

thf(func_def_718,type,
    sK577: term ).

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

thf(func_def_720,type,
    sK579: subst ).

thf(func_def_721,type,
    sK580: ( term > $o ) > term ).

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

thf(func_def_723,type,
    sK582: subst ).

thf(func_def_724,type,
    sK583: subst ).

thf(func_def_725,type,
    sK584: subst ).

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

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

thf(func_def_728,type,
    sK587: term ).

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

thf(func_def_730,type,
    sK589: subst ).

thf(func_def_731,type,
    sK590: term ).

thf(func_def_732,type,
    sK591: term ).

thf(func_def_733,type,
    sK592: term > subst > term > term ).

thf(func_def_734,type,
    sK593: subst ).

thf(func_def_735,type,
    sK594: term > $o ).

thf(func_def_736,type,
    sK595: term ).

thf(func_def_737,type,
    sK596: subst ).

thf(func_def_738,type,
    sK597: term > $o ).

thf(func_def_739,type,
    sK598: term ).

thf(func_def_740,type,
    sK599: subst ).

thf(func_def_741,type,
    sK600: term ).

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

thf(func_def_743,type,
    sK602: term ).

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

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

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

thf(func_def_754,type,
    sK613: term ).

thf(func_def_755,type,
    sK614: subst ).

thf(func_def_756,type,
    sK615: ( term > $o ) > term ).

thf(func_def_757,type,
    sK616: subst > term > ( term > $o ) > term > $o ).

thf(func_def_758,type,
    sK617: term ).

thf(func_def_759,type,
    sK618: subst ).

thf(func_def_760,type,
    sK619: term ).

thf(func_def_761,type,
    sK620: term ).

thf(func_def_762,type,
    sK621: term ).

thf(func_def_763,type,
    sK622: term ).

thf(func_def_764,type,
    sK623: term ).

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

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

thf(func_def_767,type,
    sK626: ( term > $o ) > term ).

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

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

thf(func_def_770,type,
    sK629: term ).

thf(func_def_771,type,
    sK630: subst ).

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

thf(func_def_773,type,
    sK632: subst ).

thf(func_def_774,type,
    sK633: term ).

thf(func_def_775,type,
    sK634: term ).

thf(func_def_776,type,
    sK635: term ).

thf(func_def_777,type,
    sK636: term ).

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

thf(func_def_779,type,
    sK638: term ).

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

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

thf(func_def_782,type,
    sK641: term ).

thf(func_def_785,type,
    ph643: 
      !>[X0: $tType] : X0 ).

thf(f3837,plain,
    $false,
    inference(subsumption_resolution,[status(thm)],[f1489,f3802]) ).

thf(f3802,plain,
    ! [X0: term] :
      ( $true
      = ( var @ X0 ) ),
    inference(superposition,[status(thm)],[f1861,f3801]) ).

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

thf(f3797,plain,
    ! [X38: term] :
      ( ( d2term @ d_one )
      = X38 ),
    inference(forward_demodulation,[status(thm)],[f1444,f1400]) ).

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

thf(f744,plain,
    ( ( ( $true = sP108 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP108 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( ( sub @ sK513 @ id )
       != sK513 )
      | ( $true = sP104 )
      | ( $true = sP103 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X1: term] :
            ( ( sub @ X1 @ id )
            = X1 )
        & ( $true != sP104 )
        & ( $true != sP103 ) ) )
    & ( ! [X2: term,X3: term] :
          ( ( X2 = X3 )
          | ( ( lam @ X3 )
           != ( lam @ X2 ) ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ( ( sK515 != sK514 )
        & ( ( lam @ sK514 )
          = ( lam @ sK515 ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP98 ) )
    & ( ( $true = sP98 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( sP95 != $true ) )
    & ( ( sP95 = $true )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( axclos = $true )
    & ! [X6: subst] :
        ( ( d2subst @ ( sK516 @ X6 ) )
        = X6 )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP90 ) )
    & ( ( $true = sP90 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ! [X8: term,X9: term] :
          ( ( X8 = X9 )
          | ( ( sub @ X9 @ sh )
           != ( sub @ X8 @ sh ) ) )
      | ( shinj != $true ) )
    & ( ( shinj = $true )
      | ( ( sK517 != sK518 )
        & ( ( sub @ sK517 @ sh )
          = ( sub @ sK518 @ sh ) ) ) )
    & ( ( sK519
       != ( sub @ sK519 @ id ) )
      | ( $true = sP88 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X13: term] :
            ( ( sub @ X13 @ id )
            = X13 )
        & ( $true != sP88 ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X14: subst,X15: term] :
            ( ( comp @ sh @ ( push @ X15 @ X14 ) )
            = X14 )
        & ! [X16: subst] :
            ( ( comp @ X16 @ id )
            = X16 )
        & ! [X17: subst,X18: term] :
            ( ( sub @ one @ ( push @ X18 @ X17 ) )
            = X18 )
        & ( $true != sP83 ) ) )
    & ( ( $true = sP84 )
      | ( ( comp @ sh @ ( push @ sK521 @ sK520 ) )
       != sK520 )
      | ( ( comp @ sK522 @ id )
       != sK522 )
      | ( sK524
       != ( sub @ one @ ( push @ sK524 @ sK523 ) ) )
      | ( $true = sP83 )
      | ( induction2lem_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( $true = sP78 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP78 ) )
    & ( ( ( sub @ sK525 @ id )
       != sK525 )
      | ! [X26: subst > term > term] :
          ( ( sub @ sK526 @ ( push @ ( sK528 @ X26 ) @ ( sK527 @ X26 ) ) )
         != ( X26 @ ( sK527 @ X26 ) @ ( sK528 @ X26 ) ) )
      | ( $true = sP76 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X29: term] :
            ( ( sub @ X29 @ id )
            = X29 )
        & ! [X30: term,X32: subst,X33: term] :
            ( ( sub @ X30 @ ( push @ X33 @ X32 ) )
            = ( sK529 @ X30 @ X32 @ X33 ) )
        & ( $true != sP76 ) ) )
    & ( termmset_gthm = $true )
    & ( ( termmset_lthm = $true )
      | ( ! [X34: term] :
            ( ( sub @ X34 @ id )
            = X34 )
        & ( sK530
         != ( sub @ sK530 @ id ) ) ) )
    & ( ( ( sub @ sK531 @ id )
       != sK531 )
      | ! [X37: term] :
          ( ( sub @ X37 @ id )
          = X37 )
      | ( termmset_lthm != $true ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar = $true )
    & ! [X38: term] :
        ( ( d2term @ ( sK532 @ X38 ) )
        = X38 )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ! [X41: subst > term > term] :
          ( ( X41 @ ( sK535 @ X41 ) @ ( sK534 @ X41 ) )
         != ( sub @ sK533 @ ( push @ ( sK534 @ X41 ) @ ( sK535 @ X41 ) ) ) ) )
    & ( ! [X44: term,X46: term,X47: subst] :
          ( ( sK536 @ X44 @ X47 @ X46 )
          = ( sub @ X44 @ ( push @ X46 @ X47 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( termmset = $true )
      | ( ( sub @ sK537 @ id )
       != sK537 ) )
    & ( ! [X49: term] :
          ( ( sub @ X49 @ id )
          = X49 )
      | ( termmset != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ! [X51: subst > term > term] :
          ( ( X51 @ ( sK540 @ X51 ) @ ( sK539 @ X51 ) )
         != ( sub @ sK538 @ ( push @ ( sK539 @ X51 ) @ ( sK540 @ X51 ) ) ) ) )
    & ( ! [X54: term,X56: term,X57: subst] :
          ( ( sub @ X54 @ ( push @ X56 @ X57 ) )
          = ( sK541 @ X54 @ X57 @ X56 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP74 )
        & ! [X58: term] :
            ( ( sub @ X58 @ id )
            = X58 )
        & ( sP73 != $true ) ) )
    & ( ( $true = sP74 )
      | ( sK542
       != ( sub @ sK542 @ id ) )
      | ( sP73 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ! [X61: term > $o] :
          ( ( X61 @ ( sK544 @ X61 ) )
         != ( sK543 @ id @ ( sK544 @ X61 ) @ id ) ) )
    & ( ! [X63: subst > term > subst > $o,X65: term] :
          ( ( X63 @ id @ X65 @ id )
          = ( sK545 @ X63 @ X65 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( sP65 = $true )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( $true = sP66 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( sP65 != $true )
        & ( $true != sP67 )
        & ( $true != sP68 )
        & ( $true != sP66 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP52 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP52 ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ( $true
          = ( sK546 @ sK548 ) )
        & ( $true
         != ( sK547 @ one ) )
        & ! [X70: term] :
            ( ( sK546 @ ( sub @ X70 @ ( push @ sK548 @ sK549 ) ) )
            = ( sK547 @ X70 ) )
        & ! [X71: term,X72: subst] :
            ( ( sub @ one @ ( push @ X71 @ X72 ) )
            = X71 ) ) )
    & ( ! [X73: term > $o,X74: term > $o,X75: term,X76: subst] :
          ( ( $true
           != ( X73 @ X75 ) )
          | ( $true
            = ( X74 @ one ) )
          | ( ( X73 @ ( sub @ ( sK550 @ X76 @ X75 @ X74 @ X73 ) @ ( push @ X75 @ X76 ) ) )
           != ( X74 @ ( sK550 @ X76 @ X75 @ X74 @ X73 ) ) ) )
      | ( sK551
       != ( sub @ one @ ( push @ sK551 @ sK552 ) ) )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP50 != $true ) )
    & ( ( sP50 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( induction2lem_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ! [X80: subst > term > subst > $o,X81: term] :
          ( ( $true
            = ( X80 @ id @ X81 @ id ) )
          | ( $true
            = ( sP46 @ X80 ) )
          | ( $true
            = ( sP45 @ X80 ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ( ( $true
         != ( sK553 @ id @ sK554 @ id ) )
        & ( $true
         != ( sP46 @ sK553 ) )
        & ( $true
         != ( sP45 @ sK553 ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( $true = sP44 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP44 ) )
    & ( ulamvar1 != $true )
    & ( substmonoid_gthm = $true )
    & ! [X84: d_term] : ( d_one = X84 )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP41 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP41 ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP40 ) )
    & ( ( $true = sP40 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP37 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP37 ) )
    & ( apnotvar = $true )
    & ( ! [X85: term] :
          ( ( sub @ X85 @ ( push @ one @ sh ) )
          = ( sK555 @ X85 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ! [X88: subst > term > term] :
          ( ( X88 @ sh @ one )
         != ( sub @ sK556 @ ( push @ one @ sh ) ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ulamvarsh = $true )
    & ( ! [X89: subst > term > term,X90: subst > term > term,X91: term,X92: subst] :
          ( ( ( lam @ ( X89 @ sh @ one ) )
           != ( lam @ ( X90 @ sh @ one ) ) )
          | ( ( sub @ ( X90 @ ( sK559 @ X90 ) @ ( sK558 @ X90 ) ) @ ( sK557 @ X90 ) )
           != ( X90 @ ( comp @ ( sK559 @ X90 ) @ ( sK557 @ X90 ) ) @ ( sub @ ( sK558 @ X90 ) @ ( sK557 @ X90 ) ) ) )
          | ( ( X90 @ X92 @ X91 )
            = ( X89 @ X92 @ X91 ) )
          | ( ( X89 @ ( comp @ ( sK560 @ X89 ) @ ( sK562 @ X89 ) ) @ ( sub @ ( sK561 @ X89 ) @ ( sK562 @ X89 ) ) )
           != ( sub @ ( X89 @ ( sK560 @ X89 ) @ ( sK561 @ X89 ) ) @ ( sK562 @ X89 ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ( ( ( lam @ ( sK564 @ sh @ one ) )
          = ( lam @ ( sK563 @ sh @ one ) ) )
        & ! [X103: subst,X104: term,X105: subst] :
            ( ( sub @ ( sK564 @ X105 @ X104 ) @ X103 )
            = ( sK564 @ ( comp @ X105 @ X103 ) @ ( sub @ X104 @ X103 ) ) )
        & ( ( sK564 @ sK566 @ sK565 )
         != ( sK563 @ sK566 @ sK565 ) )
        & ! [X106: subst,X107: term,X108: subst] :
            ( ( sK563 @ ( comp @ X106 @ X108 ) @ ( sub @ X107 @ X108 ) )
            = ( sub @ ( sK563 @ X106 @ X107 ) @ X108 ) ) ) )
    & ( ! [X109: term,X110: subst > term > term,X111: term] :
          ( ( ( lam @ ( X110 @ sh @ one ) )
           != ( ap @ ( sub @ X111 @ id ) @ X109 ) )
          | ( ( X110 @ ( comp @ ( sK568 @ X110 ) @ ( sK569 @ X110 ) ) @ ( sub @ ( sK567 @ X110 ) @ ( sK569 @ X110 ) ) )
           != ( sub @ ( X110 @ ( sK568 @ X110 ) @ ( sK567 @ X110 ) ) @ ( sK569 @ X110 ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ( ( ( lam @ ( sK571 @ sh @ one ) )
          = ( ap @ ( sub @ sK572 @ id ) @ sK570 ) )
        & ! [X118: term,X119: subst,X120: subst] :
            ( ( sK571 @ ( comp @ X119 @ X120 ) @ ( sub @ X118 @ X120 ) )
            = ( sub @ ( sK571 @ X119 @ X118 ) @ X120 ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( apinj2 = $true )
      | ( ( ( ap @ sK576 @ sK574 )
          = ( ap @ sK575 @ sK573 ) )
        & ( sK573 != sK574 ) ) )
    & ( ! [X125: term,X126: term,X127: term,X128: term] :
          ( ( ( ap @ X127 @ X125 )
           != ( ap @ X128 @ X126 ) )
          | ( X125 = X126 ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ! [X132: term > $o] :
          ( ( X132 @ ( sK580 @ X132 ) )
         != ( sK578 @ ( sub @ ( sK580 @ X132 ) @ ( push @ sK577 @ sK579 ) ) ) ) )
    & ( ! [X134: term,X135: term > $o,X136: subst,X138: term] :
          ( ( sK581 @ X136 @ X135 @ X134 @ X138 )
          = ( X135 @ ( sub @ X138 @ ( push @ X134 @ X136 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop_lthm_orig = $true )
    & ( ! [X139: subst] :
          ( ( push @ ( sub @ one @ X139 ) @ ( comp @ sh @ X139 ) )
          = X139 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ( sK582
       != ( push @ ( sub @ one @ sK582 ) @ ( comp @ sh @ sK582 ) ) ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( hoasapnotvar_gthm = $true )
    & ! [X141: d_subst,X142: d_subst] :
        ( ( ( d2subst @ X142 )
         != ( d2subst @ X141 ) )
        | ( X141 = X142 ) )
    & ( axabs = $true )
    & ! [X143: d_subst] : ( d_id = X143 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP34 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP34 ) )
    & ( ( ! [X144: subst] :
            ( ( comp @ X144 @ id )
            = X144 )
        & ! [X145: subst] :
            ( ( comp @ id @ X145 )
            = X145 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ( sK583
       != ( comp @ sK583 @ id ) )
      | ( sK584
       != ( comp @ id @ sK584 ) ) )
    & ( ulamvarind = $true )
    & ( lamnotvar = $true )
    & ! [X148: d_term,X149: d_term] :
        ( ( ( d2term @ X149 )
         != ( d2term @ X148 ) )
        | ( X148 = X149 ) )
    & ( ( $true = sP32 )
      | ( $true = sP31 )
      | ! [X151: term > $o] :
          ( ( sK585 @ id @ ( sK586 @ X151 ) @ id )
         != ( X151 @ ( sK586 @ X151 ) ) )
      | ( $true = sP30 )
      | ( sK587
       != ( sub @ sK587 @ id ) )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP32 )
        & ( $true != sP31 )
        & ! [X154: subst > term > subst > $o,X156: term] :
            ( ( X154 @ id @ X156 @ id )
            = ( sK588 @ X154 @ X156 ) )
        & ( $true != sP30 )
        & ! [X157: term] :
            ( ( sub @ X157 @ id )
            = X157 ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( axapp = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X158: subst,X159: term] :
          ( ( sub @ one @ ( push @ X159 @ X158 ) )
          = X159 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ( sK590
       != ( sub @ one @ ( push @ sK590 @ sK589 ) ) ) )
    & ( ( hoasinduction_lem3b = $true )
      | ! [X163: subst > term > term] :
          ( ( sub @ sK591 @ ( push @ one @ sh ) )
         != ( X163 @ sh @ one ) ) )
    & ( ! [X164: term] :
          ( ( sub @ X164 @ ( push @ one @ sh ) )
          = ( sK592 @ X164 @ sh @ one ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( axidl = $true )
      | ( ( comp @ id @ sK593 )
       != sK593 ) )
    & ( ! [X167: subst] :
          ( ( comp @ id @ X167 )
          = X167 )
      | ( axidl != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ( ( $true
          = ( sK594 @ sK598 ) )
        & ( $true
         != ( sK597 @ ( sub @ sK598 @ ( push @ sK595 @ sK596 ) ) ) ) ) )
    & ( ! [X173: term > $o,X174: term,X175: subst,X176: term > $o,X177: term] :
          ( ( $true
           != ( X173 @ X177 ) )
          | ( $true
            = ( X176 @ ( sub @ X177 @ ( push @ X174 @ X175 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X178: subst,X179: term] :
            ( ( sub @ one @ ( push @ X179 @ X178 ) )
            = X179 )
        & ( $true
          = ( sK603 @ sK602 ) )
        & ( $true
         != ( sK601 @ ( sub @ sK602 @ ( push @ sK600 @ sK599 ) ) ) )
        & ! [X185: subst,X186: term] :
            ( ( comp @ sh @ ( push @ X186 @ X185 ) )
            = X185 ) ) )
    & ( ( ( sub @ one @ ( push @ sK605 @ sK604 ) )
       != sK605 )
      | ! [X189: subst,X190: term,X191: term > $o,X192: term,X193: term > $o] :
          ( ( $true
           != ( X193 @ X192 ) )
          | ( $true
            = ( X191 @ ( sub @ X192 @ ( push @ X190 @ X189 ) ) ) ) )
      | ( ( comp @ sh @ ( push @ sK607 @ sK606 ) )
       != sK606 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X196: term,X197: term,X198: term,X199: term] :
          ( ( X196 = X199 )
          | ( ( ap @ X199 @ X198 )
           != ( ap @ X196 @ X197 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ( ( sK608 != sK611 )
        & ( ( ap @ sK611 @ sK610 )
          = ( ap @ sK608 @ sK609 ) ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( pushprop_lem0_lthm = $true )
      | ! [X207: term > $o] :
          ( ( X207 @ ( sK615 @ X207 ) )
         != ( sK612 @ ( sub @ ( sK615 @ X207 ) @ ( push @ sK613 @ sK614 ) ) ) ) )
    & ( ! [X209: term > $o,X210: term,X211: subst,X213: term] :
          ( ( sK616 @ X211 @ X210 @ X209 @ X213 )
          = ( X209 @ ( sub @ X213 @ ( push @ X210 @ X211 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( axvarid = $true )
      | ( ( sub @ sK617 @ id )
       != sK617 ) )
    & ( ! [X215: term] :
          ( ( sub @ X215 @ id )
          = X215 )
      | ( axvarid != $true ) )
    & ( axmap = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP22 ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP17 ) )
    & ( ( $true = sP17 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( lamnotap != $true )
    & ( ! [X216: subst,X217: term] :
          ( ( comp @ sh @ ( push @ X217 @ X216 ) )
          = X216 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ( sK618
       != ( comp @ sh @ ( push @ sK619 @ sK618 ) ) ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( induction2_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP15 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP15 ) )
    & ( axvarshift = $true )
    & ( ( hoasapinj1 = $true )
      | ( ( sK623 != sK620 )
        & ( ( ap @ ( sub @ sK620 @ id ) @ sK621 )
          = ( ap @ ( sub @ sK623 @ id ) @ sK622 ) ) ) )
    & ( ! [X224: term,X225: term,X226: term,X227: term] :
          ( ( X224 = X227 )
          | ( ( ap @ ( sub @ X227 @ id ) @ X226 )
           != ( ap @ ( sub @ X224 @ id ) @ X225 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X228: subst > term > subst > $o,X230: term] :
          ( ( X228 @ id @ X230 @ id )
          = ( sK624 @ X228 @ X230 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ! [X232: term > $o] :
          ( ( sK625 @ id @ ( sK626 @ X232 ) @ id )
         != ( X232 @ ( sK626 @ X232 ) ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ( ( $true
         != ( sK627 @ one ) )
        & ! [X238: term] :
            ( ( sK628 @ ( sub @ X238 @ ( push @ sK629 @ sK630 ) ) )
            = ( sK627 @ X238 ) )
        & ( $true
          = ( sK628 @ sK629 ) ) ) )
    & ( ! [X239: term > $o,X240: term > $o,X241: term,X242: subst] :
          ( ( $true
            = ( X239 @ one ) )
          | ( ( X240 @ ( sub @ ( sK631 @ X242 @ X241 @ X240 @ X239 ) @ ( push @ X241 @ X242 ) ) )
           != ( X239 @ ( sK631 @ X242 @ X241 @ X240 @ X239 ) ) )
          | ( ( X240 @ X241 )
           != $true ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ! [X244: subst] :
          ( ( comp @ X244 @ id )
          = X244 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ( ( comp @ sK632 @ id )
       != sK632 ) )
    & ( pushprop_gthm = $true )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP13 ) )
    & ( ( $true = sP13 )
      | ( hoaslaminj_lthm != $true ) )
    & ( hoaslamnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj2 = $true )
      | ( ( ( ap @ ( sub @ sK633 @ id ) @ sK635 )
          = ( ap @ ( sub @ sK634 @ id ) @ sK636 ) )
        & ( sK636 != sK635 ) ) )
    & ( ! [X250: term,X251: term,X252: term,X253: term] :
          ( ( ( ap @ ( sub @ X251 @ id ) @ X253 )
           != ( ap @ ( sub @ X250 @ id ) @ X252 ) )
          | ( X252 = X253 ) )
      | ( hoasapinj2 != $true ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X254: term] :
            ( ( sub @ X254 @ id )
            = X254 )
        & ! [X255: subst > term > subst > $o,X257: term] :
            ( ( X255 @ id @ X257 @ id )
            = ( sK637 @ X255 @ X257 ) )
        & ( $true != sP9 )
        & ( $true != sP11 )
        & ( $true != sP10 ) ) )
    & ( ( sK638
       != ( sub @ sK638 @ id ) )
      | ! [X260: term > $o] :
          ( ( sK639 @ id @ ( sK640 @ X260 ) @ id )
         != ( X260 @ ( sK640 @ X260 ) ) )
      | ( $true = sP9 )
      | ( $true = sP11 )
      | ( $true = sP10 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( $true = sP2 )
      | ( $true = sP3 )
      | ( ( sub @ sK641 @ id )
       != sK641 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP2 )
        & ( $true != sP3 )
        & ! [X263: term] :
            ( ( sub @ X263 @ id )
            = X263 ) ) )
    & ( hoasinduction_lem1_lthm = $true ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK513,sK514,sK515,sK516,sK517,sK518,sK519,sK520,sK521,sK522,sK523,sK524,sK525,sK526,sK527,sK528,sK529,sK530,sK531,sK532,sK533,sK534,sK535,sK536,sK537,sK538,sK539,sK540,sK541,sK542,sK543,sK544,sK545,sK546,sK547,sK548,sK549,sK550,sK551,sK552,sK553,sK554,sK555,sK556,sK557,sK558,sK559,sK560,sK561,sK562,sK563,sK564,sK565,sK566,sK567,sK568,sK569,sK570,sK571,sK572,sK573,sK574,sK575,sK576,sK577,sK578,sK579,sK580,sK581,sK582,sK583,sK584,sK585,sK586,sK587,sK588,sK589,sK590,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])],[f668,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682,f681,f680,f679,f678,f677,f676,f675,f674,f673,f672,f671,f670,f669]) ).

thf(f669,plain,
    ( ? [X0: term] :
        ( ( sub @ X0 @ id )
       != X0 )
   => ( ( sub @ sK513 @ id )
     != sK513 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f670,plain,
    ( ? [X4: term,X5: term] :
        ( ( X4 != X5 )
        & ( ( lam @ X5 )
          = ( lam @ X4 ) ) )
   => ( ( sK515 != sK514 )
      & ( ( lam @ sK514 )
        = ( lam @ sK515 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f671,plain,
    ! [X6: subst] :
      ( ? [X7: d_subst] :
          ( ( d2subst @ X7 )
          = X6 )
     => ( ( d2subst @ ( sK516 @ X6 ) )
        = X6 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f672,plain,
    ( ? [X10: term,X11: term] :
        ( ( X10 != X11 )
        & ( ( sub @ X11 @ sh )
          = ( sub @ X10 @ sh ) ) )
   => ( ( sK517 != sK518 )
      & ( ( sub @ sK517 @ sh )
        = ( sub @ sK518 @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f673,plain,
    ( ? [X12: term] :
        ( ( sub @ X12 @ id )
       != X12 )
   => ( sK519
     != ( sub @ sK519 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f674,plain,
    ( ? [X19: subst,X20: term] :
        ( ( comp @ sh @ ( push @ X20 @ X19 ) )
       != X19 )
   => ( ( comp @ sh @ ( push @ sK521 @ sK520 ) )
     != sK520 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f675,plain,
    ( ? [X21: subst] :
        ( ( comp @ X21 @ id )
       != X21 )
   => ( ( comp @ sK522 @ id )
     != sK522 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f676,plain,
    ( ? [X22: subst,X23: term] :
        ( ( sub @ one @ ( push @ X23 @ X22 ) )
       != X23 )
   => ( sK524
     != ( sub @ one @ ( push @ sK524 @ sK523 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f677,plain,
    ( ? [X24: term] :
        ( ( sub @ X24 @ id )
       != X24 )
   => ( ( sub @ sK525 @ id )
     != sK525 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f678,plain,
    ( ? [X25: term] :
      ! [X26: subst > term > term] :
      ? [X27: subst,X28: term] :
        ( ( sub @ X25 @ ( push @ X28 @ X27 ) )
       != ( X26 @ X27 @ X28 ) )
   => ! [X26: subst > term > term] :
      ? [X28: term,X27: subst] :
        ( ( X26 @ X27 @ X28 )
       != ( sub @ sK526 @ ( push @ X28 @ X27 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f679,plain,
    ! [X26: subst > term > term] :
      ( ? [X28: term,X27: subst] :
          ( ( X26 @ X27 @ X28 )
         != ( sub @ sK526 @ ( push @ X28 @ X27 ) ) )
     => ( ( sub @ sK526 @ ( push @ ( sK528 @ X26 ) @ ( sK527 @ X26 ) ) )
       != ( X26 @ ( sK527 @ X26 ) @ ( sK528 @ X26 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f680,plain,
    ! [X30: term] :
      ( ? [X31: subst > term > term] :
        ! [X32: subst,X33: term] :
          ( ( X31 @ X32 @ X33 )
          = ( sub @ X30 @ ( push @ X33 @ X32 ) ) )
     => ! [X33: term,X32: subst] :
          ( ( sub @ X30 @ ( push @ X33 @ X32 ) )
          = ( sK529 @ X30 @ X32 @ X33 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f681,plain,
    ( ? [X35: term] :
        ( ( sub @ X35 @ id )
       != X35 )
   => ( sK530
     != ( sub @ sK530 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f682,plain,
    ( ? [X36: term] :
        ( ( sub @ X36 @ id )
       != X36 )
   => ( ( sub @ sK531 @ id )
     != sK531 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f683,plain,
    ! [X38: term] :
      ( ? [X39: d_term] :
          ( ( d2term @ X39 )
          = X38 )
     => ( ( d2term @ ( sK532 @ X38 ) )
        = X38 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f685,plain,
    ! [X41: subst > term > term] :
      ( ? [X43: subst,X42: term] :
          ( ( sub @ sK533 @ ( push @ X42 @ X43 ) )
         != ( X41 @ X43 @ X42 ) )
     => ( ( X41 @ ( sK535 @ X41 ) @ ( sK534 @ X41 ) )
       != ( sub @ sK533 @ ( push @ ( sK534 @ X41 ) @ ( sK535 @ X41 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f686,plain,
    ! [X44: term] :
      ( ? [X45: subst > term > term] :
        ! [X46: term,X47: subst] :
          ( ( sub @ X44 @ ( push @ X46 @ X47 ) )
          = ( X45 @ X47 @ X46 ) )
     => ! [X47: subst,X46: term] :
          ( ( sK536 @ X44 @ X47 @ X46 )
          = ( sub @ X44 @ ( push @ X46 @ X47 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f687,plain,
    ( ? [X48: term] :
        ( ( sub @ X48 @ id )
       != X48 )
   => ( ( sub @ sK537 @ id )
     != sK537 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f689,plain,
    ! [X51: subst > term > term] :
      ( ? [X53: subst,X52: term] :
          ( ( sub @ sK538 @ ( push @ X52 @ X53 ) )
         != ( X51 @ X53 @ X52 ) )
     => ( ( X51 @ ( sK540 @ X51 ) @ ( sK539 @ X51 ) )
       != ( sub @ sK538 @ ( push @ ( sK539 @ X51 ) @ ( sK540 @ X51 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f690,plain,
    ! [X54: term] :
      ( ? [X55: subst > term > term] :
        ! [X56: term,X57: subst] :
          ( ( X55 @ X57 @ X56 )
          = ( sub @ X54 @ ( push @ X56 @ X57 ) ) )
     => ! [X57: subst,X56: term] :
          ( ( sub @ X54 @ ( push @ X56 @ X57 ) )
          = ( sK541 @ X54 @ X57 @ X56 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f691,plain,
    ( ? [X59: term] :
        ( ( sub @ X59 @ id )
       != X59 )
   => ( sK542
     != ( sub @ sK542 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f692,plain,
    ( ? [X60: subst > term > subst > $o] :
      ! [X61: term > $o] :
      ? [X62: term] :
        ( ( X61 @ X62 )
       != ( X60 @ id @ X62 @ id ) )
   => ! [X61: term > $o] :
      ? [X62: term] :
        ( ( X61 @ X62 )
       != ( sK543 @ id @ X62 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f693,plain,
    ! [X61: term > $o] :
      ( ? [X62: term] :
          ( ( X61 @ X62 )
         != ( sK543 @ id @ X62 @ id ) )
     => ( ( X61 @ ( sK544 @ X61 ) )
       != ( sK543 @ id @ ( sK544 @ X61 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f694,plain,
    ! [X63: subst > term > subst > $o] :
      ( ? [X64: term > $o] :
        ! [X65: term] :
          ( ( X63 @ id @ X65 @ id )
          = ( X64 @ X65 ) )
     => ! [X65: term] :
          ( ( X63 @ id @ X65 @ id )
          = ( sK545 @ X63 @ X65 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f695,plain,
    ( ? [X66: term > $o,X67: term > $o,X68: term,X69: subst] :
        ( ( $true
          = ( X66 @ X68 ) )
        & ( $true
         != ( X67 @ one ) )
        & ! [X70: term] :
            ( ( X66 @ ( sub @ X70 @ ( push @ X68 @ X69 ) ) )
            = ( X67 @ X70 ) ) )
   => ( ( $true
        = ( sK546 @ sK548 ) )
      & ( $true
       != ( sK547 @ one ) )
      & ! [X70: term] :
          ( ( sK546 @ ( sub @ X70 @ ( push @ sK548 @ sK549 ) ) )
          = ( sK547 @ X70 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f696,plain,
    ! [X73: term > $o,X74: term > $o,X75: term,X76: subst] :
      ( ? [X77: term] :
          ( ( X74 @ X77 )
         != ( X73 @ ( sub @ X77 @ ( push @ X75 @ X76 ) ) ) )
     => ( ( X73 @ ( sub @ ( sK550 @ X76 @ X75 @ X74 @ X73 ) @ ( push @ X75 @ X76 ) ) )
       != ( X74 @ ( sK550 @ X76 @ X75 @ X74 @ X73 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f697,plain,
    ( ? [X78: term,X79: subst] :
        ( ( sub @ one @ ( push @ X78 @ X79 ) )
       != X78 )
   => ( sK551
     != ( sub @ one @ ( push @ sK551 @ sK552 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f698,plain,
    ( ? [X82: subst > term > subst > $o,X83: term] :
        ( ( $true
         != ( X82 @ id @ X83 @ id ) )
        & ( $true
         != ( sP46 @ X82 ) )
        & ( $true
         != ( sP45 @ X82 ) ) )
   => ( ( $true
       != ( sK553 @ id @ sK554 @ id ) )
      & ( $true
       != ( sP46 @ sK553 ) )
      & ( $true
       != ( sP45 @ sK553 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f700,plain,
    ( ? [X87: term] :
      ! [X88: subst > term > term] :
        ( ( X88 @ sh @ one )
       != ( sub @ X87 @ ( push @ one @ sh ) ) )
   => ! [X88: subst > term > term] :
        ( ( X88 @ sh @ one )
       != ( sub @ sK556 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f701,plain,
    ! [X90: subst > term > term] :
      ( ? [X93: subst,X94: term,X95: subst] :
          ( ( sub @ ( X90 @ X95 @ X94 ) @ X93 )
         != ( X90 @ ( comp @ X95 @ X93 ) @ ( sub @ X94 @ X93 ) ) )
     => ( ( sub @ ( X90 @ ( sK559 @ X90 ) @ ( sK558 @ X90 ) ) @ ( sK557 @ X90 ) )
       != ( X90 @ ( comp @ ( sK559 @ X90 ) @ ( sK557 @ X90 ) ) @ ( sub @ ( sK558 @ X90 ) @ ( sK557 @ X90 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f702,plain,
    ! [X89: subst > term > term] :
      ( ? [X96: subst,X97: term,X98: subst] :
          ( ( sub @ ( X89 @ X96 @ X97 ) @ X98 )
         != ( X89 @ ( comp @ X96 @ X98 ) @ ( sub @ X97 @ X98 ) ) )
     => ( ( X89 @ ( comp @ ( sK560 @ X89 ) @ ( sK562 @ X89 ) ) @ ( sub @ ( sK561 @ X89 ) @ ( sK562 @ X89 ) ) )
       != ( sub @ ( X89 @ ( sK560 @ X89 ) @ ( sK561 @ X89 ) ) @ ( sK562 @ X89 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f703,plain,
    ( ? [X99: subst > term > term,X100: subst > term > term,X101: term,X102: subst] :
        ( ( ( lam @ ( X100 @ sh @ one ) )
          = ( lam @ ( X99 @ sh @ one ) ) )
        & ! [X103: subst,X104: term,X105: subst] :
            ( ( X100 @ ( comp @ X105 @ X103 ) @ ( sub @ X104 @ X103 ) )
            = ( sub @ ( X100 @ X105 @ X104 ) @ X103 ) )
        & ( ( X100 @ X102 @ X101 )
         != ( X99 @ X102 @ X101 ) )
        & ! [X106: subst,X107: term,X108: subst] :
            ( ( sub @ ( X99 @ X106 @ X107 ) @ X108 )
            = ( X99 @ ( comp @ X106 @ X108 ) @ ( sub @ X107 @ X108 ) ) ) )
   => ( ( ( lam @ ( sK564 @ sh @ one ) )
        = ( lam @ ( sK563 @ sh @ one ) ) )
      & ! [X105: subst,X104: term,X103: subst] :
          ( ( sub @ ( sK564 @ X105 @ X104 ) @ X103 )
          = ( sK564 @ ( comp @ X105 @ X103 ) @ ( sub @ X104 @ X103 ) ) )
      & ( ( sK564 @ sK566 @ sK565 )
       != ( sK563 @ sK566 @ sK565 ) )
      & ! [X108: subst,X107: term,X106: subst] :
          ( ( sK563 @ ( comp @ X106 @ X108 ) @ ( sub @ X107 @ X108 ) )
          = ( sub @ ( sK563 @ X106 @ X107 ) @ X108 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f704,plain,
    ! [X110: subst > term > term] :
      ( ? [X112: term,X113: subst,X114: subst] :
          ( ( X110 @ ( comp @ X113 @ X114 ) @ ( sub @ X112 @ X114 ) )
         != ( sub @ ( X110 @ X113 @ X112 ) @ X114 ) )
     => ( ( X110 @ ( comp @ ( sK568 @ X110 ) @ ( sK569 @ X110 ) ) @ ( sub @ ( sK567 @ X110 ) @ ( sK569 @ X110 ) ) )
       != ( sub @ ( X110 @ ( sK568 @ X110 ) @ ( sK567 @ X110 ) ) @ ( sK569 @ X110 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f705,plain,
    ( ? [X115: term,X116: subst > term > term,X117: term] :
        ( ( ( ap @ ( sub @ X117 @ id ) @ X115 )
          = ( lam @ ( X116 @ sh @ one ) ) )
        & ! [X118: term,X119: subst,X120: subst] :
            ( ( X116 @ ( comp @ X119 @ X120 ) @ ( sub @ X118 @ X120 ) )
            = ( sub @ ( X116 @ X119 @ X118 ) @ X120 ) ) )
   => ( ( ( lam @ ( sK571 @ sh @ one ) )
        = ( ap @ ( sub @ sK572 @ id ) @ sK570 ) )
      & ! [X120: subst,X119: subst,X118: term] :
          ( ( sK571 @ ( comp @ X119 @ X120 ) @ ( sub @ X118 @ X120 ) )
          = ( sub @ ( sK571 @ X119 @ X118 ) @ X120 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f706,plain,
    ( ? [X121: term,X122: term,X123: term,X124: term] :
        ( ( ( ap @ X124 @ X122 )
          = ( ap @ X123 @ X121 ) )
        & ( X121 != X122 ) )
   => ( ( ( ap @ sK576 @ sK574 )
        = ( ap @ sK575 @ sK573 ) )
      & ( sK573 != sK574 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f707,plain,
    ( ? [X129: term,X130: term > $o,X131: subst] :
      ! [X132: term > $o] :
      ? [X133: term] :
        ( ( X132 @ X133 )
       != ( X130 @ ( sub @ X133 @ ( push @ X129 @ X131 ) ) ) )
   => ! [X132: term > $o] :
      ? [X133: term] :
        ( ( sK578 @ ( sub @ X133 @ ( push @ sK577 @ sK579 ) ) )
       != ( X132 @ X133 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f708,plain,
    ! [X132: term > $o] :
      ( ? [X133: term] :
          ( ( sK578 @ ( sub @ X133 @ ( push @ sK577 @ sK579 ) ) )
         != ( X132 @ X133 ) )
     => ( ( X132 @ ( sK580 @ X132 ) )
       != ( sK578 @ ( sub @ ( sK580 @ X132 ) @ ( push @ sK577 @ sK579 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f710,plain,
    ( ? [X140: subst] :
        ( ( push @ ( sub @ one @ X140 ) @ ( comp @ sh @ X140 ) )
       != X140 )
   => ( sK582
     != ( push @ ( sub @ one @ sK582 ) @ ( comp @ sh @ sK582 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f711,plain,
    ( ? [X146: subst] :
        ( ( comp @ X146 @ id )
       != X146 )
   => ( sK583
     != ( comp @ sK583 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f713,plain,
    ( ? [X150: subst > term > subst > $o] :
      ! [X151: term > $o] :
      ? [X152: term] :
        ( ( X151 @ X152 )
       != ( X150 @ id @ X152 @ id ) )
   => ! [X151: term > $o] :
      ? [X152: term] :
        ( ( sK585 @ id @ X152 @ id )
       != ( X151 @ X152 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f714,plain,
    ! [X151: term > $o] :
      ( ? [X152: term] :
          ( ( sK585 @ id @ X152 @ id )
         != ( X151 @ X152 ) )
     => ( ( sK585 @ id @ ( sK586 @ X151 ) @ id )
       != ( X151 @ ( sK586 @ X151 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f715,plain,
    ( ? [X153: term] :
        ( ( sub @ X153 @ id )
       != X153 )
   => ( sK587
     != ( sub @ sK587 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f716,plain,
    ! [X154: subst > term > subst > $o] :
      ( ? [X155: term > $o] :
        ! [X156: term] :
          ( ( X155 @ X156 )
          = ( X154 @ id @ X156 @ id ) )
     => ! [X156: term] :
          ( ( X154 @ id @ X156 @ id )
          = ( sK588 @ X154 @ X156 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f717,plain,
    ( ? [X160: subst,X161: term] :
        ( ( sub @ one @ ( push @ X161 @ X160 ) )
       != X161 )
   => ( sK590
     != ( sub @ one @ ( push @ sK590 @ sK589 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f718,plain,
    ( ? [X162: term] :
      ! [X163: subst > term > term] :
        ( ( X163 @ sh @ one )
       != ( sub @ X162 @ ( push @ one @ sh ) ) )
   => ! [X163: subst > term > term] :
        ( ( sub @ sK591 @ ( push @ one @ sh ) )
       != ( X163 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f719,plain,
    ! [X164: term] :
      ( ? [X165: subst > term > term] :
          ( ( sub @ X164 @ ( push @ one @ sh ) )
          = ( X165 @ sh @ one ) )
     => ( ( sub @ X164 @ ( push @ one @ sh ) )
        = ( sK592 @ X164 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f720,plain,
    ( ? [X166: subst] :
        ( ( comp @ id @ X166 )
       != X166 )
   => ( ( comp @ id @ sK593 )
     != sK593 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f721,plain,
    ( ? [X168: term > $o,X169: term,X170: subst,X171: term > $o,X172: term] :
        ( ( $true
          = ( X168 @ X172 ) )
        & ( $true
         != ( X171 @ ( sub @ X172 @ ( push @ X169 @ X170 ) ) ) ) )
   => ( ( $true
        = ( sK594 @ sK598 ) )
      & ( $true
       != ( sK597 @ ( sub @ sK598 @ ( push @ sK595 @ sK596 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f722,plain,
    ( ? [X180: subst,X181: term,X182: term > $o,X183: term,X184: term > $o] :
        ( ( $true
          = ( X184 @ X183 ) )
        & ( $true
         != ( X182 @ ( sub @ X183 @ ( push @ X181 @ X180 ) ) ) ) )
   => ( ( $true
        = ( sK603 @ sK602 ) )
      & ( $true
       != ( sK601 @ ( sub @ sK602 @ ( push @ sK600 @ sK599 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f724,plain,
    ( ? [X194: subst,X195: term] :
        ( ( comp @ sh @ ( push @ X195 @ X194 ) )
       != X194 )
   => ( ( comp @ sh @ ( push @ sK607 @ sK606 ) )
     != sK606 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f725,plain,
    ( ? [X200: term,X201: term,X202: term,X203: term] :
        ( ( X200 != X203 )
        & ( ( ap @ X203 @ X202 )
          = ( ap @ X200 @ X201 ) ) )
   => ( ( sK608 != sK611 )
      & ( ( ap @ sK611 @ sK610 )
        = ( ap @ sK608 @ sK609 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f726,plain,
    ( ? [X204: term > $o,X205: term,X206: subst] :
      ! [X207: term > $o] :
      ? [X208: term] :
        ( ( X207 @ X208 )
       != ( X204 @ ( sub @ X208 @ ( push @ X205 @ X206 ) ) ) )
   => ! [X207: term > $o] :
      ? [X208: term] :
        ( ( X207 @ X208 )
       != ( sK612 @ ( sub @ X208 @ ( push @ sK613 @ sK614 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f727,plain,
    ! [X207: term > $o] :
      ( ? [X208: term] :
          ( ( X207 @ X208 )
         != ( sK612 @ ( sub @ X208 @ ( push @ sK613 @ sK614 ) ) ) )
     => ( ( X207 @ ( sK615 @ X207 ) )
       != ( sK612 @ ( sub @ ( sK615 @ X207 ) @ ( push @ sK613 @ sK614 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f728,plain,
    ! [X209: term > $o,X210: term,X211: subst] :
      ( ? [X212: term > $o] :
        ! [X213: term] :
          ( ( X212 @ X213 )
          = ( X209 @ ( sub @ X213 @ ( push @ X210 @ X211 ) ) ) )
     => ! [X213: term] :
          ( ( sK616 @ X211 @ X210 @ X209 @ X213 )
          = ( X209 @ ( sub @ X213 @ ( push @ X210 @ X211 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f729,plain,
    ( ? [X214: term] :
        ( ( sub @ X214 @ id )
       != X214 )
   => ( ( sub @ sK617 @ id )
     != sK617 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f730,plain,
    ( ? [X218: subst,X219: term] :
        ( ( comp @ sh @ ( push @ X219 @ X218 ) )
       != X218 )
   => ( sK618
     != ( comp @ sh @ ( push @ sK619 @ sK618 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f731,plain,
    ( ? [X220: term,X221: term,X222: term,X223: term] :
        ( ( X220 != X223 )
        & ( ( ap @ ( sub @ X220 @ id ) @ X221 )
          = ( ap @ ( sub @ X223 @ id ) @ X222 ) ) )
   => ( ( sK623 != sK620 )
      & ( ( ap @ ( sub @ sK620 @ id ) @ sK621 )
        = ( ap @ ( sub @ sK623 @ id ) @ sK622 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f734,plain,
    ! [X232: term > $o] :
      ( ? [X233: term] :
          ( ( X232 @ X233 )
         != ( sK625 @ id @ X233 @ id ) )
     => ( ( sK625 @ id @ ( sK626 @ X232 ) @ id )
       != ( X232 @ ( sK626 @ X232 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f735,plain,
    ( ? [X234: term > $o,X235: term > $o,X236: term,X237: subst] :
        ( ( $true
         != ( X234 @ one ) )
        & ! [X238: term] :
            ( ( X235 @ ( sub @ X238 @ ( push @ X236 @ X237 ) ) )
            = ( X234 @ X238 ) )
        & ( $true
          = ( X235 @ X236 ) ) )
   => ( ( $true
       != ( sK627 @ one ) )
      & ! [X238: term] :
          ( ( sK628 @ ( sub @ X238 @ ( push @ sK629 @ sK630 ) ) )
          = ( sK627 @ X238 ) )
      & ( $true
        = ( sK628 @ sK629 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f736,plain,
    ! [X239: term > $o,X240: term > $o,X241: term,X242: subst] :
      ( ? [X243: term] :
          ( ( X239 @ X243 )
         != ( X240 @ ( sub @ X243 @ ( push @ X241 @ X242 ) ) ) )
     => ( ( X240 @ ( sub @ ( sK631 @ X242 @ X241 @ X240 @ X239 ) @ ( push @ X241 @ X242 ) ) )
       != ( X239 @ ( sK631 @ X242 @ X241 @ X240 @ X239 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f737,plain,
    ( ? [X245: subst] :
        ( ( comp @ X245 @ id )
       != X245 )
   => ( ( comp @ sK632 @ id )
     != sK632 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f738,plain,
    ( ? [X246: term,X247: term,X248: term,X249: term] :
        ( ( ( ap @ ( sub @ X246 @ id ) @ X248 )
          = ( ap @ ( sub @ X247 @ id ) @ X249 ) )
        & ( X248 != X249 ) )
   => ( ( ( ap @ ( sub @ sK633 @ id ) @ sK635 )
        = ( ap @ ( sub @ sK634 @ id ) @ sK636 ) )
      & ( sK636 != sK635 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f740,plain,
    ( ? [X258: term] :
        ( ( sub @ X258 @ id )
       != X258 )
   => ( sK638
     != ( sub @ sK638 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f742,plain,
    ! [X260: term > $o] :
      ( ? [X261: term] :
          ( ( sK639 @ id @ X261 @ id )
         != ( X260 @ X261 ) )
     => ( ( sK639 @ id @ ( sK640 @ X260 ) @ id )
       != ( X260 @ ( sK640 @ X260 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f667,plain,
    ( ( ( $true = sP108 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP108 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ? [X243: term] :
          ( ( sub @ X243 @ id )
         != X243 )
      | ( $true = sP104 )
      | ( $true = sP103 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X243: term] :
            ( ( sub @ X243 @ id )
            = X243 )
        & ( $true != sP104 )
        & ( $true != sP103 ) ) )
    & ( ! [X15: term,X16: term] :
          ( ( X15 = X16 )
          | ( ( lam @ X15 )
           != ( lam @ X16 ) ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X15: term,X16: term] :
          ( ( X15 != X16 )
          & ( ( lam @ X15 )
            = ( lam @ X16 ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP98 ) )
    & ( ( $true = sP98 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( sP95 != $true ) )
    & ( ( sP95 = $true )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( axclos = $true )
    & ! [X204: subst] :
      ? [X205: d_subst] :
        ( ( d2subst @ X205 )
        = X204 )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP90 ) )
    & ( ( $true = sP90 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ! [X17: term,X18: term] :
          ( ( X17 = X18 )
          | ( ( sub @ X17 @ sh )
           != ( sub @ X18 @ sh ) ) )
      | ( shinj != $true ) )
    & ( ( shinj = $true )
      | ? [X17: term,X18: term] :
          ( ( X17 != X18 )
          & ( ( sub @ X17 @ sh )
            = ( sub @ X18 @ sh ) ) ) )
    & ( ? [X19: term] :
          ( ( sub @ X19 @ id )
         != X19 )
      | ( $true = sP88 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X19: term] :
            ( ( sub @ X19 @ id )
            = X19 )
        & ( $true != sP88 ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X324: subst,X325: term] :
            ( ( comp @ sh @ ( push @ X325 @ X324 ) )
            = X324 )
        & ! [X326: subst] :
            ( ( comp @ X326 @ id )
            = X326 )
        & ! [X322: subst,X323: term] :
            ( ( sub @ one @ ( push @ X323 @ X322 ) )
            = X323 )
        & ( $true != sP83 ) ) )
    & ( ( $true = sP84 )
      | ? [X324: subst,X325: term] :
          ( ( comp @ sh @ ( push @ X325 @ X324 ) )
         != X324 )
      | ? [X326: subst] :
          ( ( comp @ X326 @ id )
         != X326 )
      | ? [X322: subst,X323: term] :
          ( ( sub @ one @ ( push @ X323 @ X322 ) )
         != X323 )
      | ( $true = sP83 )
      | ( induction2lem_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( $true = sP78 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP78 ) )
    & ( ? [X445: term] :
          ( ( sub @ X445 @ id )
         != X445 )
      | ? [X441: term] :
        ! [X442: subst > term > term] :
        ? [X443: subst,X444: term] :
          ( ( X442 @ X443 @ X444 )
         != ( sub @ X441 @ ( push @ X444 @ X443 ) ) )
      | ( $true = sP76 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X445: term] :
            ( ( sub @ X445 @ id )
            = X445 )
        & ! [X441: term] :
          ? [X442: subst > term > term] :
          ! [X443: subst,X444: term] :
            ( ( X442 @ X443 @ X444 )
            = ( sub @ X441 @ ( push @ X444 @ X443 ) ) )
        & ( $true != sP76 ) ) )
    & ( termmset_gthm = $true )
    & ( ( termmset_lthm = $true )
      | ( ! [X54: term] :
            ( ( sub @ X54 @ id )
            = X54 )
        & ? [X55: term] :
            ( ( sub @ X55 @ id )
           != X55 ) ) )
    & ( ? [X54: term] :
          ( ( sub @ X54 @ id )
         != X54 )
      | ! [X55: term] :
          ( ( sub @ X55 @ id )
          = X55 )
      | ( termmset_lthm != $true ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar = $true )
    & ! [X291: term] :
      ? [X292: d_term] :
        ( ( d2term @ X292 )
        = X291 )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X223: term] :
        ! [X224: subst > term > term] :
        ? [X225: term,X226: subst] :
          ( ( X224 @ X226 @ X225 )
         != ( sub @ X223 @ ( push @ X225 @ X226 ) ) ) )
    & ( ! [X223: term] :
        ? [X224: subst > term > term] :
        ! [X225: term,X226: subst] :
          ( ( X224 @ X226 @ X225 )
          = ( sub @ X223 @ ( push @ X225 @ X226 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( termmset = $true )
      | ? [X77: term] :
          ( ( sub @ X77 @ id )
         != X77 ) )
    & ( ! [X77: term] :
          ( ( sub @ X77 @ id )
          = X77 )
      | ( termmset != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X414: term] :
        ! [X415: subst > term > term] :
        ? [X416: term,X417: subst] :
          ( ( X415 @ X417 @ X416 )
         != ( sub @ X414 @ ( push @ X416 @ X417 ) ) ) )
    & ( ! [X414: term] :
        ? [X415: subst > term > term] :
        ! [X416: term,X417: subst] :
          ( ( X415 @ X417 @ X416 )
          = ( sub @ X414 @ ( push @ X416 @ X417 ) ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP74 )
        & ! [X456: term] :
            ( ( sub @ X456 @ id )
            = X456 )
        & ( sP73 != $true ) ) )
    & ( ( $true = sP74 )
      | ? [X456: term] :
          ( ( sub @ X456 @ id )
         != X456 )
      | ( sP73 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X151: subst > term > subst > $o] :
        ! [X152: term > $o] :
        ? [X153: term] :
          ( ( X152 @ X153 )
         != ( X151 @ id @ X153 @ id ) ) )
    & ( ! [X151: subst > term > subst > $o] :
        ? [X152: term > $o] :
        ! [X153: term] :
          ( ( X152 @ X153 )
          = ( X151 @ id @ X153 @ id ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( sP65 = $true )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( $true = sP66 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( sP65 != $true )
        & ( $true != sP67 )
        & ( $true != sP68 )
        & ( $true != sP66 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP52 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP52 ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X420: term > $o,X421: term > $o,X422: term,X423: subst] :
            ( ( $true
              = ( X420 @ X422 ) )
            & ( $true
             != ( X421 @ one ) )
            & ! [X424: term] :
                ( ( X420 @ ( sub @ X424 @ ( push @ X422 @ X423 ) ) )
                = ( X421 @ X424 ) ) )
        & ! [X418: term,X419: subst] :
            ( ( sub @ one @ ( push @ X418 @ X419 ) )
            = X418 ) ) )
    & ( ! [X420: term > $o,X421: term > $o,X422: term,X423: subst] :
          ( ( $true
           != ( X420 @ X422 ) )
          | ( $true
            = ( X421 @ one ) )
          | ? [X424: term] :
              ( ( X420 @ ( sub @ X424 @ ( push @ X422 @ X423 ) ) )
             != ( X421 @ X424 ) ) )
      | ? [X418: term,X419: subst] :
          ( ( sub @ one @ ( push @ X418 @ X419 ) )
         != X418 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP50 != $true ) )
    & ( ( sP50 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( induction2lem_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ! [X282: subst > term > subst > $o,X283: term] :
          ( ( $true
            = ( X282 @ id @ X283 @ id ) )
          | ( $true
            = ( sP46 @ X282 ) )
          | ( $true
            = ( sP45 @ X282 ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X282: subst > term > subst > $o,X283: term] :
          ( ( $true
           != ( X282 @ id @ X283 @ id ) )
          & ( $true
           != ( sP46 @ X282 ) )
          & ( $true
           != ( sP45 @ X282 ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( $true = sP44 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP44 ) )
    & ( ulamvar1 != $true )
    & ( substmonoid_gthm = $true )
    & ! [X6: d_term] : ( d_one = X6 )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP41 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP41 ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP40 ) )
    & ( ( $true = sP40 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP37 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP37 ) )
    & ( apnotvar = $true )
    & ( ! [X52: term] :
        ? [X53: subst > term > term] :
          ( ( sub @ X52 @ ( push @ one @ sh ) )
          = ( X53 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X52: term] :
        ! [X53: subst > term > term] :
          ( ( sub @ X52 @ ( push @ one @ sh ) )
         != ( X53 @ sh @ one ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ulamvarsh = $true )
    & ( ! [X112: subst > term > term,X113: subst > term > term,X114: term,X115: subst] :
          ( ( ( lam @ ( X113 @ sh @ one ) )
           != ( lam @ ( X112 @ sh @ one ) ) )
          | ? [X119: subst,X120: term,X121: subst] :
              ( ( X113 @ ( comp @ X121 @ X119 ) @ ( sub @ X120 @ X119 ) )
             != ( sub @ ( X113 @ X121 @ X120 ) @ X119 ) )
          | ( ( X113 @ X115 @ X114 )
            = ( X112 @ X115 @ X114 ) )
          | ? [X116: subst,X117: term,X118: subst] :
              ( ( X112 @ ( comp @ X116 @ X118 ) @ ( sub @ X117 @ X118 ) )
             != ( sub @ ( X112 @ X116 @ X117 ) @ X118 ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X112: subst > term > term,X113: subst > term > term,X114: term,X115: subst] :
          ( ( ( lam @ ( X113 @ sh @ one ) )
            = ( lam @ ( X112 @ sh @ one ) ) )
          & ! [X119: subst,X120: term,X121: subst] :
              ( ( X113 @ ( comp @ X121 @ X119 ) @ ( sub @ X120 @ X119 ) )
              = ( sub @ ( X113 @ X121 @ X120 ) @ X119 ) )
          & ( ( X113 @ X115 @ X114 )
           != ( X112 @ X115 @ X114 ) )
          & ! [X116: subst,X117: term,X118: subst] :
              ( ( X112 @ ( comp @ X116 @ X118 ) @ ( sub @ X117 @ X118 ) )
              = ( sub @ ( X112 @ X116 @ X117 ) @ X118 ) ) ) )
    & ( ! [X0: term,X1: subst > term > term,X2: term] :
          ( ( ( lam @ ( X1 @ sh @ one ) )
           != ( ap @ ( sub @ X2 @ id ) @ X0 ) )
          | ? [X3: term,X4: subst,X5: subst] :
              ( ( X1 @ ( comp @ X4 @ X5 ) @ ( sub @ X3 @ X5 ) )
             != ( sub @ ( X1 @ X4 @ X3 ) @ X5 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X0: term,X1: subst > term > term,X2: term] :
          ( ( ( lam @ ( X1 @ sh @ one ) )
            = ( ap @ ( sub @ X2 @ id ) @ X0 ) )
          & ! [X3: term,X4: subst,X5: subst] :
              ( ( X1 @ ( comp @ X4 @ X5 ) @ ( sub @ X3 @ X5 ) )
              = ( sub @ ( X1 @ X4 @ X3 ) @ X5 ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( apinj2 = $true )
      | ? [X210: term,X211: term,X212: term,X213: term] :
          ( ( ( ap @ X213 @ X211 )
            = ( ap @ X212 @ X210 ) )
          & ( X210 != X211 ) ) )
    & ( ! [X210: term,X211: term,X212: term,X213: term] :
          ( ( ( ap @ X213 @ X211 )
           != ( ap @ X212 @ X210 ) )
          | ( X210 = X211 ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ? [X122: term,X123: term > $o,X124: subst] :
        ! [X125: term > $o] :
        ? [X126: term] :
          ( ( X123 @ ( sub @ X126 @ ( push @ X122 @ X124 ) ) )
         != ( X125 @ X126 ) ) )
    & ( ! [X122: term,X123: term > $o,X124: subst] :
        ? [X125: term > $o] :
        ! [X126: term] :
          ( ( X123 @ ( sub @ X126 @ ( push @ X122 @ X124 ) ) )
          = ( X125 @ X126 ) )
      | ( pushprop_lem0 != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop_lthm_orig = $true )
    & ( ! [X96: subst] :
          ( ( push @ ( sub @ one @ X96 ) @ ( comp @ sh @ X96 ) )
          = X96 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X96: subst] :
          ( ( push @ ( sub @ one @ X96 ) @ ( comp @ sh @ X96 ) )
         != X96 ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( hoasapnotvar_gthm = $true )
    & ! [X75: d_subst,X76: d_subst] :
        ( ( ( d2subst @ X76 )
         != ( d2subst @ X75 ) )
        | ( X75 = X76 ) )
    & ( axabs = $true )
    & ! [X321: d_subst] : ( d_id = X321 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP34 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP34 ) )
    & ( ( ! [X56: subst] :
            ( ( comp @ X56 @ id )
            = X56 )
        & ! [X57: subst] :
            ( ( comp @ id @ X57 )
            = X57 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ? [X56: subst] :
          ( ( comp @ X56 @ id )
         != X56 )
      | ? [X57: subst] :
          ( ( comp @ id @ X57 )
         != X57 ) )
    & ( ulamvarind = $true )
    & ( lamnotvar = $true )
    & ! [X280: d_term,X281: d_term] :
        ( ( ( d2term @ X281 )
         != ( d2term @ X280 ) )
        | ( X280 = X281 ) )
    & ( ( $true = sP32 )
      | ( $true = sP31 )
      | ? [X476: subst > term > subst > $o] :
        ! [X477: term > $o] :
        ? [X478: term] :
          ( ( X476 @ id @ X478 @ id )
         != ( X477 @ X478 ) )
      | ( $true = sP30 )
      | ? [X486: term] :
          ( ( sub @ X486 @ id )
         != X486 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP32 )
        & ( $true != sP31 )
        & ! [X476: subst > term > subst > $o] :
          ? [X477: term > $o] :
          ! [X478: term] :
            ( ( X476 @ id @ X478 @ id )
            = ( X477 @ X478 ) )
        & ( $true != sP30 )
        & ! [X486: term] :
            ( ( sub @ X486 @ id )
            = X486 ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( axapp = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X43: subst,X44: term] :
          ( ( sub @ one @ ( push @ X44 @ X43 ) )
          = X44 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X43: subst,X44: term] :
          ( ( sub @ one @ ( push @ X44 @ X43 ) )
         != X44 ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X438: term] :
        ! [X439: subst > term > term] :
          ( ( X439 @ sh @ one )
         != ( sub @ X438 @ ( push @ one @ sh ) ) ) )
    & ( ! [X438: term] :
        ? [X439: subst > term > term] :
          ( ( X439 @ sh @ one )
          = ( sub @ X438 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( axidl = $true )
      | ? [X440: subst] :
          ( ( comp @ id @ X440 )
         != X440 ) )
    & ( ! [X440: subst] :
          ( ( comp @ id @ X440 )
          = X440 )
      | ( axidl != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X97: term > $o,X98: term,X99: subst,X100: term > $o,X101: term] :
          ( ( $true
            = ( X97 @ X101 ) )
          & ( $true
           != ( X100 @ ( sub @ X101 @ ( push @ X98 @ X99 ) ) ) ) ) )
    & ( ! [X97: term > $o,X98: term,X99: subst,X100: term > $o,X101: term] :
          ( ( $true
           != ( X97 @ X101 ) )
          | ( $true
            = ( X100 @ ( sub @ X101 @ ( push @ X98 @ X99 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X127: subst,X128: term] :
            ( ( sub @ one @ ( push @ X128 @ X127 ) )
            = X128 )
        & ? [X131: subst,X132: term,X133: term > $o,X134: term,X135: term > $o] :
            ( ( ( X135 @ X134 )
              = $true )
            & ( $true
             != ( X133 @ ( sub @ X134 @ ( push @ X132 @ X131 ) ) ) ) )
        & ! [X129: subst,X130: term] :
            ( ( comp @ sh @ ( push @ X130 @ X129 ) )
            = X129 ) ) )
    & ( ? [X127: subst,X128: term] :
          ( ( sub @ one @ ( push @ X128 @ X127 ) )
         != X128 )
      | ! [X131: subst,X132: term,X133: term > $o,X134: term,X135: term > $o] :
          ( ( ( X135 @ X134 )
           != $true )
          | ( $true
            = ( X133 @ ( sub @ X134 @ ( push @ X132 @ X131 ) ) ) ) )
      | ? [X129: subst,X130: term] :
          ( ( comp @ sh @ ( push @ X130 @ X129 ) )
         != X129 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X276: term,X277: term,X278: term,X279: term] :
          ( ( X276 = X279 )
          | ( ( ap @ X276 @ X277 )
           != ( ap @ X279 @ X278 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X276: term,X277: term,X278: term,X279: term] :
          ( ( X276 != X279 )
          & ( ( ap @ X276 @ X277 )
            = ( ap @ X279 @ X278 ) ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X38: term > $o,X39: term,X40: subst] :
        ! [X41: term > $o] :
        ? [X42: term] :
          ( ( X38 @ ( sub @ X42 @ ( push @ X39 @ X40 ) ) )
         != ( X41 @ X42 ) ) )
    & ( ! [X38: term > $o,X39: term,X40: subst] :
        ? [X41: term > $o] :
        ! [X42: term] :
          ( ( X38 @ ( sub @ X42 @ ( push @ X39 @ X40 ) ) )
          = ( X41 @ X42 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( axvarid = $true )
      | ? [X214: term] :
          ( ( sub @ X214 @ id )
         != X214 ) )
    & ( ! [X214: term] :
          ( ( sub @ X214 @ id )
          = X214 )
      | ( axvarid != $true ) )
    & ( axmap = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP22 ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP17 ) )
    & ( ( $true = sP17 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( lamnotap != $true )
    & ( ! [X314: subst,X315: term] :
          ( ( comp @ sh @ ( push @ X315 @ X314 ) )
          = X314 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X314: subst,X315: term] :
          ( ( comp @ sh @ ( push @ X315 @ X314 ) )
         != X314 ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( induction2_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP15 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP15 ) )
    & ( axvarshift = $true )
    & ( ( hoasapinj1 = $true )
      | ? [X472: term,X473: term,X474: term,X475: term] :
          ( ( X472 != X475 )
          & ( ( ap @ ( sub @ X472 @ id ) @ X473 )
            = ( ap @ ( sub @ X475 @ id ) @ X474 ) ) ) )
    & ( ! [X472: term,X473: term,X474: term,X475: term] :
          ( ( X472 = X475 )
          | ( ( ap @ ( sub @ X472 @ id ) @ X473 )
           != ( ap @ ( sub @ X475 @ id ) @ X474 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X305: subst > term > subst > $o] :
        ? [X306: term > $o] :
        ! [X307: term] :
          ( ( X305 @ id @ X307 @ id )
          = ( X306 @ X307 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X305: subst > term > subst > $o] :
        ! [X306: term > $o] :
        ? [X307: term] :
          ( ( X305 @ id @ X307 @ id )
         != ( X306 @ X307 ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X316: term > $o,X317: term > $o,X318: term,X319: subst] :
          ( ( $true
           != ( X316 @ one ) )
          & ! [X320: term] :
              ( ( X317 @ ( sub @ X320 @ ( push @ X318 @ X319 ) ) )
              = ( X316 @ X320 ) )
          & ( $true
            = ( X317 @ X318 ) ) ) )
    & ( ! [X316: term > $o,X317: term > $o,X318: term,X319: subst] :
          ( ( $true
            = ( X316 @ one ) )
          | ? [X320: term] :
              ( ( X317 @ ( sub @ X320 @ ( push @ X318 @ X319 ) ) )
             != ( X316 @ X320 ) )
          | ( $true
           != ( X317 @ X318 ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ! [X413: subst] :
          ( ( comp @ X413 @ id )
          = X413 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ? [X413: subst] :
          ( ( comp @ X413 @ id )
         != X413 ) )
    & ( pushprop_gthm = $true )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP13 ) )
    & ( ( $true = sP13 )
      | ( hoaslaminj_lthm != $true ) )
    & ( hoaslamnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj2 = $true )
      | ? [X206: term,X207: term,X208: term,X209: term] :
          ( ( ( ap @ ( sub @ X206 @ id ) @ X208 )
            = ( ap @ ( sub @ X207 @ id ) @ X209 ) )
          & ( X208 != X209 ) ) )
    & ( ! [X206: term,X207: term,X208: term,X209: term] :
          ( ( ( ap @ ( sub @ X206 @ id ) @ X208 )
           != ( ap @ ( sub @ X207 @ id ) @ X209 ) )
          | ( X208 = X209 ) )
      | ( hoasapinj2 != $true ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X184: term] :
            ( ( sub @ X184 @ id )
            = X184 )
        & ! [X174: subst > term > subst > $o] :
          ? [X175: term > $o] :
          ! [X176: term] :
            ( ( X174 @ id @ X176 @ id )
            = ( X175 @ X176 ) )
        & ( $true != sP9 )
        & ( $true != sP11 )
        & ( $true != sP10 ) ) )
    & ( ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 )
      | ? [X174: subst > term > subst > $o] :
        ! [X175: term > $o] :
        ? [X176: term] :
          ( ( X174 @ id @ X176 @ id )
         != ( X175 @ X176 ) )
      | ( $true = sP9 )
      | ( $true = sP11 )
      | ( $true = sP10 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( $true = sP2 )
      | ( $true = sP3 )
      | ? [X58: term] :
          ( ( sub @ X58 @ id )
         != X58 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP2 )
        & ( $true != sP3 )
        & ! [X58: term] :
            ( ( sub @ X58 @ id )
            = X58 ) ) )
    & ( hoasinduction_lem1_lthm = $true ) ),
    inference(flattening,[status(thm)],[f666]) ).

thf(f666,plain,
    ( ( ( $true = sP108 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP108 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ? [X243: term] :
          ( ( sub @ X243 @ id )
         != X243 )
      | ( $true = sP104 )
      | ( $true = sP103 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X243: term] :
            ( ( sub @ X243 @ id )
            = X243 )
        & ( $true != sP104 )
        & ( $true != sP103 ) ) )
    & ( ! [X15: term,X16: term] :
          ( ( X15 = X16 )
          | ( ( lam @ X15 )
           != ( lam @ X16 ) ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X15: term,X16: term] :
          ( ( X15 != X16 )
          & ( ( lam @ X15 )
            = ( lam @ X16 ) ) ) )
    & ( ( induction2 = $true )
      | ( $true != sP98 ) )
    & ( ( $true = sP98 )
      | ( induction2 != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( sP95 != $true ) )
    & ( ( sP95 = $true )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( axclos = $true )
    & ! [X204: subst] :
      ? [X205: d_subst] :
        ( ( d2subst @ X205 )
        = X204 )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP90 ) )
    & ( ( $true = sP90 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ! [X17: term,X18: term] :
          ( ( X17 = X18 )
          | ( ( sub @ X17 @ sh )
           != ( sub @ X18 @ sh ) ) )
      | ( shinj != $true ) )
    & ( ( shinj = $true )
      | ? [X17: term,X18: term] :
          ( ( X17 != X18 )
          & ( ( sub @ X17 @ sh )
            = ( sub @ X18 @ sh ) ) ) )
    & ( ? [X19: term] :
          ( ( sub @ X19 @ id )
         != X19 )
      | ( $true = sP88 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ! [X19: term] :
            ( ( sub @ X19 @ id )
            = X19 )
        & ( $true != sP88 ) ) )
    & ( ( induction2lem_lthm = $true )
      | ( ( $true != sP84 )
        & ! [X324: subst,X325: term] :
            ( ( comp @ sh @ ( push @ X325 @ X324 ) )
            = X324 )
        & ! [X326: subst] :
            ( ( comp @ X326 @ id )
            = X326 )
        & ! [X322: subst,X323: term] :
            ( ( sub @ one @ ( push @ X323 @ X322 ) )
            = X323 )
        & ( $true != sP83 ) ) )
    & ( ( $true = sP84 )
      | ? [X324: subst,X325: term] :
          ( ( comp @ sh @ ( push @ X325 @ X324 ) )
         != X324 )
      | ? [X326: subst] :
          ( ( comp @ X326 @ id )
         != X326 )
      | ? [X322: subst,X323: term] :
          ( ( sub @ one @ ( push @ X323 @ X322 ) )
         != X323 )
      | ( $true = sP83 )
      | ( induction2lem_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) )
                = ( Y3 @ Y4 ) ) ) ) )
    & ( ( $true = sP78 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP78 ) )
    & ( ? [X445: term] :
          ( ( sub @ X445 @ id )
         != X445 )
      | ? [X441: term] :
        ! [X442: subst > term > term] :
        ? [X443: subst,X444: term] :
          ( ( X442 @ X443 @ X444 )
         != ( sub @ X441 @ ( push @ X444 @ X443 ) ) )
      | ( $true = sP76 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ! [X445: term] :
            ( ( sub @ X445 @ id )
            = X445 )
        & ! [X441: term] :
          ? [X442: subst > term > term] :
          ! [X443: subst,X444: term] :
            ( ( X442 @ X443 @ X444 )
            = ( sub @ X441 @ ( push @ X444 @ X443 ) ) )
        & ( $true != sP76 ) ) )
    & ( termmset_gthm = $true )
    & ( ( termmset_lthm = $true )
      | ( ! [X54: term] :
            ( ( sub @ X54 @ id )
            = X54 )
        & ? [X55: term] :
            ( ( sub @ X55 @ id )
           != X55 ) ) )
    & ( ? [X54: term] :
          ( ( sub @ X54 @ id )
         != X54 )
      | ! [X55: term] :
          ( ( sub @ X55 @ id )
          = X55 )
      | ( termmset_lthm != $true ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar = $true )
    & ! [X291: term] :
      ? [X292: d_term] :
        ( ( d2term @ X292 )
        = X291 )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X223: term] :
        ! [X224: subst > term > term] :
        ? [X225: term,X226: subst] :
          ( ( X224 @ X226 @ X225 )
         != ( sub @ X223 @ ( push @ X225 @ X226 ) ) ) )
    & ( ! [X223: term] :
        ? [X224: subst > term > term] :
        ! [X225: term,X226: subst] :
          ( ( X224 @ X226 @ X225 )
          = ( sub @ X223 @ ( push @ X225 @ X226 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( termmset = $true )
      | ? [X77: term] :
          ( ( sub @ X77 @ id )
         != X77 ) )
    & ( ! [X77: term] :
          ( ( sub @ X77 @ id )
          = X77 )
      | ( termmset != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X414: term] :
        ! [X415: subst > term > term] :
        ? [X416: term,X417: subst] :
          ( ( X415 @ X417 @ X416 )
         != ( sub @ X414 @ ( push @ X416 @ X417 ) ) ) )
    & ( ! [X414: term] :
        ? [X415: subst > term > term] :
        ! [X416: term,X417: subst] :
          ( ( X415 @ X417 @ X416 )
          = ( sub @ X414 @ ( push @ X416 @ X417 ) ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( $true != sP74 )
        & ! [X456: term] :
            ( ( sub @ X456 @ id )
            = X456 )
        & ( sP73 != $true ) ) )
    & ( ( $true = sP74 )
      | ? [X456: term] :
          ( ( sub @ X456 @ id )
         != X456 )
      | ( sP73 = $true )
      | ( induction2_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X151: subst > term > subst > $o] :
        ! [X152: term > $o] :
        ? [X153: term] :
          ( ( X152 @ X153 )
         != ( X151 @ id @ X153 @ id ) ) )
    & ( ! [X151: subst > term > subst > $o] :
        ? [X152: term > $o] :
        ! [X153: term] :
          ( ( X152 @ X153 )
          = ( X151 @ id @ X153 @ id ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( sP65 = $true )
      | ( $true = sP67 )
      | ( $true = sP68 )
      | ( $true = sP66 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( sP65 != $true )
        & ( $true != sP67 )
        & ( $true != sP68 )
        & ( $true != sP66 ) ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP52 )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( $true != sP52 ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ? [X420: term > $o,X421: term > $o,X422: term,X423: subst] :
            ( ( $true
              = ( X420 @ X422 ) )
            & ( $true
             != ( X421 @ one ) )
            & ! [X424: term] :
                ( ( X420 @ ( sub @ X424 @ ( push @ X422 @ X423 ) ) )
                = ( X421 @ X424 ) ) )
        & ! [X418: term,X419: subst] :
            ( ( sub @ one @ ( push @ X418 @ X419 ) )
            = X418 ) ) )
    & ( ! [X420: term > $o,X421: term > $o,X422: term,X423: subst] :
          ( ( $true
           != ( X420 @ X422 ) )
          | ( $true
            = ( X421 @ one ) )
          | ? [X424: term] :
              ( ( X420 @ ( sub @ X424 @ ( push @ X422 @ X423 ) ) )
             != ( X421 @ X424 ) ) )
      | ? [X418: term,X419: subst] :
          ( ( sub @ one @ ( push @ X418 @ X419 ) )
         != X418 )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( ( hoasinduction_lem3 = $true )
      | ( sP50 != $true ) )
    & ( ( sP50 = $true )
      | ( hoasinduction_lem3 != $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( induction2lem_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ! [X282: subst > term > subst > $o,X283: term] :
          ( ( $true
            = ( X282 @ id @ X283 @ id ) )
          | ( $true
            = ( sP46 @ X282 ) )
          | ( $true
            = ( sP45 @ X282 ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X282: subst > term > subst > $o,X283: term] :
          ( ( $true
           != ( X282 @ id @ X283 @ id ) )
          & ( $true
           != ( sP46 @ X282 ) )
          & ( $true
           != ( sP45 @ X282 ) ) ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( $true = sP44 )
      | ( induction2lem != $true ) )
    & ( ( induction2lem = $true )
      | ( $true != sP44 ) )
    & ( ulamvar1 != $true )
    & ( substmonoid_gthm = $true )
    & ! [X6: d_term] : ( d_one = X6 )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP41 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP41 ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP40 ) )
    & ( ( $true = sP40 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP37 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP37 ) )
    & ( apnotvar = $true )
    & ( ! [X52: term] :
        ? [X53: subst > term > term] :
          ( ( sub @ X52 @ ( push @ one @ sh ) )
          = ( X53 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X52: term] :
        ! [X53: subst > term > term] :
          ( ( sub @ X52 @ ( push @ one @ sh ) )
         != ( X53 @ sh @ one ) ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ulamvarsh = $true )
    & ( ! [X112: subst > term > term,X113: subst > term > term,X114: term,X115: subst] :
          ( ( ( lam @ ( X113 @ sh @ one ) )
           != ( lam @ ( X112 @ sh @ one ) ) )
          | ? [X119: subst,X120: term,X121: subst] :
              ( ( X113 @ ( comp @ X121 @ X119 ) @ ( sub @ X120 @ X119 ) )
             != ( sub @ ( X113 @ X121 @ X120 ) @ X119 ) )
          | ( ( X113 @ X115 @ X114 )
            = ( X112 @ X115 @ X114 ) )
          | ? [X116: subst,X117: term,X118: subst] :
              ( ( X112 @ ( comp @ X116 @ X118 ) @ ( sub @ X117 @ X118 ) )
             != ( sub @ ( X112 @ X116 @ X117 ) @ X118 ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X112: subst > term > term,X113: subst > term > term,X114: term,X115: subst] :
          ( ( ( lam @ ( X113 @ sh @ one ) )
            = ( lam @ ( X112 @ sh @ one ) ) )
          & ! [X119: subst,X120: term,X121: subst] :
              ( ( X113 @ ( comp @ X121 @ X119 ) @ ( sub @ X120 @ X119 ) )
              = ( sub @ ( X113 @ X121 @ X120 ) @ X119 ) )
          & ( ( X113 @ X115 @ X114 )
           != ( X112 @ X115 @ X114 ) )
          & ! [X116: subst,X117: term,X118: subst] :
              ( ( X112 @ ( comp @ X116 @ X118 ) @ ( sub @ X117 @ X118 ) )
              = ( sub @ ( X112 @ X116 @ X117 ) @ X118 ) ) ) )
    & ( ! [X0: term,X1: subst > term > term,X2: term] :
          ( ( ( lam @ ( X1 @ sh @ one ) )
           != ( ap @ ( sub @ X2 @ id ) @ X0 ) )
          | ? [X3: term,X4: subst,X5: subst] :
              ( ( X1 @ ( comp @ X4 @ X5 ) @ ( sub @ X3 @ X5 ) )
             != ( sub @ ( X1 @ X4 @ X3 ) @ X5 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X0: term,X1: subst > term > term,X2: term] :
          ( ( ( lam @ ( X1 @ sh @ one ) )
            = ( ap @ ( sub @ X2 @ id ) @ X0 ) )
          & ! [X3: term,X4: subst,X5: subst] :
              ( ( X1 @ ( comp @ X4 @ X5 ) @ ( sub @ X3 @ X5 ) )
              = ( sub @ ( X1 @ X4 @ X3 ) @ X5 ) ) ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( apinj2 = $true )
      | ? [X210: term,X211: term,X212: term,X213: term] :
          ( ( ( ap @ X213 @ X211 )
            = ( ap @ X212 @ X210 ) )
          & ( X210 != X211 ) ) )
    & ( ! [X210: term,X211: term,X212: term,X213: term] :
          ( ( ( ap @ X213 @ X211 )
           != ( ap @ X212 @ X210 ) )
          | ( X210 = X211 ) )
      | ( apinj2 != $true ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ? [X122: term,X123: term > $o,X124: subst] :
        ! [X125: term > $o] :
        ? [X126: term] :
          ( ( X123 @ ( sub @ X126 @ ( push @ X122 @ X124 ) ) )
         != ( X125 @ X126 ) ) )
    & ( ! [X122: term,X123: term > $o,X124: subst] :
        ? [X125: term > $o] :
        ! [X126: term] :
          ( ( X123 @ ( sub @ X126 @ ( push @ X122 @ X124 ) ) )
          = ( X125 @ X126 ) )
      | ( pushprop_lem0 != $true ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop_lthm_orig = $true )
    & ( ! [X96: subst] :
          ( ( push @ ( sub @ one @ X96 ) @ ( comp @ sh @ X96 ) )
          = X96 )
      | ( axscons != $true ) )
    & ( ( axscons = $true )
      | ? [X96: subst] :
          ( ( push @ ( sub @ one @ X96 ) @ ( comp @ sh @ X96 ) )
         != X96 ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( hoasapnotvar_gthm = $true )
    & ! [X75: d_subst,X76: d_subst] :
        ( ( ( d2subst @ X76 )
         != ( d2subst @ X75 ) )
        | ( X75 = X76 ) )
    & ( axabs = $true )
    & ! [X321: d_subst] : ( d_id = X321 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP34 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP34 ) )
    & ( ( ! [X56: subst] :
            ( ( comp @ X56 @ id )
            = X56 )
        & ! [X57: subst] :
            ( ( comp @ id @ X57 )
            = X57 ) )
      | ( substmonoid != $true ) )
    & ( ( substmonoid = $true )
      | ? [X56: subst] :
          ( ( comp @ X56 @ id )
         != X56 )
      | ? [X57: subst] :
          ( ( comp @ id @ X57 )
         != X57 ) )
    & ( ulamvarind = $true )
    & ( lamnotvar = $true )
    & ! [X280: d_term,X281: d_term] :
        ( ( ( d2term @ X281 )
         != ( d2term @ X280 ) )
        | ( X280 = X281 ) )
    & ( ( $true = sP32 )
      | ( $true = sP31 )
      | ? [X476: subst > term > subst > $o] :
        ! [X477: term > $o] :
        ? [X478: term] :
          ( ( X476 @ id @ X478 @ id )
         != ( X477 @ X478 ) )
      | ( $true = sP30 )
      | ? [X486: term] :
          ( ( sub @ X486 @ id )
         != X486 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ( $true != sP32 )
        & ( $true != sP31 )
        & ! [X476: subst > term > subst > $o] :
          ? [X477: term > $o] :
          ! [X478: term] :
            ( ( X476 @ id @ X478 @ id )
            = ( X477 @ X478 ) )
        & ( $true != sP30 )
        & ! [X486: term] :
            ( ( sub @ X486 @ id )
            = X486 ) ) )
    & ( hoaslamnotap_gthm = $true )
    & ( axapp = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X43: subst,X44: term] :
          ( ( sub @ one @ ( push @ X44 @ X43 ) )
          = X44 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X43: subst,X44: term] :
          ( ( sub @ one @ ( push @ X44 @ X43 ) )
         != X44 ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X438: term] :
        ! [X439: subst > term > term] :
          ( ( X439 @ sh @ one )
         != ( sub @ X438 @ ( push @ one @ sh ) ) ) )
    & ( ! [X438: term] :
        ? [X439: subst > term > term] :
          ( ( X439 @ sh @ one )
          = ( sub @ X438 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( axidl = $true )
      | ? [X440: subst] :
          ( ( comp @ id @ X440 )
         != X440 ) )
    & ( ! [X440: subst] :
          ( ( comp @ id @ X440 )
          = X440 )
      | ( axidl != $true ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X97: term > $o,X98: term,X99: subst,X100: term > $o,X101: term] :
          ( ( $true
            = ( X97 @ X101 ) )
          & ( $true
           != ( X100 @ ( sub @ X101 @ ( push @ X98 @ X99 ) ) ) ) ) )
    & ( ! [X97: term > $o,X98: term,X99: subst,X100: term > $o,X101: term] :
          ( ( $true
           != ( X97 @ X101 ) )
          | ( $true
            = ( X100 @ ( sub @ X101 @ ( push @ X98 @ X99 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X127: subst,X128: term] :
            ( ( sub @ one @ ( push @ X128 @ X127 ) )
            = X128 )
        & ? [X131: subst,X132: term,X133: term > $o,X134: term,X135: term > $o] :
            ( ( ( X135 @ X134 )
              = $true )
            & ( $true
             != ( X133 @ ( sub @ X134 @ ( push @ X132 @ X131 ) ) ) ) )
        & ! [X129: subst,X130: term] :
            ( ( comp @ sh @ ( push @ X130 @ X129 ) )
            = X129 ) ) )
    & ( ? [X127: subst,X128: term] :
          ( ( sub @ one @ ( push @ X128 @ X127 ) )
         != X128 )
      | ! [X131: subst,X132: term,X133: term > $o,X134: term,X135: term > $o] :
          ( ( ( X135 @ X134 )
           != $true )
          | ( $true
            = ( X133 @ ( sub @ X134 @ ( push @ X132 @ X131 ) ) ) ) )
      | ? [X129: subst,X130: term] :
          ( ( comp @ sh @ ( push @ X130 @ X129 ) )
         != X129 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X276: term,X277: term,X278: term,X279: term] :
          ( ( X276 = X279 )
          | ( ( ap @ X276 @ X277 )
           != ( ap @ X279 @ X278 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X276: term,X277: term,X278: term,X279: term] :
          ( ( X276 != X279 )
          & ( ( ap @ X276 @ X277 )
            = ( ap @ X279 @ X278 ) ) ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X38: term > $o,X39: term,X40: subst] :
        ! [X41: term > $o] :
        ? [X42: term] :
          ( ( X38 @ ( sub @ X42 @ ( push @ X39 @ X40 ) ) )
         != ( X41 @ X42 ) ) )
    & ( ! [X38: term > $o,X39: term,X40: subst] :
        ? [X41: term > $o] :
        ! [X42: term] :
          ( ( X38 @ ( sub @ X42 @ ( push @ X39 @ X40 ) ) )
          = ( X41 @ X42 ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( axvarid = $true )
      | ? [X214: term] :
          ( ( sub @ X214 @ id )
         != X214 ) )
    & ( ! [X214: term] :
          ( ( sub @ X214 @ id )
          = X214 )
      | ( axvarid != $true ) )
    & ( axmap = $true )
    & ( ( $true = sP22 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP22 ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP17 ) )
    & ( ( $true = sP17 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( lamnotap != $true )
    & ( ! [X314: subst,X315: term] :
          ( ( comp @ sh @ ( push @ X315 @ X314 ) )
          = X314 )
      | ( axshiftcons != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X314: subst,X315: term] :
          ( ( comp @ sh @ ( push @ X315 @ X314 ) )
         != X314 ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( induction2_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP15 )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( $true != sP15 ) )
    & ( axvarshift = $true )
    & ( ( hoasapinj1 = $true )
      | ? [X472: term,X473: term,X474: term,X475: term] :
          ( ( X472 != X475 )
          & ( ( ap @ ( sub @ X472 @ id ) @ X473 )
            = ( ap @ ( sub @ X475 @ id ) @ X474 ) ) ) )
    & ( ! [X472: term,X473: term,X474: term,X475: term] :
          ( ( X472 = X475 )
          | ( ( ap @ ( sub @ X472 @ id ) @ X473 )
           != ( ap @ ( sub @ X475 @ id ) @ X474 ) ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X305: subst > term > subst > $o] :
        ? [X306: term > $o] :
        ! [X307: term] :
          ( ( X305 @ id @ X307 @ id )
          = ( X306 @ X307 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X305: subst > term > subst > $o] :
        ! [X306: term > $o] :
        ? [X307: term] :
          ( ( X305 @ id @ X307 @ id )
         != ( X306 @ X307 ) ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X316: term > $o,X317: term > $o,X318: term,X319: subst] :
          ( ( $true
           != ( X316 @ one ) )
          & ! [X320: term] :
              ( ( X317 @ ( sub @ X320 @ ( push @ X318 @ X319 ) ) )
              = ( X316 @ X320 ) )
          & ( $true
            = ( X317 @ X318 ) ) ) )
    & ( ! [X316: term > $o,X317: term > $o,X318: term,X319: subst] :
          ( ( $true
            = ( X316 @ one ) )
          | ? [X320: term] :
              ( ( X317 @ ( sub @ X320 @ ( push @ X318 @ X319 ) ) )
             != ( X316 @ X320 ) )
          | ( $true
           != ( X317 @ X318 ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ! [X413: subst] :
          ( ( comp @ X413 @ id )
          = X413 )
      | ( axidr != $true ) )
    & ( ( axidr = $true )
      | ? [X413: subst] :
          ( ( comp @ X413 @ id )
         != X413 ) )
    & ( pushprop_gthm = $true )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP13 ) )
    & ( ( $true = sP13 )
      | ( hoaslaminj_lthm != $true ) )
    & ( hoaslamnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj2 = $true )
      | ? [X206: term,X207: term,X208: term,X209: term] :
          ( ( ( ap @ ( sub @ X206 @ id ) @ X208 )
            = ( ap @ ( sub @ X207 @ id ) @ X209 ) )
          & ( X208 != X209 ) ) )
    & ( ! [X206: term,X207: term,X208: term,X209: term] :
          ( ( ( ap @ ( sub @ X206 @ id ) @ X208 )
           != ( ap @ ( sub @ X207 @ id ) @ X209 ) )
          | ( X208 = X209 ) )
      | ( hoasapinj2 != $true ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ! [X184: term] :
            ( ( sub @ X184 @ id )
            = X184 )
        & ! [X174: subst > term > subst > $o] :
          ? [X175: term > $o] :
          ! [X176: term] :
            ( ( X174 @ id @ X176 @ id )
            = ( X175 @ X176 ) )
        & ( $true != sP9 )
        & ( $true != sP11 )
        & ( $true != sP10 ) ) )
    & ( ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 )
      | ? [X174: subst > term > subst > $o] :
        ! [X175: term > $o] :
        ? [X176: term] :
          ( ( X174 @ id @ X176 @ id )
         != ( X175 @ X176 ) )
      | ( $true = sP9 )
      | ( $true = sP11 )
      | ( $true = sP10 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( $true = sP2 )
      | ( $true = sP3 )
      | ? [X58: term] :
          ( ( sub @ X58 @ id )
         != X58 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP2 )
        & ( $true != sP3 )
        & ! [X58: term] :
            ( ( sub @ X58 @ id )
            = X58 ) ) )
    & ( hoasinduction_lem1_lthm = $true ) ),
    inference(nnf_transformation,[status(thm)],[f124]) ).

thf(f124,plain,
    ( ( ( $true = sP108 )
    <=> ( hoasinduction_lem3v2 = $true ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( ( ? [X243: term] :
            ( ( sub @ X243 @ id )
           != X243 )
        | ( $true = sP104 )
        | ( $true = sP103 ) )
    <=> ( hoasinduction_lem3_lthm = $true ) )
    & ( ! [X15: term,X16: term] :
          ( ( X15 = X16 )
          | ( ( lam @ X15 )
           != ( lam @ X16 ) ) )
    <=> ( laminj = $true ) )
    & ( ( induction2 = $true )
    <=> ( $true = sP98 ) )
    & ( ( hoasinduction_lem3a = $true )
    <=> ( sP95 = $true ) )
    & ( ( $true = sP93 )
    <=> ( hoasinduction_lem2v2 = $true ) )
    & ( axclos = $true )
    & ! [X204: subst] :
      ? [X205: d_subst] :
        ( ( d2subst @ X205 )
        = X204 )
    & ( ( hoasapinj1_lthm = $true )
    <=> ( $true = sP90 ) )
    & ( ! [X17: term,X18: term] :
          ( ( X17 = X18 )
          | ( ( sub @ X17 @ sh )
           != ( sub @ X18 @ sh ) ) )
    <=> ( shinj = $true ) )
    & ( ( ? [X19: term] :
            ( ( sub @ X19 @ id )
           != X19 )
        | ( $true = sP88 ) )
    <=> ( hoasinduction_lem3v2_lthm = $true ) )
    & ( ( induction2lem_lthm = $true )
    <=> ( ( $true = sP84 )
        | ? [X324: subst,X325: term] :
            ( ( comp @ sh @ ( push @ X325 @ X324 ) )
           != X324 )
        | ? [X326: subst] :
            ( ( comp @ X326 @ id )
           != X326 )
        | ? [X322: subst,X323: term] :
            ( ( sub @ one @ ( push @ X323 @ X322 ) )
           != X323 )
        | ( $true = sP83 ) ) )
    & ( 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 = sP78 )
    <=> ( hoasinduction_lem3aa = $true ) )
    & ( ( ? [X445: term] :
            ( ( sub @ X445 @ id )
           != X445 )
        | ? [X441: term] :
          ! [X442: subst > term > term] :
          ? [X443: subst,X444: term] :
            ( ( X442 @ X443 @ X444 )
           != ( sub @ X441 @ ( push @ X444 @ X443 ) ) )
        | ( $true = sP76 ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( termmset_gthm = $true )
    & ( ( termmset_lthm = $true )
    <=> ( ? [X54: term] :
            ( ( sub @ X54 @ id )
           != X54 )
        | ! [X55: term] :
            ( ( sub @ X55 @ id )
            = X55 ) ) )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( hoasapnotvar = $true )
    & ! [X291: term] :
      ? [X292: d_term] :
        ( ( d2term @ X292 )
        = X291 )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
    <=> ! [X223: term] :
        ? [X224: subst > term > term] :
        ! [X225: term,X226: subst] :
          ( ( X224 @ X226 @ X225 )
          = ( sub @ X223 @ ( push @ X225 @ X226 ) ) ) )
    & ( ( termmset = $true )
    <=> ! [X77: term] :
          ( ( sub @ X77 @ id )
          = X77 ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X414: term] :
        ? [X415: subst > term > term] :
        ! [X416: term,X417: subst] :
          ( ( X415 @ X417 @ X416 )
          = ( sub @ X414 @ ( push @ X416 @ X417 ) ) ) )
    & ( ( induction2_lthm = $true )
    <=> ( ( $true = sP74 )
        | ? [X456: term] :
            ( ( sub @ X456 @ id )
           != X456 )
        | ( sP73 = $true ) ) )
    & ( ( hoasinduction_lem0_lthm = $true )
    <=> ! [X151: subst > term > subst > $o] :
        ? [X152: term > $o] :
        ! [X153: term] :
          ( ( X152 @ X153 )
          = ( X151 @ id @ X153 @ id ) ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( ( ( sP65 = $true )
        | ( $true = sP67 )
        | ( $true = sP68 )
        | ( $true = sP66 ) )
    <=> ( hoasinduction_lthm = $true ) )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( $true = sP52 )
    <=> ( hoasapinj2_lthm = $true ) )
    & ( hoasinduction_lem3_gthm = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ! [X420: term > $o,X421: term > $o,X422: term,X423: subst] :
            ( ( $true
             != ( X420 @ X422 ) )
            | ( $true
              = ( X421 @ one ) )
            | ? [X424: term] :
                ( ( X420 @ ( sub @ X424 @ ( push @ X422 @ X423 ) ) )
               != ( X421 @ X424 ) ) )
        | ? [X418: term,X419: subst] :
            ( ( sub @ one @ ( push @ X418 @ X419 ) )
           != X418 ) ) )
    & ( ( hoasinduction_lem3 = $true )
    <=> ( sP50 = $true ) )
    & ( hoasinduction_lem1 = $true )
    & ( induction2lem_gthm = $true )
    & ( pushprop_lem0_gthm = $true )
    & ( ! [X282: subst > term > subst > $o,X283: term] :
          ( ( $true
            = ( X282 @ id @ X283 @ id ) )
          | ( $true
            = ( sP46 @ X282 ) )
          | ( $true
            = ( sP45 @ X282 ) ) )
    <=> ( hoasinduction_no_psi_cond = $true ) )
    & ( hoasapinj1_gthm = $true )
    & ( hoasinduction_lem1_gthm = $true )
    & ( ( $true = sP44 )
    <=> ( induction2lem = $true ) )
    & ( ulamvar1 != $true )
    & ( substmonoid_gthm = $true )
    & ! [X6: d_term] : ( d_one = X6 )
    & ( pushprop_lem3v2 = $true )
    & ( ( $true = sP41 )
    <=> ( substmonoid_lthm = $true ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
    <=> ( $true = sP40 ) )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( $true = sP37 )
    <=> ( induction = $true ) )
    & ( apnotvar = $true )
    & ( ! [X52: term] :
        ? [X53: subst > term > term] :
          ( ( sub @ X52 @ ( push @ one @ sh ) )
          = ( X53 @ sh @ one ) )
    <=> ( hoasinduction_lem3b_lthm = $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( ulamvarsh = $true )
    & ( ! [X112: subst > term > term,X113: subst > term > term,X114: term,X115: subst] :
          ( ( ( lam @ ( X113 @ sh @ one ) )
           != ( lam @ ( X112 @ sh @ one ) ) )
          | ? [X119: subst,X120: term,X121: subst] :
              ( ( X113 @ ( comp @ X121 @ X119 ) @ ( sub @ X120 @ X119 ) )
             != ( sub @ ( X113 @ X121 @ X120 ) @ X119 ) )
          | ( ( X113 @ X115 @ X114 )
            = ( X112 @ X115 @ X114 ) )
          | ? [X116: subst,X117: term,X118: subst] :
              ( ( X112 @ ( comp @ X116 @ X118 ) @ ( sub @ X117 @ X118 ) )
             != ( sub @ ( X112 @ X116 @ X117 ) @ X118 ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( ! [X0: term,X1: subst > term > term,X2: term] :
          ( ( ( lam @ ( X1 @ sh @ one ) )
           != ( ap @ ( sub @ X2 @ id ) @ X0 ) )
          | ? [X3: term,X4: subst,X5: subst] :
              ( ( X1 @ ( comp @ X4 @ X5 ) @ ( sub @ X3 @ X5 ) )
             != ( sub @ ( X1 @ X4 @ X3 ) @ X5 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( apinj2 = $true )
    <=> ! [X210: term,X211: term,X212: term,X213: term] :
          ( ( ( ap @ X213 @ X211 )
           != ( ap @ X212 @ X210 ) )
          | ( X210 = X211 ) ) )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( d2subst @ d_id )
      = sh )
    & ( hoasapnotvar_lthm = $true )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
    <=> ! [X122: term,X123: term > $o,X124: subst] :
        ? [X125: term > $o] :
        ! [X126: term] :
          ( ( X123 @ ( sub @ X126 @ ( push @ X122 @ X124 ) ) )
          = ( X125 @ X126 ) ) )
    & ( pushprop_lem1_gthm = $true )
    & ( ( d2subst @ d_id )
      = id )
    & ( pushprop_lthm_orig = $true )
    & ( ! [X96: subst] :
          ( ( push @ ( sub @ one @ X96 ) @ ( comp @ sh @ X96 ) )
          = X96 )
    <=> ( axscons = $true ) )
    & ( pushprop_lem2v2 = $true )
    & ( pushprop = $true )
    & ( hoasapnotvar_gthm = $true )
    & ! [X75: d_subst,X76: d_subst] :
        ( ( ( d2subst @ X76 )
         != ( d2subst @ X75 ) )
        | ( X75 = X76 ) )
    & ( axabs = $true )
    & ! [X321: d_subst] : ( d_id = X321 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ( ( $true = sP34 )
    <=> ( hoasinduction_lem3aaa = $true ) )
    & ( ( ! [X56: subst] :
            ( ( comp @ X56 @ id )
            = X56 )
        & ! [X57: subst] :
            ( ( comp @ id @ X57 )
            = X57 ) )
    <=> ( substmonoid = $true ) )
    & ( ulamvarind = $true )
    & ( lamnotvar = $true )
    & ! [X280: d_term,X281: d_term] :
        ( ( ( d2term @ X281 )
         != ( d2term @ X280 ) )
        | ( X280 = X281 ) )
    & ( ( ( $true = sP32 )
        | ( $true = sP31 )
        | ? [X476: subst > term > subst > $o] :
          ! [X477: term > $o] :
          ? [X478: term] :
            ( ( X476 @ id @ X478 @ id )
           != ( X477 @ X478 ) )
        | ( $true = sP30 )
        | ? [X486: term] :
            ( ( sub @ X486 @ id )
           != X486 ) )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( hoaslamnotap_gthm = $true )
    & ( axapp = $true )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X43: subst,X44: term] :
          ( ( sub @ one @ ( push @ X44 @ X43 ) )
          = X44 )
    <=> ( axvarcons = $true ) )
    & ( ( hoasinduction_lem3b = $true )
    <=> ! [X438: term] :
        ? [X439: subst > term > term] :
          ( ( X439 @ sh @ one )
          = ( sub @ X438 @ ( push @ one @ sh ) ) ) )
    & ( ( axidl = $true )
    <=> ! [X440: subst] :
          ( ( comp @ id @ X440 )
          = X440 ) )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X97: term > $o,X98: term,X99: subst,X100: term > $o,X101: term] :
          ( ( $true
           != ( X97 @ X101 ) )
          | ( $true
            = ( X100 @ ( sub @ X101 @ ( push @ X98 @ X99 ) ) ) ) ) )
    & ( ( pushprop_lem1_lthm = $true )
    <=> ( ? [X127: subst,X128: term] :
            ( ( sub @ one @ ( push @ X128 @ X127 ) )
           != X128 )
        | ! [X131: subst,X132: term,X133: term > $o,X134: term,X135: term > $o] :
            ( ( ( X135 @ X134 )
             != $true )
            | ( $true
              = ( X133 @ ( sub @ X134 @ ( push @ X132 @ X131 ) ) ) ) )
        | ? [X129: subst,X130: term] :
            ( ( comp @ sh @ ( push @ X130 @ X129 ) )
           != X129 ) ) )
    & ( ! [X276: term,X277: term,X278: term,X279: term] :
          ( ( X276 = X279 )
          | ( ( ap @ X276 @ X277 )
           != ( ap @ X279 @ X278 ) ) )
    <=> ( apinj1 = $true ) )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( pushprop_lem0_lthm = $true )
    <=> ! [X38: term > $o,X39: term,X40: subst] :
        ? [X41: term > $o] :
        ! [X42: term] :
          ( ( X38 @ ( sub @ X42 @ ( push @ X39 @ X40 ) ) )
          = ( X41 @ X42 ) ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( ( axvarid = $true )
    <=> ! [X214: term] :
          ( ( sub @ X214 @ id )
          = X214 ) )
    & ( axmap = $true )
    & ( ( $true = sP22 )
    <=> ( hoasinduction = $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ( $true = sP17 ) )
    & ( hoasapinj2_gthm = $true )
    & ( lamnotap != $true )
    & ( ! [X314: subst,X315: term] :
          ( ( comp @ sh @ ( push @ X315 @ X314 ) )
          = X314 )
    <=> ( axshiftcons = $true ) )
    & ( hoasinduction_gthm = $true )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( induction2_gthm = $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ( $true = sP15 )
    <=> ( hoasinduction_lem3aa_lthm = $true ) )
    & ( axvarshift = $true )
    & ( ( hoasapinj1 = $true )
    <=> ! [X472: term,X473: term,X474: term,X475: term] :
          ( ( X472 = X475 )
          | ( ( ap @ ( sub @ X472 @ id ) @ X473 )
           != ( ap @ ( sub @ X475 @ id ) @ X474 ) ) ) )
    & ( pushprop_lthm = $true )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( ! [X305: subst > term > subst > $o] :
        ? [X306: term > $o] :
        ! [X307: term] :
          ( ( X305 @ id @ X307 @ id )
          = ( X306 @ X307 ) )
    <=> ( hoasinduction_lem0 = $true ) )
    & ( ( pushprop_lem1v2 = $true )
    <=> ! [X316: term > $o,X317: term > $o,X318: term,X319: subst] :
          ( ( $true
            = ( X316 @ one ) )
          | ? [X320: term] :
              ( ( X317 @ ( sub @ X320 @ ( push @ X318 @ X319 ) ) )
             != ( X316 @ X320 ) )
          | ( $true
           != ( X317 @ X318 ) ) ) )
    & ( ! [X413: subst] :
          ( ( comp @ X413 @ id )
          = X413 )
    <=> ( axidr = $true ) )
    & ( pushprop_gthm = $true )
    & ( ( hoaslaminj_lthm = $true )
    <=> ( $true = sP13 ) )
    & ( hoaslamnotvar = $true )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj2 = $true )
    <=> ! [X206: term,X207: term,X208: term,X209: term] :
          ( ( ( ap @ ( sub @ X206 @ id ) @ X208 )
           != ( ap @ ( sub @ X207 @ id ) @ X209 ) )
          | ( X208 = X209 ) ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ? [X184: term] :
            ( ( sub @ X184 @ id )
           != X184 )
        | ? [X174: subst > term > subst > $o] :
          ! [X175: term > $o] :
          ? [X176: term] :
            ( ( X174 @ id @ X176 @ id )
           != ( X175 @ X176 ) )
        | ( $true = sP9 )
        | ( $true = sP11 )
        | ( $true = sP10 ) ) )
    & ( ( ( $true = sP2 )
        | ( $true = sP3 )
        | ? [X58: term] :
            ( ( sub @ X58 @ id )
           != X58 ) )
    <=> ( hoasinduction_lem3a_lthm = $true ) )
    & ( hoasinduction_lem1_lthm = $true ) ),
    inference(definition_folding,[status(thm)],[f14,f123,f122,f121,f120,f119,f118,f117,f116,f115,f114,f113,f112,f111,f110,f109,f108,f107,f106,f105,f104,f103,f102,f101,f100,f99,f98,f97,f96,f95,f94,f93,f92,f91,f90,f89,f88,f87,f86,f85,f84,f83,f82,f81,f80,f79,f78,f77,f76,f75,f74,f73,f72,f71,f70,f69,f68,f67,f66,f65,f64,f63,f62,f61,f60,f59,f58,f57,f56,f55,f54,f53,f52,f51,f50,f49,f48,f47,f46,f45,f44,f43,f42,f41,f40,f39,f38,f37,f36,f35,f34,f33,f32,f31,f30,f29,f28,f27,f26,f25,f24,f23,f22,f21,f20,f19,f18,f17,f16,f15]) ).

thf(f15,plain,
    ! [X60: subst > term > subst > $o] :
      ( ( $true
        = ( sP0 @ X60 ) )
    <=> ! [X61: subst > term > term] :
          ( ( $true
            = ( X60 @ id @ ( lam @ ( X61 @ sh @ one ) ) @ id ) )
          | ? [X63: term,X64: subst,X65: subst] :
              ( ( sub @ ( X61 @ X65 @ X63 ) @ X64 )
             != ( X61 @ ( comp @ X65 @ X64 ) @ ( sub @ X63 @ X64 ) ) )
          | ? [X62: term] :
              ( ( $true
               != ( X60 @ id @ ( X61 @ id @ X62 ) @ id ) )
              & ( $true
                = ( X60 @ id @ X62 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f16,plain,
    ! [X67: subst > term > subst > $o] :
      ( ( $true
        = ( sP1 @ X67 ) )
    <=> ? [X70: subst > term > term] :
          ( ! [X72: subst,X73: subst,X74: term] :
              ( ( sub @ ( X70 @ X73 @ X74 ) @ X72 )
              = ( X70 @ ( comp @ X73 @ X72 ) @ ( sub @ X74 @ X72 ) ) )
          & ( $true
           != ( X67 @ id @ ( lam @ ( X70 @ sh @ one ) ) @ id ) )
          & ! [X71: term] :
              ( ( $true
                = ( X67 @ id @ ( X70 @ id @ X71 ) @ id ) )
              | ( $true
               != ( X67 @ id @ X71 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f17,plain,
    ( ( $true = sP2 )
  <=> ! [X67: subst > term > subst > $o,X68: term] :
        ( ( $true
          = ( X67 @ id @ ( lam @ X68 ) @ id ) )
        | ( $true
          = ( sP1 @ X67 ) )
        | ? [X69: term] :
            ( ( $true
             != ( X67 @ id @ ( sub @ X68 @ ( push @ X69 @ id ) ) @ id ) )
            & ( $true
              = ( X67 @ id @ X69 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f18,plain,
    ( ( $true = sP3 )
  <=> ? [X59: term,X60: subst > term > subst > $o] :
        ( ( $true
          = ( sP0 @ X60 ) )
        & ! [X66: term] :
            ( ( $true
             != ( X60 @ id @ X66 @ id ) )
            | ( $true
              = ( X60 @ id @ ( sub @ X59 @ ( push @ X66 @ id ) ) @ id ) ) )
        & ( $true
         != ( X60 @ id @ ( lam @ ( sub @ X59 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f19,plain,
    ! [X178: term > $o] :
      ( ( $true
        = ( sP4 @ X178 ) )
    <=> ! [X179: term,X180: term] :
          ( ( $true
           != ( X178 @ X179 ) )
          | ( $true
           != ( X178 @ X180 ) )
          | ( $true
            = ( X178 @ ( ap @ X179 @ X180 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f20,plain,
    ! [X178: term > $o] :
      ( ( $true
        = ( sP5 @ X178 ) )
    <=> ! [X182: term] :
          ( ? [X183: term] :
              ( ( $true
               != ( X178 @ ( sub @ X182 @ ( push @ X183 @ id ) ) ) )
              & ( $true
                = ( X178 @ X183 ) ) )
          | ( $true
            = ( X178 @ ( lam @ X182 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

thf(f24,plain,
    ( ( $true = sP9 )
  <=> ! [X195: term,X196: subst > term > subst > $o] :
        ( ( ( sP7 @ X196 )
          = $true )
        | ( $true
          = ( X196 @ id @ X195 @ id ) )
        | ( $true
          = ( sP8 @ X196 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f25,plain,
    ( ( $true = sP10 )
  <=> ? [X177: term,X178: term > $o] :
        ( ! [X181: term] :
            ( ( $true
             != ( var @ X181 ) )
            | ( $true
              = ( X178 @ X181 ) ) )
        & ( $true
          = ( sP5 @ X178 ) )
        & ( $true
          = ( sP4 @ X178 ) )
        & ( $true
         != ( X178 @ X177 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f27,plain,
    ( ( $true = sP12 )
  <=> ! [X521: subst > term > term,X522: subst,X523: subst > term > term,X524: term] :
        ( ? [X525: subst,X526: term,X527: subst] :
            ( ( X523 @ ( comp @ X527 @ X525 ) @ ( sub @ X526 @ X525 ) )
           != ( sub @ ( X523 @ X527 @ X526 ) @ X525 ) )
        | ( ( X521 @ X522 @ X524 )
          = ( X523 @ X522 @ X524 ) )
        | ? [X528: term,X529: subst,X530: subst] :
            ( ( sub @ ( X521 @ X529 @ X528 ) @ X530 )
           != ( X521 @ ( comp @ X529 @ X530 ) @ ( sub @ X528 @ X530 ) ) )
        | ( ( lam @ ( X523 @ sh @ one ) )
         != ( lam @ ( X521 @ sh @ one ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f29,plain,
    ! [X154: subst > term > subst > $o] :
      ( ( $true
        = ( sP14 @ X154 ) )
    <=> ? [X156: subst > term > term] :
          ( ! [X157: term] :
              ( ( $true
               != ( X154 @ id @ X157 @ id ) )
              | ( $true
                = ( X154 @ id @ ( X156 @ id @ X157 ) @ id ) ) )
          & ! [X158: term,X159: subst,X160: subst] :
              ( ( X156 @ ( comp @ X159 @ X160 ) @ ( sub @ X158 @ X160 ) )
              = ( sub @ ( X156 @ X159 @ X158 ) @ X160 ) )
          & ( $true
           != ( X154 @ id @ ( lam @ ( X156 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f30,plain,
    ( ( $true = sP15 )
  <=> ! [X154: subst > term > subst > $o,X155: term] :
        ( ( $true
          = ( sP14 @ X154 ) )
        | ? [X161: term] :
            ( ( ( X154 @ id @ ( sub @ X155 @ ( push @ X161 @ id ) ) @ id )
             != $true )
            & ( $true
              = ( X154 @ id @ X161 @ id ) ) )
        | ( $true
          = ( X154 @ id @ ( lam @ ( sub @ X155 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f31,plain,
    ! [X102: subst > term > subst > $o] :
      ( ( $true
        = ( sP16 @ X102 ) )
    <=> ? [X106: subst > term > term] :
          ( ! [X110: term] :
              ( ( $true
               != ( X102 @ id @ X110 @ id ) )
              | ( $true
                = ( X102 @ id @ ( X106 @ id @ X110 ) @ id ) ) )
          & ! [X107: term,X108: subst,X109: subst] :
              ( ( X106 @ ( comp @ X109 @ X108 ) @ ( sub @ X107 @ X108 ) )
              = ( sub @ ( X106 @ X109 @ X107 ) @ X108 ) )
          & ( $true
           != ( X102 @ id @ ( lam @ ( X106 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f32,plain,
    ( ( $true = sP17 )
  <=> ! [X102: subst > term > subst > $o,X103: term > $o,X104: term] :
        ( ( $true
          = ( X103 @ ( lam @ X104 ) ) )
        | ? [X111: term] :
            ( ( X102 @ id @ X111 @ id )
           != ( X103 @ X111 ) )
        | ( $true
          = ( sP16 @ X102 ) )
        | ? [X105: term] :
            ( ( $true
             != ( X103 @ ( sub @ X104 @ ( push @ X105 @ id ) ) ) )
            & ( $true
              = ( X103 @ X105 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f33,plain,
    ! [X79: subst > term > subst > $o] :
      ( ( $true
        = ( sP18 @ X79 ) )
    <=> ? [X80: subst > term > term] :
          ( ! [X84: term] :
              ( ( ( X79 @ id @ ( X80 @ id @ X84 ) @ id )
                = $true )
              | ( $true
               != ( X79 @ id @ X84 @ id ) ) )
          & ( $true
           != ( X79 @ id @ ( lam @ ( X80 @ sh @ one ) ) @ id ) )
          & ! [X81: subst,X82: term,X83: subst] :
              ( ( X80 @ ( comp @ X81 @ X83 ) @ ( sub @ X82 @ X83 ) )
              = ( sub @ ( X80 @ X81 @ X82 ) @ X83 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f34,plain,
    ! [X79: subst > term > subst > $o] :
      ( ( $true
        = ( sP19 @ X79 ) )
    <=> ? [X94: term,X95: term] :
          ( ( $true
            = ( X79 @ id @ X95 @ id ) )
          & ( $true
           != ( X79 @ id @ ( ap @ ( sub @ X94 @ id ) @ X95 ) @ id ) )
          & ( $true
            = ( X79 @ id @ X94 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f35,plain,
    ! [X79: subst > term > subst > $o] :
      ( ( $true
        = ( sP20 @ X79 ) )
    <=> ? [X85: subst,X86: subst,X87: term,X88: subst] :
          ( ( $true
            = ( X79 @ X85 @ X87 @ ( comp @ X86 @ X88 ) ) )
          & ( ( X79 @ ( comp @ X85 @ X86 ) @ ( sub @ X87 @ X86 ) @ X88 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f36,plain,
    ! [X79: subst > term > subst > $o] :
      ( ( $true
        = ( sP21 @ X79 ) )
    <=> ? [X90: subst,X91: subst,X92: subst,X93: term] :
          ( ( $true
           != ( X79 @ X91 @ X93 @ ( comp @ X92 @ X90 ) ) )
          & ( $true
            = ( X79 @ ( comp @ X91 @ X92 ) @ ( sub @ X93 @ X92 ) @ X90 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f37,plain,
    ( ( $true = sP22 )
  <=> ! [X78: term,X79: subst > term > subst > $o] :
        ( ? [X89: term] :
            ( ( $true
             != ( X79 @ id @ X89 @ id ) )
            & ( $true
              = ( var @ ( sub @ X89 @ id ) ) ) )
        | ( $true
          = ( sP19 @ X79 ) )
        | ( $true
          = ( sP21 @ X79 ) )
        | ( $true
          = ( sP20 @ X79 ) )
        | ( $true
          = ( X79 @ id @ X78 @ id ) )
        | ( $true
          = ( sP18 @ X79 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f38,plain,
    ! [X498: subst > term > subst > $o] :
      ( ( ( sP23 @ X498 )
        = $true )
    <=> ? [X499: subst > term > term] :
          ( ! [X500: term,X501: subst,X502: subst] :
              ( ( X499 @ ( comp @ X502 @ X501 ) @ ( sub @ X500 @ X501 ) )
              = ( sub @ ( X499 @ X502 @ X500 ) @ X501 ) )
          & ( $true
           != ( X498 @ id @ ( lam @ ( X499 @ sh @ one ) ) @ id ) )
          & ! [X503: term] :
              ( ( $true
               != ( X498 @ id @ X503 @ id ) )
              | ( $true
                = ( X498 @ id @ ( X499 @ id @ X503 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f39,plain,
    ! [X498: subst > term > subst > $o] :
      ( ( $true
        = ( sP24 @ X498 ) )
    <=> ? [X504: term,X505: term] :
          ( ( $true
            = ( X498 @ id @ X504 @ id ) )
          & ( $true
            = ( X498 @ id @ X505 @ id ) )
          & ( $true
           != ( X498 @ id @ ( ap @ ( sub @ X504 @ id ) @ X505 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f40,plain,
    ! [X498: subst > term > subst > $o] :
      ( ( $true
        = ( sP25 @ X498 ) )
    <=> ? [X514: term] :
          ( ( $true
           != ( X498 @ id @ X514 @ id ) )
          & ( $true
            = ( var @ ( sub @ X514 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f41,plain,
    ! [X498: subst > term > subst > $o] :
      ( ( $true
        = ( sP26 @ X498 ) )
    <=> ? [X506: subst,X507: subst,X508: term,X509: subst] :
          ( ( $true
           != ( X498 @ ( comp @ X509 @ X507 ) @ ( sub @ X508 @ X507 ) @ X506 ) )
          & ( $true
            = ( X498 @ X509 @ X508 @ ( comp @ X507 @ X506 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f42,plain,
    ! [X479: term > $o] :
      ( ( $true
        = ( sP27 @ X479 ) )
    <=> ! [X484: term,X485: term] :
          ( ( $true
           != ( X479 @ X485 ) )
          | ( $true
            = ( X479 @ ( ap @ X485 @ X484 ) ) )
          | ( ( X479 @ X484 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f43,plain,
    ! [X479: term > $o] :
      ( ( $true
        = ( sP28 @ X479 ) )
    <=> ! [X481: term] :
          ( ( $true
            = ( X479 @ ( lam @ X481 ) ) )
          | ? [X482: term] :
              ( ( $true
               != ( X479 @ ( sub @ X481 @ ( push @ X482 @ id ) ) ) )
              & ( $true
                = ( X479 @ X482 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f45,plain,
    ( ( $true = sP30 )
  <=> ! [X497: term,X498: subst > term > subst > $o] :
        ( ? [X510: subst,X511: term,X512: subst,X513: subst] :
            ( ( $true
             != ( X498 @ X513 @ X511 @ ( comp @ X512 @ X510 ) ) )
            & ( $true
              = ( X498 @ ( comp @ X513 @ X512 ) @ ( sub @ X511 @ X512 ) @ X510 ) ) )
        | ( $true
          = ( X498 @ id @ X497 @ id ) )
        | ( $true
          = ( sP26 @ X498 ) )
        | ( $true
          = ( sP25 @ X498 ) )
        | ( ( sP23 @ X498 )
          = $true )
        | ( $true
          = ( sP24 @ X498 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f46,plain,
    ( ( $true = sP31 )
  <=> ? [X479: term > $o,X480: term] :
        ( ! [X483: term] :
            ( ( ( var @ X483 )
             != $true )
            | ( $true
              = ( X479 @ X483 ) ) )
        & ( $true
         != ( X479 @ X480 ) )
        & ( $true
          = ( sP27 @ X479 ) )
        & ( $true
          = ( sP28 @ X479 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f47,plain,
    ( ( $true = sP32 )
  <=> ? [X487: term,X488: subst > term > subst > $o,X489: term > $o] :
        ( ( $true
          = ( sP29 @ X488 ) )
        & ( ( X489 @ ( lam @ X487 ) )
         != $true )
        & ! [X490: term] :
            ( ( $true
             != ( X489 @ X490 ) )
            | ( $true
              = ( X489 @ ( sub @ X487 @ ( push @ X490 @ id ) ) ) ) )
        & ! [X496: term] :
            ( ( X488 @ id @ X496 @ id )
            = ( X489 @ X496 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f49,plain,
    ( ( $true = sP34 )
  <=> ! [X162: subst > term > subst > $o,X163: term] :
        ( ? [X173: term] :
            ( ( $true
             != ( X162 @ id @ ( sub @ X163 @ ( push @ X173 @ id ) ) @ id ) )
            & ( ( X162 @ id @ X173 @ id )
              = $true ) )
        | ( $true
          = ( sP33 @ X162 ) )
        | ( $true
          = ( X162 @ id @ ( lam @ ( sub @ X163 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f50,plain,
    ! [X309: term > $o] :
      ( ( $true
        = ( sP35 @ X309 ) )
    <=> ? [X310: term,X311: term] :
          ( ( $true
           != ( X309 @ ( ap @ X311 @ X310 ) ) )
          & ( $true
            = ( X309 @ X311 ) )
          & ( $true
            = ( X309 @ X310 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f51,plain,
    ! [X309: term > $o] :
      ( ( $true
        = ( sP36 @ X309 ) )
    <=> ? [X312: term] :
          ( ( $true
           != ( X309 @ X312 ) )
          & ( $true
            = ( var @ X312 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f52,plain,
    ( ( $true = sP37 )
  <=> ! [X308: term,X309: term > $o] :
        ( ? [X313: term] :
            ( ( $true
             != ( X309 @ ( lam @ X313 ) ) )
            & ( $true
              = ( X309 @ X313 ) ) )
        | ( $true
          = ( sP36 @ X309 ) )
        | ( $true
          = ( X309 @ X308 ) )
        | ( $true
          = ( sP35 @ X309 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f54,plain,
    ! [X425: subst > term > subst > $o] :
      ( ( $true
        = ( sP39 @ X425 ) )
    <=> ? [X428: subst,X429: term,X430: subst,X431: subst] :
          ( ( $true
            = ( X425 @ X431 @ X429 @ ( comp @ X428 @ X430 ) ) )
          & ( $true
           != ( X425 @ ( comp @ X431 @ X428 ) @ ( sub @ X429 @ X428 ) @ X430 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f55,plain,
    ( ( $true = sP40 )
  <=> ! [X425: subst > term > subst > $o,X426: term,X427: term] :
        ( ( $true
          = ( X425 @ id @ ( ap @ X427 @ X426 ) @ id ) )
        | ( $true
          = ( sP38 @ X425 ) )
        | ? [X434: term,X435: subst,X436: subst,X437: subst] :
            ( ( $true
              = ( X425 @ ( comp @ X435 @ X437 ) @ ( sub @ X434 @ X437 ) @ X436 ) )
            & ( $true
             != ( X425 @ X435 @ X434 @ ( comp @ X437 @ X436 ) ) ) )
        | ( $true
         != ( X425 @ id @ X427 @ id ) )
        | ( $true
          = ( sP39 @ X425 ) )
        | ( ( X425 @ id @ X426 @ id )
         != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f56,plain,
    ( ( $true = sP41 )
  <=> ( ( ! [X304: subst] :
            ( ( comp @ X304 @ id )
            = X304 )
        & ! [X303: subst] :
            ( ( comp @ id @ X303 )
            = X303 ) )
      | ? [X302: subst] :
          ( ( comp @ X302 @ id )
         != X302 )
      | ? [X301: subst] :
          ( ( comp @ id @ X301 )
         != X301 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f57,plain,
    ! [X293: term > $o] :
      ( ( $true
        = ( sP42 @ X293 ) )
    <=> ? [X298: term] :
          ( ! [X299: term] :
              ( ( ( X293 @ ( sub @ X298 @ ( push @ X299 @ id ) ) )
                = $true )
              | ( $true
               != ( X293 @ X299 ) ) )
          & ( $true
           != ( X293 @ ( lam @ X298 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f58,plain,
    ! [X293: term > $o] :
      ( ( $true
        = ( sP43 @ X293 ) )
    <=> ? [X296: term,X297: term] :
          ( ( $true
            = ( X293 @ X296 ) )
          & ( ( X293 @ X297 )
            = $true )
          & ( $true
           != ( X293 @ ( ap @ X297 @ X296 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f59,plain,
    ( ( $true = sP44 )
  <=> ! [X293: term > $o,X294: subst,X295: term] :
        ( ( $true
          = ( sP43 @ X293 ) )
        | ? [X300: term] :
            ( ( $true
             != ( X293 @ ( sub @ X300 @ X294 ) ) )
            & ( $true
              = ( var @ X300 ) ) )
        | ( $true
          = ( sP42 @ X293 ) )
        | ( $true
          = ( X293 @ ( sub @ X295 @ X294 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f60,plain,
    ! [X282: subst > term > subst > $o] :
      ( ( $true
        = ( sP45 @ X282 ) )
    <=> ? [X284: subst > term > term] :
          ( ( $true
           != ( X282 @ id @ ( lam @ ( X284 @ sh @ one ) ) @ id ) )
          & ! [X285: term] :
              ( ( $true
                = ( X282 @ id @ ( X284 @ id @ X285 ) @ id ) )
              | ( $true
               != ( X282 @ id @ X285 @ id ) ) )
          & ! [X286: term,X287: subst,X288: subst] :
              ( ( sub @ ( X284 @ X287 @ X286 ) @ X288 )
              = ( X284 @ ( comp @ X287 @ X288 ) @ ( sub @ X286 @ X288 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f61,plain,
    ! [X282: subst > term > subst > $o] :
      ( ( $true
        = ( sP46 @ X282 ) )
    <=> ? [X289: term,X290: term] :
          ( ( $true
            = ( X282 @ id @ X289 @ id ) )
          & ( $true
            = ( X282 @ id @ X290 @ id ) )
          & ( $true
           != ( X282 @ id @ ( ap @ ( sub @ X289 @ id ) @ X290 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f62,plain,
    ! [X228: subst > term > subst > $o] :
      ( ( $true
        = ( sP47 @ X228 ) )
    <=> ? [X234: subst > term > term] :
          ( ! [X235: term] :
              ( ( $true
               != ( X228 @ id @ X235 @ id ) )
              | ( $true
                = ( X228 @ id @ ( X234 @ id @ X235 ) @ id ) ) )
          & ! [X236: subst,X237: subst,X238: term] :
              ( ( sub @ ( X234 @ X237 @ X238 ) @ X236 )
              = ( X234 @ ( comp @ X237 @ X236 ) @ ( sub @ X238 @ X236 ) ) )
          & ( $true
           != ( X228 @ id @ ( lam @ ( X234 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f63,plain,
    ! [X228: subst > term > subst > $o] :
      ( ( $true
        = ( sP48 @ X228 ) )
    <=> ? [X239: subst,X240: term,X241: subst,X242: subst] :
          ( ( $true
           != ( X228 @ X239 @ X240 @ ( comp @ X242 @ X241 ) ) )
          & ( $true
            = ( X228 @ ( comp @ X239 @ X242 ) @ ( sub @ X240 @ X242 ) @ X241 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f64,plain,
    ! [X228: subst > term > subst > $o] :
      ( ( $true
        = ( sP49 @ X228 ) )
    <=> ? [X229: term,X230: subst,X231: subst,X232: subst] :
          ( ( $true
            = ( X228 @ X230 @ X229 @ ( comp @ X231 @ X232 ) ) )
          & ( $true
           != ( X228 @ ( comp @ X230 @ X231 ) @ ( sub @ X229 @ X231 ) @ X232 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f65,plain,
    ( ( sP50 = $true )
  <=> ! [X227: term,X228: subst > term > subst > $o] :
        ( ? [X233: term] :
            ( ( $true
             != ( X228 @ id @ ( sub @ X227 @ ( push @ X233 @ id ) ) @ id ) )
            & ( $true
              = ( X228 @ id @ X233 @ id ) ) )
        | ( $true
          = ( sP49 @ X228 ) )
        | ( $true
          = ( sP48 @ X228 ) )
        | ( $true
          = ( sP47 @ X228 ) )
        | ( $true
          = ( X228 @ id @ ( lam @ X227 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f66,plain,
    ( ( $true = sP51 )
  <=> ! [X272: term,X273: term,X274: term,X275: term] :
        ( ( X272 = X273 )
        | ( ( ap @ ( sub @ X274 @ id ) @ X272 )
         != ( ap @ ( sub @ X275 @ id ) @ X273 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f67,plain,
    ( ( $true = sP52 )
  <=> ( ? [X268: term,X269: term,X270: term,X271: term] :
          ( ( ( ap @ X268 @ X269 )
            = ( ap @ X271 @ X270 ) )
          & ( X269 != X270 ) )
      | ( $true = sP51 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f68,plain,
    ! [X350: subst > term > subst > $o] :
      ( ( $true
        = ( sP53 @ X350 ) )
    <=> ! [X355: term,X356: term] :
          ( ( $true
           != ( X350 @ id @ X355 @ id ) )
          | ( $true
            = ( X350 @ id @ ( ap @ ( sub @ X356 @ id ) @ X355 ) @ id ) )
          | ( $true
           != ( X350 @ id @ X356 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f69,plain,
    ! [X350: subst > term > subst > $o] :
      ( ( $true
        = ( sP54 @ X350 ) )
    <=> ! [X351: term,X352: subst,X353: subst,X354: subst] :
          ( ( $true
            = ( X350 @ X353 @ X351 @ ( comp @ X352 @ X354 ) ) )
          | ( $true
           != ( X350 @ ( comp @ X353 @ X352 ) @ ( sub @ X351 @ X352 ) @ X354 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f70,plain,
    ! [X342: term > $o] :
      ( ( $true
        = ( sP55 @ X342 ) )
    <=> ! [X346: term,X347: term] :
          ( ( $true
            = ( X342 @ ( ap @ X347 @ X346 ) ) )
          | ( $true
           != ( X342 @ X346 ) )
          | ( $true
           != ( X342 @ X347 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f71,plain,
    ! [X342: term > $o] :
      ( ( $true
        = ( sP56 @ X342 ) )
    <=> ! [X343: term] :
          ( ( ( var @ X343 )
           != $true )
          | ( $true
            = ( X342 @ X343 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f72,plain,
    ! [X342: term > $o] :
      ( ( $true
        = ( sP57 @ X342 ) )
    <=> ! [X344: term] :
          ( ? [X345: term] :
              ( ( $true
               != ( X342 @ ( sub @ X344 @ ( push @ X345 @ id ) ) ) )
              & ( $true
                = ( X342 @ X345 ) ) )
          | ( ( X342 @ ( lam @ X344 ) )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f74,plain,
    ! [X361: subst > term > subst > $o] :
      ( ( ( sP59 @ X361 )
        = $true )
    <=> ! [X363: subst,X364: term,X365: subst,X366: subst] :
          ( ( $true
            = ( X361 @ ( comp @ X366 @ X363 ) @ ( sub @ X364 @ X363 ) @ X365 ) )
          | ( ( X361 @ X366 @ X364 @ ( comp @ X363 @ X365 ) )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f75,plain,
    ! [X361: subst > term > subst > $o] :
      ( ( $true
        = ( sP60 @ X361 ) )
    <=> ! [X367: subst,X368: subst,X369: term,X370: subst] :
          ( ( $true
            = ( X361 @ X370 @ X369 @ ( comp @ X367 @ X368 ) ) )
          | ( $true
           != ( X361 @ ( comp @ X370 @ X367 ) @ ( sub @ X369 @ X367 ) @ X368 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f77,plain,
    ! [X377: subst > term > subst > $o] :
      ( ( $true
        = ( sP62 @ X377 ) )
    <=> ? [X393: term,X394: term] :
          ( ( $true
            = ( X377 @ id @ X394 @ id ) )
          & ( $true
           != ( X377 @ id @ ( ap @ ( sub @ X394 @ id ) @ X393 ) @ id ) )
          & ( $true
            = ( X377 @ id @ X393 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f78,plain,
    ! [X377: subst > term > subst > $o] :
      ( ( $true
        = ( sP63 @ X377 ) )
    <=> ? [X388: term] :
          ( ( $true
            = ( var @ ( sub @ X388 @ id ) ) )
          & ( $true
           != ( X377 @ id @ X388 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f79,plain,
    ! [X377: subst > term > subst > $o] :
      ( ( $true
        = ( sP64 @ X377 ) )
    <=> ? [X384: subst,X385: subst,X386: term,X387: subst] :
          ( ( $true
           != ( X377 @ ( comp @ X384 @ X387 ) @ ( sub @ X386 @ X387 ) @ X385 ) )
          & ( $true
            = ( X377 @ X384 @ X386 @ ( comp @ X387 @ X385 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f80,plain,
    ( ( sP65 = $true )
  <=> ! [X377: subst > term > subst > $o,X378: term] :
        ( ? [X389: subst,X390: term,X391: subst,X392: subst] :
            ( ( $true
             != ( X377 @ X389 @ X390 @ ( comp @ X392 @ X391 ) ) )
            & ( $true
              = ( X377 @ ( comp @ X389 @ X392 ) @ ( sub @ X390 @ X392 ) @ X391 ) ) )
        | ( $true
          = ( sP62 @ X377 ) )
        | ( $true
          = ( X377 @ id @ X378 @ id ) )
        | ( $true
          = ( sP64 @ X377 ) )
        | ( $true
          = ( sP61 @ X377 ) )
        | ( $true
          = ( sP63 @ X377 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f81,plain,
    ( ( $true = sP66 )
  <=> ? [X348: term,X349: term,X350: subst > term > subst > $o] :
        ( ( $true
          = ( sP53 @ X350 ) )
        & ( $true
          = ( X350 @ id @ X348 @ id ) )
        & ( $true
          = ( X350 @ id @ X349 @ id ) )
        & ( $true
         != ( X350 @ id @ ( ap @ X348 @ X349 ) @ id ) )
        & ! [X357: subst,X358: subst,X359: subst,X360: term] :
            ( ( $true
              = ( X350 @ ( comp @ X357 @ X358 ) @ ( sub @ X360 @ X358 ) @ X359 ) )
            | ( ( X350 @ X357 @ X360 @ ( comp @ X358 @ X359 ) )
             != $true ) )
        & ( $true
          = ( sP54 @ X350 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f82,plain,
    ( ( $true = sP67 )
  <=> ? [X361: subst > term > subst > $o,X362: term] :
        ( ( $true
          = ( sP58 @ X361 ) )
        & ( $true
         != ( X361 @ id @ ( lam @ X362 ) @ id ) )
        & ! [X371: term] :
            ( ( ( X361 @ id @ ( sub @ X362 @ ( push @ X371 @ id ) ) @ id )
              = $true )
            | ( $true
             != ( X361 @ id @ X371 @ id ) ) )
        & ( $true
          = ( sP60 @ X361 ) )
        & ( ( sP59 @ X361 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f83,plain,
    ( ( $true = sP68 )
  <=> ? [X341: term,X342: term > $o] :
        ( ( $true
         != ( X342 @ X341 ) )
        & ( $true
          = ( sP57 @ X342 ) )
        & ( $true
          = ( sP56 @ X342 ) )
        & ( $true
          = ( sP55 @ X342 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f84,plain,
    ! [X466: term > $o] :
      ( ( $true
        = ( sP69 @ X466 ) )
    <=> ? [X470: term] :
          ( ! [X471: term] :
              ( ( ( X466 @ X471 )
               != $true )
              | ( $true
                = ( X466 @ ( sub @ X470 @ ( push @ X471 @ id ) ) ) ) )
          & ( $true
           != ( X466 @ ( lam @ X470 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f85,plain,
    ! [X466: term > $o] :
      ( ( $true
        = ( sP70 @ X466 ) )
    <=> ? [X467: term,X468: term] :
          ( ( $true
            = ( X466 @ X467 ) )
          & ( ( X466 @ ( ap @ X467 @ X468 ) )
           != $true )
          & ( $true
            = ( X466 @ X468 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f86,plain,
    ! [X457: term > $o] :
      ( ( $true
        = ( sP71 @ X457 ) )
    <=> ! [X463: term,X464: term] :
          ( ( $true
           != ( X457 @ X463 ) )
          | ( $true
           != ( X457 @ X464 ) )
          | ( $true
            = ( X457 @ ( ap @ X464 @ X463 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f87,plain,
    ! [X457: term > $o] :
      ( ( $true
        = ( sP72 @ X457 ) )
    <=> ! [X461: term] :
          ( ( $true
            = ( X457 @ ( lam @ X461 ) ) )
          | ? [X462: term] :
              ( ( $true
               != ( X457 @ ( sub @ X461 @ ( push @ X462 @ id ) ) ) )
              & ( $true
                = ( X457 @ X462 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f88,plain,
    ( ( sP73 = $true )
  <=> ! [X465: term,X466: term > $o] :
        ( ? [X469: term] :
            ( ( $true
              = ( var @ X469 ) )
            & ( $true
             != ( X466 @ X469 ) ) )
        | ( $true
          = ( X466 @ X465 ) )
        | ( $true
          = ( sP70 @ X466 ) )
        | ( $true
          = ( sP69 @ X466 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f89,plain,
    ( ( $true = sP74 )
  <=> ? [X457: term > $o,X458: term,X459: subst] :
        ( ! [X460: term] :
            ( ( $true
              = ( X457 @ ( sub @ X460 @ X459 ) ) )
            | ( $true
             != ( var @ X460 ) ) )
        & ( $true
          = ( sP72 @ X457 ) )
        & ( $true
         != ( X457 @ ( sub @ X458 @ X459 ) ) )
        & ( $true
          = ( sP71 @ X457 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f91,plain,
    ( ( $true = sP76 )
  <=> ! [X446: term,X447: subst > term > subst > $o,X448: term > $o] :
        ( ? [X450: term] :
            ( ( $true
             != ( X448 @ ( sub @ X446 @ ( push @ X450 @ id ) ) ) )
            & ( $true
              = ( X448 @ X450 ) ) )
        | ( $true
          = ( X448 @ ( lam @ X446 ) ) )
        | ? [X449: term] :
            ( ( X447 @ id @ X449 @ id )
           != ( X448 @ X449 ) )
        | ( $true
          = ( sP75 @ X447 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f92,plain,
    ! [X215: subst > term > subst > $o] :
      ( ( $true
        = ( sP77 @ X215 ) )
    <=> ? [X217: subst > term > term] :
          ( ! [X219: term,X220: subst,X221: subst] :
              ( ( sub @ ( X217 @ X220 @ X219 ) @ X221 )
              = ( X217 @ ( comp @ X220 @ X221 ) @ ( sub @ X219 @ X221 ) ) )
          & ( ( X215 @ id @ ( lam @ ( X217 @ sh @ one ) ) @ id )
           != $true )
          & ! [X218: term] :
              ( ( $true
                = ( X215 @ id @ ( X217 @ id @ X218 ) @ id ) )
              | ( $true
               != ( X215 @ id @ X218 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f93,plain,
    ( ( $true = sP78 )
  <=> ! [X215: subst > term > subst > $o,X216: term] :
        ( ? [X222: term] :
            ( ( $true
              = ( X215 @ id @ X222 @ id ) )
            & ( $true
             != ( X215 @ id @ ( sub @ X216 @ ( push @ X222 @ id ) ) @ id ) ) )
        | ( $true
          = ( X215 @ id @ ( lam @ ( sub @ X216 @ ( push @ one @ sh ) ) ) @ id ) )
        | ( $true
          = ( sP77 @ X215 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f94,plain,
    ! [X335: term > $o] :
      ( ( $true
        = ( sP79 @ X335 ) )
    <=> ? [X339: term] :
          ( ! [X340: term] :
              ( ( $true
                = ( X335 @ ( sub @ X339 @ ( push @ X340 @ id ) ) ) )
              | ( ( X335 @ X340 )
               != $true ) )
          & ( $true
           != ( X335 @ ( lam @ X339 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f95,plain,
    ! [X335: term > $o] :
      ( ( $true
        = ( sP80 @ X335 ) )
    <=> ? [X337: term,X338: term] :
          ( ( $true
            = ( X335 @ X337 ) )
          & ( $true
            = ( X335 @ X338 ) )
          & ( $true
           != ( X335 @ ( ap @ X338 @ X337 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f96,plain,
    ! [X327: term > $o] :
      ( ( $true
        = ( sP81 @ X327 ) )
    <=> ! [X330: term,X331: term] :
          ( ( $true
           != ( X327 @ X331 ) )
          | ( $true
           != ( X327 @ X330 ) )
          | ( $true
            = ( X327 @ ( ap @ X331 @ X330 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f97,plain,
    ! [X327: term > $o] :
      ( ( $true
        = ( sP82 @ X327 ) )
    <=> ! [X332: term] :
          ( ( $true
            = ( X327 @ ( lam @ X332 ) ) )
          | ( $true
           != ( X327 @ X332 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f98,plain,
    ( ( $true = sP83 )
  <=> ! [X333: subst,X334: term,X335: term > $o] :
        ( ( $true
          = ( sP79 @ X335 ) )
        | ( $true
          = ( X335 @ ( sub @ X334 @ X333 ) ) )
        | ( $true
          = ( sP80 @ X335 ) )
        | ? [X336: term] :
            ( ( $true
             != ( X335 @ ( sub @ X336 @ X333 ) ) )
            & ( $true
              = ( var @ X336 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f99,plain,
    ( ( $true = sP84 )
  <=> ? [X327: term > $o,X328: term] :
        ( ( $true
         != ( X327 @ X328 ) )
        & ! [X329: term] :
            ( ( $true
             != ( var @ X329 ) )
            | ( $true
              = ( X327 @ X329 ) ) )
        & ( $true
          = ( sP82 @ X327 ) )
        & ( $true
          = ( sP81 @ X327 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f101,plain,
    ! [X21: subst > term > subst > $o] :
      ( ( $true
        = ( sP86 @ X21 ) )
    <=> ? [X29: subst,X30: subst,X31: subst,X32: term] :
          ( ( $true
            = ( X21 @ ( comp @ X30 @ X31 ) @ ( sub @ X32 @ X31 ) @ X29 ) )
          & ( $true
           != ( X21 @ X30 @ X32 @ ( comp @ X31 @ X29 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f102,plain,
    ! [X21: subst > term > subst > $o] :
      ( ( $true
        = ( sP87 @ X21 ) )
    <=> ? [X33: term,X34: subst,X35: subst,X36: subst] :
          ( ( $true
            = ( X21 @ X35 @ X33 @ ( comp @ X36 @ X34 ) ) )
          & ( $true
           != ( X21 @ ( comp @ X35 @ X36 ) @ ( sub @ X33 @ X36 ) @ X34 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f103,plain,
    ( ( $true = sP88 )
  <=> ! [X20: term > $o,X21: subst > term > subst > $o,X22: term] :
        ( ( $true
          = ( X20 @ ( lam @ X22 ) ) )
        | ( $true
          = ( sP85 @ X21 ) )
        | ? [X28: term] :
            ( ( $true
             != ( X20 @ ( sub @ X22 @ ( push @ X28 @ id ) ) ) )
            & ( $true
              = ( X20 @ X28 ) ) )
        | ( $true
          = ( sP87 @ X21 ) )
        | ( $true
          = ( sP86 @ X21 ) )
        | ? [X37: term] :
            ( ( X20 @ X37 )
           != ( X21 @ id @ X37 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f104,plain,
    ( ( $true = sP89 )
  <=> ! [X536: term,X537: term,X538: term,X539: term] :
        ( ( ( ap @ ( sub @ X536 @ id ) @ X539 )
         != ( ap @ ( sub @ X537 @ id ) @ X538 ) )
        | ( X536 = X537 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f105,plain,
    ( ( $true = sP90 )
  <=> ( ( $true = sP89 )
      | ? [X531: term] :
          ( ( sub @ X531 @ id )
         != X531 )
      | ? [X532: term,X533: term,X534: term,X535: term] :
          ( ( X533 != X534 )
          & ( ( ap @ X534 @ X535 )
            = ( ap @ X533 @ X532 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f106,plain,
    ! [X139: subst > term > subst > $o] :
      ( ( ( sP91 @ X139 )
        = $true )
    <=> ? [X140: term,X141: term] :
          ( ( $true
            = ( X139 @ id @ X141 @ id ) )
          & ( $true
            = ( X139 @ id @ X140 @ id ) )
          & ( $true
           != ( X139 @ id @ ( ap @ ( sub @ X141 @ id ) @ X140 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f107,plain,
    ! [X139: subst > term > subst > $o] :
      ( ( $true
        = ( sP92 @ X139 ) )
    <=> ? [X143: subst,X144: subst,X145: term,X146: subst] :
          ( ( $true
            = ( X139 @ X143 @ X145 @ ( comp @ X146 @ X144 ) ) )
          & ( $true
           != ( X139 @ ( comp @ X143 @ X146 ) @ ( sub @ X145 @ X146 ) @ X144 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f108,plain,
    ( ( $true = sP93 )
  <=> ! [X136: term > $o,X137: term,X138: term,X139: subst > term > subst > $o] :
        ( ( $true
         != ( X136 @ X138 ) )
        | ( $true
          = ( X136 @ ( ap @ X137 @ X138 ) ) )
        | ( ( sP91 @ X139 )
          = $true )
        | ? [X147: subst,X148: subst,X149: subst,X150: term] :
            ( ( $true
             != ( X139 @ X147 @ X150 @ ( comp @ X149 @ X148 ) ) )
            & ( $true
              = ( X139 @ ( comp @ X147 @ X149 ) @ ( sub @ X150 @ X149 ) @ X148 ) ) )
        | ( $true
          = ( sP92 @ X139 ) )
        | ? [X142: term] :
            ( ( X136 @ X142 )
           != ( X139 @ id @ X142 @ id ) )
        | ( $true
         != ( X136 @ X137 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f109,plain,
    ! [X8: subst > term > subst > $o] :
      ( ( $true
        = ( sP94 @ X8 ) )
    <=> ? [X10: subst > term > term] :
          ( ( $true
           != ( X8 @ id @ ( lam @ ( X10 @ sh @ one ) ) @ id ) )
          & ! [X11: term,X12: subst,X13: subst] :
              ( ( X10 @ ( comp @ X12 @ X13 ) @ ( sub @ X11 @ X13 ) )
              = ( sub @ ( X10 @ X12 @ X11 ) @ X13 ) )
          & ! [X14: term] :
              ( ( $true
               != ( X8 @ id @ X14 @ id ) )
              | ( $true
                = ( X8 @ id @ ( X10 @ id @ X14 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f110,plain,
    ( ( sP95 = $true )
  <=> ! [X7: term,X8: subst > term > subst > $o] :
        ( ( $true
          = ( sP94 @ X8 ) )
        | ( $true
          = ( X8 @ id @ ( lam @ X7 ) @ id ) )
        | ? [X9: term] :
            ( ( $true
              = ( X8 @ id @ X9 @ id ) )
            & ( $true
             != ( X8 @ id @ ( sub @ X7 @ ( push @ X9 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f111,plain,
    ! [X46: term > $o] :
      ( ( $true
        = ( sP96 @ X46 ) )
    <=> ? [X47: term] :
          ( ! [X48: term] :
              ( ( $true
               != ( X46 @ X48 ) )
              | ( $true
                = ( X46 @ ( sub @ X47 @ ( push @ X48 @ id ) ) ) ) )
          & ( $true
           != ( X46 @ ( lam @ X47 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f112,plain,
    ! [X46: term > $o] :
      ( ( $true
        = ( sP97 @ X46 ) )
    <=> ? [X49: term,X50: term] :
          ( ( $true
           != ( X46 @ ( ap @ X49 @ X50 ) ) )
          & ( $true
            = ( X46 @ X50 ) )
          & ( $true
            = ( X46 @ X49 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f113,plain,
    ( ( $true = sP98 )
  <=> ! [X45: term,X46: term > $o] :
        ( ( $true
          = ( sP97 @ X46 ) )
        | ? [X51: term] :
            ( ( $true
             != ( X46 @ X51 ) )
            & ( $true
              = ( var @ X51 ) ) )
        | ( $true
          = ( sP96 @ X46 ) )
        | ( $true
          = ( X46 @ X45 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f114,plain,
    ! [X253: subst > term > subst > $o] :
      ( ( $true
        = ( sP99 @ X253 ) )
    <=> ? [X263: subst > term > term] :
          ( ! [X265: subst,X266: term,X267: subst] :
              ( ( sub @ ( X263 @ X267 @ X266 ) @ X265 )
              = ( X263 @ ( comp @ X267 @ X265 ) @ ( sub @ X266 @ X265 ) ) )
          & ! [X264: term] :
              ( ( $true
                = ( X253 @ id @ ( X263 @ id @ X264 ) @ id ) )
              | ( $true
               != ( X253 @ id @ X264 @ id ) ) )
          & ( $true
           != ( X253 @ id @ ( lam @ ( X263 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f115,plain,
    ! [X253: subst > term > subst > $o] :
      ( ( $true
        = ( sP100 @ X253 ) )
    <=> ? [X254: term,X255: subst,X256: subst,X257: subst] :
          ( ( $true
           != ( X253 @ X256 @ X254 @ ( comp @ X257 @ X255 ) ) )
          & ( $true
            = ( X253 @ ( comp @ X256 @ X257 ) @ ( sub @ X254 @ X257 ) @ X255 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f116,plain,
    ! [X253: subst > term > subst > $o,X252: term] :
      ( ( $true
        = ( sP101 @ X252 @ X253 ) )
    <=> ? [X262: term] :
          ( ( $true
            = ( X253 @ id @ X262 @ id ) )
          & ( $true
           != ( X253 @ id @ ( sub @ X252 @ ( push @ X262 @ id ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f118,plain,
    ( ( $true = sP103 )
  <=> ! [X252: term,X253: subst > term > subst > $o] :
        ( ( $true
          = ( X253 @ id @ ( lam @ X252 ) @ id ) )
        | ? [X258: subst,X259: subst,X260: subst,X261: term] :
            ( ( $true
             != ( X253 @ ( comp @ X260 @ X258 ) @ ( sub @ X261 @ X258 ) @ X259 ) )
            & ( $true
              = ( X253 @ X260 @ X261 @ ( comp @ X258 @ X259 ) ) ) )
        | ( $true
          = ( sP101 @ X252 @ X253 ) )
        | ( $true
          = ( sP99 @ X253 ) )
        | ( $true
          = ( sP100 @ X253 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f119,plain,
    ( ( $true = sP104 )
  <=> ? [X244: subst > term > subst > $o,X245: term] :
        ( ( ( X244 @ id @ ( lam @ ( sub @ X245 @ ( push @ one @ sh ) ) ) @ id )
         != $true )
        & ( $true
          = ( sP102 @ X244 ) )
        & ! [X246: term] :
            ( ( $true
             != ( X244 @ id @ X246 @ id ) )
            | ( $true
              = ( X244 @ id @ ( sub @ X245 @ ( push @ X246 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f120,plain,
    ! [X397: subst > term > subst > $o] :
      ( ( $true
        = ( sP105 @ X397 ) )
    <=> ? [X403: subst > term > term] :
          ( ! [X404: subst,X405: term,X406: subst] :
              ( ( X403 @ ( comp @ X404 @ X406 ) @ ( sub @ X405 @ X406 ) )
              = ( sub @ ( X403 @ X404 @ X405 ) @ X406 ) )
          & ( $true
           != ( X397 @ id @ ( lam @ ( X403 @ sh @ one ) ) @ id ) )
          & ! [X407: term] :
              ( ( $true
               != ( X397 @ id @ X407 @ id ) )
              | ( $true
                = ( X397 @ id @ ( X403 @ id @ X407 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f121,plain,
    ! [X397: subst > term > subst > $o] :
      ( ( $true
        = ( sP106 @ X397 ) )
    <=> ? [X409: subst,X410: subst,X411: subst,X412: term] :
          ( ( $true
           != ( X397 @ ( comp @ X409 @ X411 ) @ ( sub @ X412 @ X411 ) @ X410 ) )
          & ( $true
            = ( X397 @ X409 @ X412 @ ( comp @ X411 @ X410 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f122,plain,
    ! [X397: subst > term > subst > $o] :
      ( ( $true
        = ( sP107 @ X397 ) )
    <=> ? [X398: subst,X399: subst,X400: term,X401: subst] :
          ( ( $true
           != ( X397 @ X401 @ X400 @ ( comp @ X398 @ X399 ) ) )
          & ( ( X397 @ ( comp @ X401 @ X398 ) @ ( sub @ X400 @ X398 ) @ X399 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f123,plain,
    ( ( $true = sP108 )
  <=> ! [X395: term > $o,X396: term,X397: subst > term > subst > $o] :
        ( ? [X402: term] :
            ( ( $true
             != ( X395 @ ( sub @ X396 @ ( push @ X402 @ id ) ) ) )
            & ( $true
              = ( X395 @ X402 ) ) )
        | ? [X408: term] :
            ( ( X397 @ id @ X408 @ id )
           != ( X395 @ X408 ) )
        | ( $true
          = ( sP107 @ X397 ) )
        | ( $true
          = ( X395 @ ( lam @ X396 ) ) )
        | ( $true
          = ( sP106 @ X397 ) )
        | ( $true
          = ( sP105 @ X397 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

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

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

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

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

thf(f1444,plain,
    ! [X38: term] :
      ( ( d2term @ ( sK532 @ X38 ) )
      = X38 ),
    inference(cnf_transformation,[status(thm)],[f744]) ).

thf(f1861,plain,
    ( $true
    = ( var @ ( lam @ sK109 ) ) ),
    inference(trivial_inequality_removal,[status(thm)],[f1494]) ).

thf(f1494,plain,
    ( ( $true != $true )
    | ( $true
      = ( var @ ( lam @ sK109 ) ) ) ),
    inference(definition_unfolding,[status(thm)],[f746,f1345]) ).

thf(f1345,plain,
    lamnotvar = $true,
    inference(cnf_transformation,[status(thm)],[f744]) ).

thf(f746,plain,
    ( ( lamnotvar != $true )
    | ( $true
      = ( var @ ( lam @ sK109 ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f128]) ).

thf(f128,plain,
    ( ( ( lamnotvar != $true )
      | ( $true
        = ( var @ ( lam @ sK109 ) ) ) )
    & ( ( lamnotvar = $true )
      | ! [X1: term] :
          ( $true
         != ( var @ ( lam @ X1 ) ) ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK109])],[f126,f127]) ).

thf(f127,plain,
    ( ? [X0: term] :
        ( $true
        = ( var @ ( lam @ X0 ) ) )
   => ( $true
      = ( var @ ( lam @ sK109 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f126,plain,
    ( ( ( lamnotvar != $true )
      | ? [X0: term] :
          ( $true
          = ( var @ ( lam @ X0 ) ) ) )
    & ( ( lamnotvar = $true )
      | ! [X1: term] :
          ( $true
         != ( var @ ( lam @ X1 ) ) ) ) ),
    inference(rectify,[status(thm)],[f125]) ).

thf(f125,plain,
    ( ( ( lamnotvar != $true )
      | ? [X0: term] :
          ( $true
          = ( var @ ( lam @ X0 ) ) ) )
    & ( ( lamnotvar = $true )
      | ! [X0: term] :
          ( $true
         != ( var @ ( lam @ X0 ) ) ) ) ),
    inference(nnf_transformation,[status(thm)],[f12]) ).

thf(f12,plain,
    ( ! [X0: term] :
        ( $true
       != ( var @ ( lam @ X0 ) ) )
  <~> ( lamnotvar = $true ) ),
    inference(ennf_transformation,[status(thm)],[f9]) ).

thf(f9,plain,
    ~ ( ! [X0: term] :
          ( $true
         != ( var @ ( lam @ X0 ) ) )
    <=> ( lamnotvar = $true ) ),
    inference(flattening,[status(thm)],[f8]) ).

thf(f8,plain,
    ~ ( ! [X0: term] :
          ( $true
         != ( var @ ( lam @ X0 ) ) )
    <=> ( lamnotvar = $true ) ),
    inference(fool_elimination,[status(thm)],[f7]) ).

thf(f7,plain,
    ~ ! [X0: term] :
        ( ( ~ ( var @ ( lam @ X0 ) ) )
        = lamnotvar ),
    inference(rectify,[status(thm)],[f3]) ).

thf(f3,negated_conjecture,
    ~ ! [X13: term] :
        ( ( ~ ( var @ ( lam @ X13 ) ) )
        = lamnotvar ),
    inference(negated_conjecture,[status(cth)],[f2]) ).

thf(f2,conjecture,
    ! [X13: term] :
      ( ( ~ ( var @ ( lam @ X13 ) ) )
      = lamnotvar ),
    file('/export/starexec/sandbox2/tmp/tmp.IOI7rTKtJk/DTF2THF_25437.p',lamnotvar) ).

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

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.00/0.13  % Command  : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.17/0.34  % Computer : n027.cluster.edu
% 0.17/0.34  % Model    : x86_64 x86_64
% 0.17/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.34  % Memory   : 8042.1875MB
% 0.17/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.17/0.34  % CPULimit : 300
% 0.17/0.34  % WCLimit  : 300
% 0.17/0.34  % DateTime : Tue May  5 08:57:34 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.29/0.47  ---- Original DTF file ---
% 0.29/0.47  thf(spec,logic,$$dhol).
% 0.29/0.47  %------------------------------------------------------------------------------
% 0.29/0.47  % File     : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.29/0.47  % Domain   : Software Verification
% 0.29/0.47  % Problem  : Benchmark: ALG444^1, Active target: lamnotvar
% 0.29/0.47  % Version  : Especial.
% 0.29/0.47  % English  :
% 0.29/0.47  
% 0.29/0.47  % Refs     : [Kon26] Kondylidou (2026), Email to Geoff Sutcliffe
% 0.29/0.47  % Source   : [Kon26]
% 0.29/0.47  % Names    : ALG444^1__005__axclos.verify [Kon26]
% 0.29/0.47  
% 0.29/0.47  % Status   : Theorem
% 0.29/0.47  % Rating   : ? v9.3.0
% 0.29/0.47  % Syntax   : Number of formulae    :  132 (   1 unt; 130 typ;   0 def)
% 0.29/0.47  %            Number of atoms       :  255 ( 128 equ;   0 cnn)
% 0.29/0.47  %            Maximal formula atoms :  248 ( 127 avg)
% 0.29/0.47  %            Number of connectives : 2572 ( 334   ~; 306   |; 129   &;1709   @)
% 0.29/0.47  %                                         (  56 <=>;  38  =>;   0  <=;   0 <~>)
% 0.29/0.47  %            Maximal formula depth :  151 (  76 avg)
% 0.29/0.47  %            Number of types       :    5 (   4 usr)
% 0.29/0.47  %            Number of type conns  :  222 ( 222   >;   0   *;   0   +;   0  <<)
% 0.29/0.47  %            Number of symbols     :  127 ( 126 usr; 113 con; 0-4 aty)
% 0.29/0.47  %            Number of variables   :  551 (   8   ^; 541   !;   2   ?; 551   :)
% 0.29/0.47  % SPC      : TH0_THM_EQU_NAR
% 0.29/0.47  
% 0.29/0.47  % Comments :
% 0.29/0.47  %------------------------------------------------------------------------------
% 0.29/0.47  thf(term_type,type,
% 0.29/0.47      term: $tType ).
% 0.29/0.47  
% 0.29/0.47  thf(subst_type,type,
% 0.29/0.47      subst: $tType ).
% 0.29/0.47  
% 0.29/0.47  thf(one_decl,type,
% 0.29/0.47      one: term ).
% 0.29/0.47  
% 0.29/0.47  thf(ap_decl,type,
% 0.29/0.47      ap: term > term > term ).
% 0.29/0.47  
% 0.29/0.47  thf(lam_decl,type,
% 0.29/0.47      lam: term > term ).
% 0.29/0.47  
% 0.29/0.47  thf(sub_decl,type,
% 0.29/0.47      sub: term > subst > term ).
% 0.29/0.47  
% 0.29/0.47  thf(id_decl,type,
% 0.29/0.47      id: subst ).
% 0.29/0.47  
% 0.29/0.47  thf(sh_decl,type,
% 0.29/0.47      sh: subst ).
% 0.29/0.47  
% 0.29/0.47  thf(push_decl,type,
% 0.29/0.47      push: term > subst > subst ).
% 0.29/0.47  
% 0.29/0.47  thf(comp_decl,type,
% 0.29/0.47      comp: subst > subst > subst ).
% 0.29/0.47  
% 0.29/0.47  thf(var_decl,type,
% 0.29/0.47      var: term > $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1v2_decl,type,
% 0.29/0.47      pushprop_lem1v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1_gthm_decl,type,
% 0.29/0.47      pushprop_lem1_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axmap_decl,type,
% 0.29/0.47      axmap: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem0_gthm_decl,type,
% 0.29/0.47      pushprop_lem0_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(shinj_decl,type,
% 0.29/0.47      shinj: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem1v2_decl,type,
% 0.29/0.47      hoasinduction_lem1v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem1v2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasap_decl,type,
% 0.29/0.47      hoasap: subst > term > subst > term > term ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2lem_decl,type,
% 0.29/0.47      induction2lem: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2_f_decl,type,
% 0.29/0.47      hoasinduction_lem3v2_f: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axvarshift_decl,type,
% 0.29/0.47      axvarshift: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj2_decl,type,
% 0.29/0.47      hoasapinj2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapnotvar_gthm_decl,type,
% 0.29/0.47      hoasapnotvar_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj1_decl,type,
% 0.29/0.47      hoasapinj1: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(ulamvar1_decl,type,
% 0.29/0.47      ulamvar1: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2lem_lthm_decl,type,
% 0.29/0.47      induction2lem_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem3v2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(apnotvar_decl,type,
% 0.29/0.47      apnotvar: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lthm_orig_decl,type,
% 0.29/0.47      pushprop_lthm_orig: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3v2_f_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lthm_decl,type,
% 0.29/0.47      hoasinduction_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.29/0.47      hoasinduction_no_psi_cond_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslaminj_decl,type,
% 0.29/0.47      hoaslaminj: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3aaa_decl,type,
% 0.29/0.47      hoasinduction_lem3aaa: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2lem_gthm_decl,type,
% 0.29/0.47      induction2lem_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3aa_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3_decl,type,
% 0.29/0.47      hoasinduction_lem3: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem2_decl,type,
% 0.29/0.47      hoasinduction_lem2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(termmset_lthm_decl,type,
% 0.29/0.47      termmset_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem1_decl,type,
% 0.29/0.47      hoasinduction_lem1: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotap_lthm_decl,type,
% 0.29/0.47      hoaslamnotap_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1v2_lthm_decl,type,
% 0.29/0.47      pushprop_lem1v2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapnotvar_decl,type,
% 0.29/0.47      hoasapnotvar: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem0_decl,type,
% 0.29/0.47      hoasinduction_lem0: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_decl,type,
% 0.29/0.47      hoasinduction: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_gthm_decl,type,
% 0.29/0.47      hoasinduction_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axapp_decl,type,
% 0.29/0.47      axapp: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotvar_lthm_decl,type,
% 0.29/0.47      hoaslamnotvar_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem3v2_lthm_decl,type,
% 0.29/0.47      pushprop_lem3v2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3b_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(ulamvarind_decl,type,
% 0.29/0.47      ulamvarind: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction_decl,type,
% 0.29/0.47      induction: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3a_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(termmset_gthm_decl,type,
% 0.29/0.47      termmset_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3aa_decl,type,
% 0.29/0.47      hoasinduction_lem3aa: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1v2_gthm_decl,type,
% 0.29/0.47      pushprop_lem1v2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotap_gthm_decl,type,
% 0.29/0.47      hoaslamnotap_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotvar_gthm_decl,type,
% 0.29/0.47      hoaslamnotvar_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem3b_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem2v2_decl,type,
% 0.29/0.47      pushprop_lem2v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem3a_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axclos_decl,type,
% 0.29/0.47      axclos: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axassoc_decl,type,
% 0.29/0.47      axassoc: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem2v2_decl,type,
% 0.29/0.47      hoasinduction_lem2v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lthm_decl,type,
% 0.29/0.47      pushprop_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(apinj2_decl,type,
% 0.29/0.47      apinj2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(apinj1_decl,type,
% 0.29/0.47      apinj1: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj2_lthm_decl,type,
% 0.29/0.47      hoasapinj2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2a_decl,type,
% 0.29/0.47      hoasinduction_lem3v2a: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj1_lthm_decl,type,
% 0.29/0.47      hoasapinj1_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslaminj_lthm_decl,type,
% 0.29/0.47      hoaslaminj_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axvarcons_decl,type,
% 0.29/0.47      axvarcons: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslam_decl,type,
% 0.29/0.47      hoaslam: subst > ( subst > term > term ) > term ).
% 0.29/0.47  
% 0.29/0.47  thf(axscons_decl,type,
% 0.29/0.47      axscons: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem2v2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axidr_decl,type,
% 0.29/0.47      axidr: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1_decl,type,
% 0.29/0.47      pushprop_lem1: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(laminj_decl,type,
% 0.29/0.47      laminj: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem0_decl,type,
% 0.29/0.47      pushprop_lem0: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_gthm_decl,type,
% 0.29/0.47      pushprop_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axabs_decl,type,
% 0.29/0.47      axabs: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3v2a_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem2_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj2_gthm_decl,type,
% 0.29/0.47      hoasapinj2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.29/0.47      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem1_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem1_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(lamnotap_decl,type,
% 0.29/0.47      lamnotap: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapinj1_gthm_decl,type,
% 0.29/0.47      hoasapinj1_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotvar_decl,type,
% 0.29/0.47      hoaslamnotvar: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axidl_decl,type,
% 0.29/0.47      axidl: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslaminj_gthm_decl,type,
% 0.29/0.47      hoaslaminj_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2_lthm_decl,type,
% 0.29/0.47      induction2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem0_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem0_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(substmonoid_lthm_decl,type,
% 0.29/0.47      substmonoid_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_decl,type,
% 0.29/0.47      pushprop: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem3_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem2_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3b_decl,type,
% 0.29/0.47      hoasinduction_lem3b: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(substmonoid_decl,type,
% 0.29/0.47      substmonoid: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(lamnotvar_decl,type,
% 0.29/0.47      lamnotvar: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3a_decl,type,
% 0.29/0.47      hoasinduction_lem3a: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem1_gthm_decl,type,
% 0.29/0.47      hoasinduction_lem1_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_no_psi_cond_decl,type,
% 0.29/0.47      hoasinduction_no_psi_cond: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2_gthm_decl,type,
% 0.29/0.47      induction2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem2v2_lthm_decl,type,
% 0.29/0.47      pushprop_lem2v2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasvar_decl,type,
% 0.29/0.47      hoasvar: subst > term > subst > $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoaslamnotap_decl,type,
% 0.29/0.47      hoaslamnotap: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(substmonoid_gthm_decl,type,
% 0.29/0.47      substmonoid_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(ulamvarsh_decl,type,
% 0.29/0.47      ulamvarsh: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(induction2_decl,type,
% 0.29/0.47      induction2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem3v2_decl,type,
% 0.29/0.47      pushprop_lem3v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem2v2_gthm_decl,type,
% 0.29/0.47      pushprop_lem2v2_gthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem1_lthm_decl,type,
% 0.29/0.47      pushprop_lem1_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2_decl,type,
% 0.29/0.47      hoasinduction_lem3v2: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axshiftcons_decl,type,
% 0.29/0.47      axshiftcons: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(termmset_decl,type,
% 0.29/0.47      termmset: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_lem0_lthm_decl,type,
% 0.29/0.47      pushprop_lem0_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasapnotvar_lthm_decl,type,
% 0.29/0.47      hoasapnotvar_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.29/0.47      hoasinduction_lem3v2_lthm: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(pushprop_p_and_p_prime_decl,type,
% 0.29/0.47      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.29/0.47  
% 0.29/0.47  thf(axvarid_decl,type,
% 0.29/0.47      axvarid: $o ).
% 0.29/0.47  
% 0.29/0.47  thf(hoasinduction_lthm_3_decl,type,
% 0.29/0.47      hoasinduction_lthm_3: $o ).
% 0.29/0.47  
% 0.29/0.47  %----Types of the domains
% 0.29/0.47  thf(d_term_type,type,
% 0.29/0.47      d_term: $tType ).
% 0.29/0.47  
% 0.29/0.47  thf(d_subst_type,type,
% 0.29/0.47      d_subst: $tType ).
% 0.29/0.47  
% 0.29/0.47  %----Types of the promotion functions
% 0.29/0.47  thf(d2term_decl,type,
% 0.29/0.47      d2term: d_term > term ).
% 0.29/0.47  
% 0.29/0.47  thf(d2subst_decl,type,
% 0.29/0.47      d2subst: d_subst > subst ).
% 0.29/0.47  
% 0.29/0.47  %----Types of the domain elements
% 0.29/0.47  thf(d_one_decl,type,
% 0.29/0.47      d_one: d_term ).
% 0.29/0.47  
% 0.29/0.47  thf(d_id_decl,type,
% 0.29/0.47      d_id: d_subst ).
% 0.29/0.47  
% 0.29/0.47  thf(alg444_1,axiom,
% 0.29/0.47      ( ! [T: term] :
% 0.29/0.47        ? [DT: d_term] :
% 0.29/0.47          ( T
% 0.29/0.47          = ( d2term @ DT ) )
% 0.29/0.47      & ! [DT: d_term] : ( DT = d_one )
% 0.29/0.47      & ! [DT1: d_term,DT2: d_term] :
% 0.29/0.47          ( ( ( d2term @ DT1 )
% 0.29/0.47            = ( d2term @ DT2 ) )
% 0.29/0.47         => ( DT1 = DT2 ) )
% 0.29/0.47      & ! [S: subst] :
% 0.29/0.47        ? [DS: d_subst] :
% 0.29/0.47          ( S
% 0.29/0.47          = ( d2subst @ DS ) )
% 0.29/0.47      & ! [DS: d_subst] : ( DS = d_id )
% 0.29/0.47      & ! [DS1: d_subst,DS2: d_subst] :
% 0.29/0.47          ( ( ( d2subst @ DS1 )
% 0.29/0.47            = ( d2subst @ DS2 ) )
% 0.29/0.47         => ( DS1 = DS2 ) )
% 0.29/0.47      & ( one
% 0.29/0.47        = ( d2term @ d_one ) )
% 0.29/0.47      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.29/0.47        = ( d2term @ d_one ) )
% 0.29/0.47      & ( ( lam @ ( d2term @ d_one ) )
% 0.29/0.47        = ( d2term @ d_one ) )
% 0.29/0.47      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.29/0.47        = ( d2term @ d_one ) )
% 0.29/0.47      & ( id
% 0.29/0.47        = ( d2subst @ d_id ) )
% 0.29/0.47      & ( sh
% 0.29/0.47        = ( d2subst @ d_id ) )
% 0.29/0.47      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.29/0.47        = ( d2subst @ d_id ) )
% 0.29/0.47      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.29/0.47        = ( d2subst @ d_id ) )
% 0.29/0.47      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.29/0.47        = ( d2term @ d_one ) )
% 0.29/0.47      & ( hoaslam
% 0.29/0.47        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.29/0.47      & ( hoasinduction_p_and_p_prime
% 0.29/0.47        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.29/0.47            ! [X: term] :
% 0.29/0.47              ( ( Q @ X )
% 0.29/0.47              = ( P @ id @ X @ id ) ) ) )
% 0.29/0.47      & ( pushprop_p_and_p_prime
% 0.29/0.47        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.29/0.47            ! [X: term] :
% 0.29/0.47              ( ( Q @ X )
% 0.29/0.47              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.29/0.47      & ~ ( var @ ( d2term @ d_one ) )
% 0.29/0.47      & ( pushprop_lem1v2
% 0.29/0.47      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.29/0.47            ( ~ ( P @ A )
% 0.29/0.47            | ~ ! [X: term] :
% 0.29/0.47                  ( ( Q @ X )
% 0.29/0.47                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.29/0.47            | ( Q @ one ) ) )
% 0.29/0.47      & pushprop_lem1_gthm
% 0.29/0.47      & axmap
% 0.29/0.47      & pushprop_lem0_gthm
% 0.29/0.47      & ( shinj
% 0.29/0.47      <=> ! [A: term,B: term] :
% 0.29/0.47            ( ( ( sub @ A @ sh )
% 0.29/0.47             != ( sub @ B @ sh ) )
% 0.29/0.47            | ( A = B ) ) )
% 0.29/0.47      & hoasinduction_lem1v2
% 0.29/0.47      & hoasinduction_lem1v2_gthm
% 0.29/0.47      & ( induction2lem
% 0.29/0.47      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.29/0.47            ( ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ A )
% 0.29/0.47                  | ~ ( P @ B )
% 0.29/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47            | ~ ! [A: term] :
% 0.29/0.47                  ( ~ ! [B: term] :
% 0.29/0.47                        ( ~ ( P @ B )
% 0.29/0.47                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                  | ( P @ ( lam @ A ) ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( var @ B )
% 0.29/0.47                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.29/0.47            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.29/0.47      & ( hoasinduction_lem3v2_f
% 0.29/0.47      <=> ! [B: term] :
% 0.29/0.47            ~ ! [F: subst > term > term] :
% 0.29/0.47                ~ ! [A: term,M: subst] :
% 0.29/0.47                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.29/0.47                    = ( F @ M @ A ) ) )
% 0.29/0.47      & axvarshift
% 0.29/0.47      & ( hoasapinj2
% 0.29/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.29/0.47             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.29/0.47            | ( C = D ) ) )
% 0.29/0.47      & hoasapnotvar_gthm
% 0.29/0.47      & ( hoasapinj1
% 0.29/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.29/0.47             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.29/0.47            | ( A = B ) ) )
% 0.29/0.47      & ~ ulamvar1
% 0.29/0.47      & ( induction2lem_lthm
% 0.29/0.47      <=> ( ! [A: term,M: subst] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.29/0.47         => ( ! [A: term,M: subst] :
% 0.29/0.47                ( M
% 0.29/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.29/0.47           => ( ! [M: subst] :
% 0.29/0.47                  ( M
% 0.29/0.47                  = ( comp @ M @ id ) )
% 0.29/0.47             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.29/0.47                    ( ~ ! [A: term] :
% 0.29/0.47                          ( ~ ( var @ A )
% 0.29/0.47                          | ( P @ A ) )
% 0.29/0.47                    | ~ ! [A: term,B: term] :
% 0.29/0.47                          ( ~ ( P @ A )
% 0.29/0.47                          | ~ ( P @ B )
% 0.29/0.47                          | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                    | ~ ! [A: term] :
% 0.29/0.47                          ( ~ ( P @ A )
% 0.29/0.47                          | ( P @ ( lam @ A ) ) )
% 0.29/0.47                    | ( P @ Bound_variable_2140 ) )
% 0.29/0.47               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.29/0.47                    ( ~ ! [A: term,B: term] :
% 0.29/0.47                          ( ~ ( P @ A )
% 0.29/0.47                          | ~ ( P @ B )
% 0.29/0.47                          | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                    | ~ ! [A: term] :
% 0.29/0.47                          ( ~ ! [B: term] :
% 0.29/0.47                                ( ~ ( P @ B )
% 0.29/0.47                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                          | ( P @ ( lam @ A ) ) )
% 0.29/0.47                    | ~ ! [B: term] :
% 0.29/0.47                          ( ~ ( var @ B )
% 0.29/0.47                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.29/0.47                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.29/0.47      & hoasinduction_lem3v2_gthm
% 0.29/0.47      & apnotvar
% 0.29/0.47      & pushprop_lthm_orig
% 0.29/0.47      & ( hoasinduction_lem3v2_f_lthm
% 0.29/0.47      <=> ! [B: term] :
% 0.29/0.47            ~ ! [F: subst > term > term] :
% 0.29/0.47                ~ ! [A: term,M: subst] :
% 0.29/0.47                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.29/0.47                    = ( F @ M @ A ) ) )
% 0.29/0.47      & ( hoasinduction_lthm
% 0.29/0.47      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.29/0.47              ( ~ ! [A: term] :
% 0.29/0.47                    ( ~ ( var @ A )
% 0.29/0.47                    | ( P @ A ) )
% 0.29/0.47              | ~ ! [A: term,B: term] :
% 0.29/0.47                    ( ~ ( P @ A )
% 0.29/0.47                    | ~ ( P @ B )
% 0.29/0.47                    | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47              | ~ ! [A: term] :
% 0.29/0.47                    ( ~ ! [B: term] :
% 0.29/0.47                          ( ~ ( P @ B )
% 0.29/0.47                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                    | ( P @ ( lam @ A ) ) )
% 0.29/0.47              | ( P @ Bound_variable_2367 ) )
% 0.29/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.29/0.47                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47                | ~ ! [A: term,B: term] :
% 0.29/0.47                      ( ~ ( P @ id @ A @ id )
% 0.29/0.47                      | ~ ( P @ id @ B @ id )
% 0.29/0.47                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.29/0.47                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.29/0.47                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.29/0.47           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47                  | ~ ! [F: subst > term > term] :
% 0.29/0.47                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                        | ~ ! [A: term] :
% 0.29/0.47                              ( ~ ( P @ id @ A @ id )
% 0.29/0.47                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                  | ~ ! [B: term] :
% 0.29/0.47                        ( ~ ( P @ id @ B @ id )
% 0.29/0.47                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.29/0.47             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.29/0.47                        | ( P @ id @ A @ id ) )
% 0.29/0.47                  | ~ ! [A: term,B: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ~ ( P @ id @ B @ id )
% 0.29/0.47                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47                  | ~ ! [F: subst > term > term] :
% 0.29/0.47                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                        | ~ ! [A: term] :
% 0.29/0.47                              ( ~ ( P @ id @ A @ id )
% 0.29/0.47                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.29/0.47      & ( hoasinduction_no_psi_cond_lthm
% 0.29/0.47      <=> ( ! [P: subst > term > subst > $o] :
% 0.29/0.47              ~ ! [Q: term > $o] :
% 0.29/0.47                  ~ ! [X: term] :
% 0.29/0.47                      ( ( Q @ X )
% 0.29/0.47                      = ( P @ id @ X @ id ) )
% 0.29/0.47         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.29/0.47                ( ~ ! [A: term] :
% 0.29/0.47                      ( ~ ( var @ A )
% 0.29/0.47                      | ( P @ A ) )
% 0.29/0.47                | ~ ! [A: term,B: term] :
% 0.29/0.47                      ( ~ ( P @ A )
% 0.29/0.47                      | ~ ( P @ B )
% 0.29/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                | ~ ! [A: term] :
% 0.29/0.47                      ( ~ ! [B: term] :
% 0.29/0.47                            ( ~ ( P @ B )
% 0.29/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                      | ( P @ ( lam @ A ) ) )
% 0.29/0.47                | ( P @ Bound_variable_2367 ) )
% 0.29/0.47           => ( ! [A: term] :
% 0.29/0.47                  ( A
% 0.29/0.47                  = ( sub @ A @ id ) )
% 0.29/0.47             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.29/0.47                    ( ~ ! [F: subst > term > term] :
% 0.29/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                          | ~ ! [A: term] :
% 0.29/0.47                                ( ~ ( P @ id @ A @ id )
% 0.29/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                    | ~ ! [X: term] :
% 0.29/0.47                          ( ( Q @ X )
% 0.29/0.47                          = ( P @ id @ X @ id ) )
% 0.29/0.47                    | ~ ! [B: term] :
% 0.29/0.47                          ( ~ ( Q @ B )
% 0.29/0.47                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.29/0.47                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.29/0.47               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.29/0.47                    ( ~ ! [A: term,B: term] :
% 0.29/0.47                          ( ~ ( P @ id @ A @ id )
% 0.29/0.47                          | ~ ( P @ id @ B @ id )
% 0.29/0.47                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47                    | ~ ! [F: subst > term > term] :
% 0.29/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                          | ~ ! [A: term] :
% 0.29/0.47                                ( ~ ( P @ id @ A @ id )
% 0.29/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.29/0.47      & ( hoaslaminj
% 0.29/0.47      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.29/0.47                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47            | ( ( lam @ ( F @ sh @ one ) )
% 0.29/0.47             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.29/0.47            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.29/0.47              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.29/0.47      & ( hoasinduction_lem3aaa
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.29/0.47            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.29/0.47                  ( ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.29/0.47                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.29/0.47                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.29/0.47                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.29/0.47                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.29/0.47                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.29/0.47      & induction2lem_gthm
% 0.29/0.47      & ( hoasinduction_lem3aa_lthm
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.29/0.47            ( ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.29/0.47      & ( hoasinduction_lem3
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47            | ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.29/0.47      & ( hoasinduction_lem2
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47            | ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ A @ id )
% 0.29/0.47                  | ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.29/0.47            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.29/0.47            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.29/0.47      & ( termmset_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) ) ) )
% 0.29/0.47      & hoasinduction_lem1
% 0.29/0.47      & hoaslamnotap_lthm
% 0.29/0.47      & ( pushprop_lem1v2_lthm
% 0.29/0.47      <=> ( ! [A: term,M: subst] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.29/0.47         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.29/0.47              ( ~ ( P @ A )
% 0.29/0.47              | ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.29/0.47              | ( Q @ one ) ) ) )
% 0.29/0.47      & hoasapnotvar
% 0.29/0.47      & ( hoasinduction_lem0
% 0.29/0.47      <=> ! [P: subst > term > subst > $o] :
% 0.29/0.47            ~ ! [Q: term > $o] :
% 0.29/0.47                ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ id @ X @ id ) ) )
% 0.29/0.47      & ( hoasinduction
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47            | ~ ! [A: term] :
% 0.29/0.47                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.29/0.47                  | ( P @ id @ A @ id ) )
% 0.29/0.47            | ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ A @ id )
% 0.29/0.47                  | ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47            | ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.29/0.47      & hoasinduction_gthm
% 0.29/0.47      & axapp
% 0.29/0.47      & hoaslamnotvar_lthm
% 0.29/0.47      & pushprop_lem3v2_lthm
% 0.29/0.47      & ( hoasinduction_lem3b_lthm
% 0.29/0.47      <=> ! [B: term] :
% 0.29/0.47            ~ ! [F: subst > term > term] :
% 0.29/0.47                ( ( F @ sh @ one )
% 0.29/0.47               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.29/0.47      & ulamvarind
% 0.29/0.47      & ( induction
% 0.29/0.47      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.29/0.47            ( ~ ! [A: term] :
% 0.29/0.47                  ( ~ ( var @ A )
% 0.29/0.47                  | ( P @ A ) )
% 0.29/0.47            | ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ A )
% 0.29/0.47                  | ~ ( P @ B )
% 0.29/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47            | ~ ! [A: term] :
% 0.29/0.47                  ( ~ ( P @ A )
% 0.29/0.47                  | ( P @ ( lam @ A ) ) )
% 0.29/0.47            | ( P @ Bound_variable_2140 ) ) )
% 0.29/0.47      & ( hoasinduction_lem3a_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.29/0.47                ( ~ ! [F: subst > term > term] :
% 0.29/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                      | ~ ! [A: term] :
% 0.29/0.47                            ( ~ ( P @ id @ A @ id )
% 0.29/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( P @ id @ B @ id )
% 0.29/0.47                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.29/0.47           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.29/0.47                ( ~ ! [F: subst > term > term] :
% 0.29/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                      | ~ ! [A: term] :
% 0.29/0.47                            ( ~ ( P @ id @ A @ id )
% 0.29/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( P @ id @ B @ id )
% 0.29/0.47                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.29/0.47      & termmset_gthm
% 0.29/0.47      & ( hoasinduction_lem3aa
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.29/0.47            ( ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.29/0.47      & pushprop_lem1v2_gthm
% 0.29/0.47      & hoaslamnotap_gthm
% 0.29/0.47      & hoaslamnotvar_gthm
% 0.29/0.47      & hoasinduction_lem3b_gthm
% 0.29/0.47      & pushprop_lem2v2
% 0.29/0.47      & hoasinduction_lem3a_gthm
% 0.29/0.47      & axclos
% 0.29/0.47      & axassoc
% 0.29/0.47      & ( hoasinduction_lem2v2
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47            | ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ A @ id )
% 0.29/0.47                  | ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47            | ~ ! [X: term] :
% 0.29/0.47                  ( ( Q @ X )
% 0.29/0.47                  = ( P @ id @ X @ id ) )
% 0.29/0.47            | ~ ( Q @ Bound_variable_2820 )
% 0.29/0.47            | ~ ( Q @ Bound_variable_2822 )
% 0.29/0.47            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.29/0.47      & pushprop_lthm
% 0.29/0.47      & ( apinj2
% 0.29/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47            ( ( ( ap @ A @ C )
% 0.29/0.47             != ( ap @ B @ D ) )
% 0.29/0.47            | ( C = D ) ) )
% 0.29/0.47      & ( apinj1
% 0.29/0.47      <=> ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47            ( ( ( ap @ A @ C )
% 0.29/0.47             != ( ap @ B @ D ) )
% 0.29/0.47            | ( A = B ) ) )
% 0.29/0.47      & ( hoasapinj2_lthm
% 0.29/0.47      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47              ( ( ( ap @ A @ C )
% 0.29/0.47               != ( ap @ B @ D ) )
% 0.29/0.47              | ( C = D ) )
% 0.29/0.47         => ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.29/0.47               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.29/0.47              | ( C = D ) ) ) )
% 0.29/0.47      & ( hoasinduction_lem3v2a
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.29/0.47            ( ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [X: term] :
% 0.29/0.47                  ( ( Q @ X )
% 0.29/0.47                  = ( P @ id @ X @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( Q @ B )
% 0.29/0.47                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.29/0.47            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.29/0.47      & ( hoasapinj1_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ( ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47                ( ( ( ap @ A @ C )
% 0.29/0.47                 != ( ap @ B @ D ) )
% 0.29/0.47                | ( A = B ) )
% 0.29/0.47           => ! [A: term,B: term,C: term,D: term] :
% 0.29/0.47                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.29/0.47                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.29/0.47                | ( A = B ) ) ) ) )
% 0.29/0.47      & ( hoaslaminj_lthm
% 0.29/0.47      <=> ( ! [A: term,M: subst] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.29/0.47         => ( ! [A: term,M: subst] :
% 0.29/0.47                ( M
% 0.29/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.29/0.47           => ( ! [A: term,B: term] :
% 0.29/0.47                  ( ( ( lam @ A )
% 0.29/0.47                   != ( lam @ B ) )
% 0.29/0.47                  | ( A = B ) )
% 0.29/0.47             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.29/0.47                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ( ( lam @ ( F @ sh @ one ) )
% 0.29/0.47                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.29/0.47                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.29/0.47                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.29/0.47      & ( axvarcons
% 0.29/0.47      <=> ! [A: term,M: subst] :
% 0.29/0.47            ( A
% 0.29/0.47            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.29/0.47      & ( axscons
% 0.29/0.47      <=> ! [M: subst] :
% 0.29/0.47            ( M
% 0.29/0.47            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.29/0.47      & hoasinduction_lem2v2_gthm
% 0.29/0.47      & ( axidr
% 0.29/0.47      <=> ! [M: subst] :
% 0.29/0.47            ( M
% 0.29/0.47            = ( comp @ M @ id ) ) )
% 0.29/0.47      & ( pushprop_lem1
% 0.29/0.47      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.29/0.47            ( ~ ( P @ A )
% 0.29/0.47            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.29/0.47      & ( laminj
% 0.29/0.47      <=> ! [A: term,B: term] :
% 0.29/0.47            ( ( ( lam @ A )
% 0.29/0.47             != ( lam @ B ) )
% 0.29/0.47            | ( A = B ) ) )
% 0.29/0.47      & ( hoasinduction_lem3_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.29/0.47                ( ~ ! [F: subst > term > term] :
% 0.29/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                      | ~ ! [A: term] :
% 0.29/0.47                            ( ~ ( P @ id @ A @ id )
% 0.29/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( P @ id @ B @ id )
% 0.29/0.47                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.29/0.47           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.29/0.47                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47                | ~ ! [F: subst > term > term] :
% 0.29/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                      | ~ ! [A: term] :
% 0.29/0.47                            ( ~ ( P @ id @ A @ id )
% 0.29/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( P @ id @ B @ id )
% 0.29/0.47                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.29/0.47      & ( pushprop_lem0
% 0.29/0.47      <=> ! [P: term > $o,A: term,M: subst] :
% 0.29/0.47            ~ ! [Q: term > $o] :
% 0.29/0.47                ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.29/0.47      & pushprop_gthm
% 0.29/0.47      & axabs
% 0.29/0.47      & ( hoasinduction_lem3v2a_lthm
% 0.29/0.47      <=> ( ! [B: term] :
% 0.29/0.47              ~ ! [F: subst > term > term] :
% 0.29/0.47                  ~ ! [A: term,M: subst] :
% 0.29/0.47                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.29/0.47                      = ( F @ M @ A ) )
% 0.29/0.47         => ( ! [A: term] :
% 0.29/0.47                ( A
% 0.29/0.47                = ( sub @ A @ id ) )
% 0.29/0.47           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.29/0.47                ( ~ ! [F: subst > term > term] :
% 0.29/0.47                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                      | ~ ! [A: term] :
% 0.29/0.47                            ( ~ ( P @ id @ A @ id )
% 0.29/0.47                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                | ~ ! [X: term] :
% 0.29/0.47                      ( ( Q @ X )
% 0.29/0.47                      = ( P @ id @ X @ id ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( Q @ B )
% 0.29/0.47                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.29/0.47                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.29/0.47      & hoasinduction_lem2_lthm
% 0.29/0.47      & hoasapinj2_gthm
% 0.29/0.47      & hoasinduction_lem1_lthm
% 0.29/0.47      & ~ lamnotap
% 0.29/0.47      & hoasapinj1_gthm
% 0.29/0.47      & hoaslamnotvar
% 0.29/0.47      & ( axidl
% 0.29/0.47      <=> ! [M: subst] :
% 0.29/0.47            ( M
% 0.29/0.47            = ( comp @ id @ M ) ) )
% 0.29/0.47      & hoaslaminj_gthm
% 0.29/0.47      & ( induction2_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.29/0.47                ( ~ ! [A: term,B: term] :
% 0.29/0.47                      ( ~ ( P @ A )
% 0.29/0.47                      | ~ ( P @ B )
% 0.29/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                | ~ ! [A: term] :
% 0.29/0.47                      ( ~ ! [B: term] :
% 0.29/0.47                            ( ~ ( P @ B )
% 0.29/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                      | ( P @ ( lam @ A ) ) )
% 0.29/0.47                | ~ ! [B: term] :
% 0.29/0.47                      ( ~ ( var @ B )
% 0.29/0.47                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.29/0.47                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.29/0.47           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.29/0.47                ( ~ ! [A: term] :
% 0.29/0.47                      ( ~ ( var @ A )
% 0.29/0.47                      | ( P @ A ) )
% 0.29/0.47                | ~ ! [A: term,B: term] :
% 0.29/0.47                      ( ~ ( P @ A )
% 0.29/0.47                      | ~ ( P @ B )
% 0.29/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                | ~ ! [A: term] :
% 0.29/0.47                      ( ~ ! [B: term] :
% 0.29/0.47                            ( ~ ( P @ B )
% 0.29/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                      | ( P @ ( lam @ A ) ) )
% 0.29/0.47                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.29/0.47      & ( hoasinduction_lem0_lthm
% 0.29/0.47      <=> ! [P: subst > term > subst > $o] :
% 0.29/0.47            ~ ! [Q: term > $o] :
% 0.29/0.47                ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ id @ X @ id ) ) )
% 0.29/0.47      & ( substmonoid_lthm
% 0.29/0.47      <=> ( ! [M: subst] :
% 0.29/0.47              ( M
% 0.29/0.47              = ( comp @ id @ M ) )
% 0.29/0.47         => ( ! [M: subst] :
% 0.29/0.47                ( M
% 0.29/0.47                = ( comp @ M @ id ) )
% 0.29/0.47           => ( ! [M: subst] :
% 0.29/0.47                  ( M
% 0.29/0.47                  = ( comp @ id @ M ) )
% 0.29/0.47              & ! [M: subst] :
% 0.29/0.47                  ( M
% 0.29/0.47                  = ( comp @ M @ id ) ) ) ) ) )
% 0.29/0.47      & pushprop
% 0.29/0.47      & hoasinduction_lem3_gthm
% 0.29/0.47      & hoasinduction_lem2_gthm
% 0.29/0.47      & ( hoasinduction_lem3b
% 0.29/0.47      <=> ! [B: term] :
% 0.29/0.47            ~ ! [F: subst > term > term] :
% 0.29/0.47                ( ( F @ sh @ one )
% 0.29/0.47               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.29/0.47      & ( substmonoid
% 0.29/0.47      <=> ( ! [M: subst] :
% 0.29/0.47              ( M
% 0.29/0.47              = ( comp @ id @ M ) )
% 0.29/0.47          & ! [M: subst] :
% 0.29/0.47              ( M
% 0.29/0.47              = ( comp @ M @ id ) ) ) )
% 0.29/0.47      & lamnotvar
% 0.29/0.47      & ( hoasinduction_lem3a
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.29/0.47            ( ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.29/0.47      & hoasinduction_lem1_gthm
% 0.29/0.47      & ( hoasinduction_no_psi_cond
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.29/0.47            ( ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ id @ A @ id )
% 0.29/0.47                  | ~ ( P @ id @ B @ id )
% 0.29/0.47                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47            | ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.29/0.47      & induction2_gthm
% 0.29/0.47      & pushprop_lem2v2_lthm
% 0.29/0.47      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.29/0.47      & ( hoaslamnotap
% 0.29/0.47      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47            | ( ( lam @ ( F @ sh @ one ) )
% 0.29/0.47             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.29/0.47      & substmonoid_gthm
% 0.29/0.47      & ulamvarsh
% 0.29/0.47      & ( induction2
% 0.29/0.47      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.29/0.47            ( ~ ! [A: term] :
% 0.29/0.47                  ( ~ ( var @ A )
% 0.29/0.47                  | ( P @ A ) )
% 0.29/0.47            | ~ ! [A: term,B: term] :
% 0.29/0.47                  ( ~ ( P @ A )
% 0.29/0.47                  | ~ ( P @ B )
% 0.29/0.47                  | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47            | ~ ! [A: term] :
% 0.29/0.47                  ( ~ ! [B: term] :
% 0.29/0.47                        ( ~ ( P @ B )
% 0.29/0.47                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                  | ( P @ ( lam @ A ) ) )
% 0.29/0.47            | ( P @ Bound_variable_2367 ) ) )
% 0.29/0.47      & pushprop_lem3v2
% 0.29/0.47      & pushprop_lem2v2_gthm
% 0.29/0.47      & ( pushprop_lem1_lthm
% 0.29/0.47      <=> ( ! [A: term,M: subst] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.29/0.47         => ( ! [A: term,M: subst] :
% 0.29/0.47                ( M
% 0.29/0.47                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.29/0.47           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.29/0.47                ( ~ ( P @ A )
% 0.29/0.47                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.29/0.47      & ( hoasinduction_lem3v2
% 0.29/0.47      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.29/0.47            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47            | ~ ! [F: subst > term > term] :
% 0.29/0.47                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                  | ~ ! [A: term] :
% 0.29/0.47                        ( ~ ( P @ id @ A @ id )
% 0.29/0.47                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47            | ~ ! [X: term] :
% 0.29/0.47                  ( ( Q @ X )
% 0.29/0.47                  = ( P @ id @ X @ id ) )
% 0.29/0.47            | ~ ! [B: term] :
% 0.29/0.47                  ( ~ ( Q @ B )
% 0.29/0.47                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.29/0.47            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.29/0.47      & ( axshiftcons
% 0.29/0.47      <=> ! [A: term,M: subst] :
% 0.29/0.47            ( M
% 0.29/0.47            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.29/0.47      & ( termmset
% 0.29/0.47      <=> ! [A: term] :
% 0.29/0.47            ( A
% 0.29/0.47            = ( sub @ A @ id ) ) )
% 0.29/0.47      & ( pushprop_lem0_lthm
% 0.29/0.47      <=> ! [P: term > $o,A: term,M: subst] :
% 0.29/0.47            ~ ! [Q: term > $o] :
% 0.29/0.47                ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.29/0.47      & hoasapnotvar_lthm
% 0.29/0.47      & ( hoasinduction_lem3v2_lthm
% 0.29/0.47      <=> ( ! [A: term] :
% 0.29/0.47              ( A
% 0.29/0.47              = ( sub @ A @ id ) )
% 0.29/0.47         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.29/0.47              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47              | ~ ! [F: subst > term > term] :
% 0.29/0.47                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                    | ~ ! [A: term] :
% 0.29/0.47                          ( ~ ( P @ id @ A @ id )
% 0.29/0.47                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47              | ~ ! [X: term] :
% 0.29/0.47                    ( ( Q @ X )
% 0.29/0.47                    = ( P @ id @ X @ id ) )
% 0.29/0.47              | ~ ! [B: term] :
% 0.29/0.47                    ( ~ ( Q @ B )
% 0.29/0.47                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.29/0.47              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.29/0.47      & ( axvarid
% 0.29/0.47      <=> ! [A: term] :
% 0.29/0.47            ( A
% 0.29/0.47            = ( sub @ A @ id ) ) )
% 0.29/0.47      & ( hoasinduction_lthm_3
% 0.29/0.47      <=> ( ! [P: subst > term > subst > $o] :
% 0.29/0.47              ~ ! [Q: term > $o] :
% 0.29/0.47                  ~ ! [X: term] :
% 0.29/0.47                      ( ( Q @ X )
% 0.29/0.47                      = ( P @ id @ X @ id ) )
% 0.29/0.47         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.29/0.47                ( ~ ! [A: term] :
% 0.29/0.47                      ( ~ ( var @ A )
% 0.29/0.47                      | ( P @ A ) )
% 0.29/0.47                | ~ ! [A: term,B: term] :
% 0.29/0.47                      ( ~ ( P @ A )
% 0.29/0.47                      | ~ ( P @ B )
% 0.29/0.47                      | ( P @ ( ap @ A @ B ) ) )
% 0.29/0.47                | ~ ! [A: term] :
% 0.29/0.47                      ( ~ ! [B: term] :
% 0.29/0.47                            ( ~ ( P @ B )
% 0.29/0.47                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.29/0.47                      | ( P @ ( lam @ A ) ) )
% 0.29/0.47                | ( P @ Bound_variable_2367 ) )
% 0.29/0.47           => ( ! [A: term] :
% 0.29/0.47                  ( A
% 0.29/0.47                  = ( sub @ A @ id ) )
% 0.29/0.47             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.29/0.47                    ( ~ ! [F: subst > term > term] :
% 0.29/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                          | ~ ! [A: term] :
% 0.29/0.47                                ( ~ ( P @ id @ A @ id )
% 0.29/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                    | ~ ! [X: term] :
% 0.29/0.47                          ( ( Q @ X )
% 0.29/0.47                          = ( P @ id @ X @ id ) )
% 0.29/0.47                    | ~ ! [B: term] :
% 0.29/0.47                          ( ~ ( Q @ B )
% 0.29/0.47                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.29/0.47                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.29/0.47               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.29/0.47                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.29/0.47                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.29/0.47                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.29/0.47                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.29/0.47                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.29/0.47                    | ~ ! [A: term] :
% 0.29/0.47                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.29/0.47                          | ( P @ id @ A @ id ) )
% 0.29/0.47                    | ~ ! [A: term,B: term] :
% 0.29/0.47                          ( ~ ( P @ id @ A @ id )
% 0.29/0.47                          | ~ ( P @ id @ B @ id )
% 0.29/0.47                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.29/0.47                    | ~ ! [F: subst > term > term] :
% 0.29/0.47                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.29/0.47                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.29/0.47                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.29/0.47                          | ~ ! [A: term] :
% 0.29/0.47                                ( ~ ( P @ id @ A @ id )
% 0.29/0.47                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.29/0.47                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.29/0.47                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.29/0.47  
% 0.29/0.47  thf(lamnotvar,conjecture,
% 0.29/0.47      ( lamnotvar
% 0.29/0.47      = ( ! [A: term] :
% 0.29/0.47            ~ ( var @ ( lam @ A ) ) ) ) ).
% 0.29/0.47  
% 0.29/0.47  %------------------------------------------------------------------------------
% 0.29/0.47  ------------------------
% 2.39/1.45  ---- Embedded in THF ---
% 2.39/1.46  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.39/1.46  %%% Generated on Tue May 05 08:57:35 EDT 2026
% 2.39/1.46  %%% using '$$dhol' embedding, version 1.3.0.
% 2.39/1.46  %%% Logic specification used:
% 2.39/1.46  %%% thf(spec, logic, $$dhol).
% 2.39/1.46  
% 2.39/1.46  % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.IOI7rTKtJk/DTF2DTF25437.p
% See solution above
% 2.39/1.46  ------------------------
% 2.39/1.48  ---- Cleaned THF ---
% 2.39/1.48  thf(term_type,type,
% 2.39/1.48      term: $tType ).
% 2.39/1.48  
% 2.39/1.48  thf(subst_type,type,
% 2.39/1.48      subst: $tType ).
% 2.39/1.48  
% 2.39/1.48  thf(one_decl,type,
% 2.39/1.48      one: term ).
% 2.39/1.48  
% 2.39/1.48  thf(ap_decl,type,
% 2.39/1.48      ap: term > term > term ).
% 2.39/1.48  
% 2.39/1.48  thf(lam_decl,type,
% 2.39/1.48      lam: term > term ).
% 2.39/1.48  
% 2.39/1.48  thf(sub_decl,type,
% 2.39/1.48      sub: term > subst > term ).
% 2.39/1.48  
% 2.39/1.48  thf(id_decl,type,
% 2.39/1.48      id: subst ).
% 2.39/1.48  
% 2.39/1.48  thf(sh_decl,type,
% 2.39/1.48      sh: subst ).
% 2.39/1.48  
% 2.39/1.48  thf(push_decl,type,
% 2.39/1.48      push: term > subst > subst ).
% 2.39/1.48  
% 2.39/1.48  thf(comp_decl,type,
% 2.39/1.48      comp: subst > subst > subst ).
% 2.39/1.48  
% 2.39/1.48  thf(var_decl,type,
% 2.39/1.48      var: term > $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1v2_decl,type,
% 2.39/1.48      pushprop_lem1v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1_gthm_decl,type,
% 2.39/1.48      pushprop_lem1_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axmap_decl,type,
% 2.39/1.48      axmap: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem0_gthm_decl,type,
% 2.39/1.48      pushprop_lem0_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(shinj_decl,type,
% 2.39/1.48      shinj: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem1v2_decl,type,
% 2.39/1.48      hoasinduction_lem1v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem1v2_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem1v2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasap_decl,type,
% 2.39/1.48      hoasap: subst > term > subst > term > term ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2lem_decl,type,
% 2.39/1.48      induction2lem: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2_f_decl,type,
% 2.39/1.48      hoasinduction_lem3v2_f: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axvarshift_decl,type,
% 2.39/1.48      axvarshift: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj2_decl,type,
% 2.39/1.48      hoasapinj2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapnotvar_gthm_decl,type,
% 2.39/1.48      hoasapnotvar_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj1_decl,type,
% 2.39/1.48      hoasapinj1: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(ulamvar1_decl,type,
% 2.39/1.48      ulamvar1: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2lem_lthm_decl,type,
% 2.39/1.48      induction2lem_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem3v2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(apnotvar_decl,type,
% 2.39/1.48      apnotvar: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lthm_orig_decl,type,
% 2.39/1.48      pushprop_lthm_orig: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3v2_f_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lthm_decl,type,
% 2.39/1.48      hoasinduction_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 2.39/1.48      hoasinduction_no_psi_cond_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslaminj_decl,type,
% 2.39/1.48      hoaslaminj: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3aaa_decl,type,
% 2.39/1.48      hoasinduction_lem3aaa: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2lem_gthm_decl,type,
% 2.39/1.48      induction2lem_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3aa_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3aa_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3_decl,type,
% 2.39/1.48      hoasinduction_lem3: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem2_decl,type,
% 2.39/1.48      hoasinduction_lem2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(termmset_lthm_decl,type,
% 2.39/1.48      termmset_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem1_decl,type,
% 2.39/1.48      hoasinduction_lem1: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotap_lthm_decl,type,
% 2.39/1.48      hoaslamnotap_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1v2_lthm_decl,type,
% 2.39/1.48      pushprop_lem1v2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapnotvar_decl,type,
% 2.39/1.48      hoasapnotvar: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem0_decl,type,
% 2.39/1.48      hoasinduction_lem0: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_decl,type,
% 2.39/1.48      hoasinduction: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_gthm_decl,type,
% 2.39/1.48      hoasinduction_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axapp_decl,type,
% 2.39/1.48      axapp: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotvar_lthm_decl,type,
% 2.39/1.48      hoaslamnotvar_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem3v2_lthm_decl,type,
% 2.39/1.48      pushprop_lem3v2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3b_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3b_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(ulamvarind_decl,type,
% 2.39/1.48      ulamvarind: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction_decl,type,
% 2.39/1.48      induction: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3a_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3a_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(termmset_gthm_decl,type,
% 2.39/1.48      termmset_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3aa_decl,type,
% 2.39/1.48      hoasinduction_lem3aa: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1v2_gthm_decl,type,
% 2.39/1.48      pushprop_lem1v2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotap_gthm_decl,type,
% 2.39/1.48      hoaslamnotap_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotvar_gthm_decl,type,
% 2.39/1.48      hoaslamnotvar_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3b_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem3b_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem2v2_decl,type,
% 2.39/1.48      pushprop_lem2v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3a_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem3a_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axclos_decl,type,
% 2.39/1.48      axclos: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axassoc_decl,type,
% 2.39/1.48      axassoc: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem2v2_decl,type,
% 2.39/1.48      hoasinduction_lem2v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lthm_decl,type,
% 2.39/1.48      pushprop_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(apinj2_decl,type,
% 2.39/1.48      apinj2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(apinj1_decl,type,
% 2.39/1.48      apinj1: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj2_lthm_decl,type,
% 2.39/1.48      hoasapinj2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2a_decl,type,
% 2.39/1.48      hoasinduction_lem3v2a: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj1_lthm_decl,type,
% 2.39/1.48      hoasapinj1_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslaminj_lthm_decl,type,
% 2.39/1.48      hoaslaminj_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axvarcons_decl,type,
% 2.39/1.48      axvarcons: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslam_decl,type,
% 2.39/1.48      hoaslam: subst > ( subst > term > term ) > term ).
% 2.39/1.48  
% 2.39/1.48  thf(axscons_decl,type,
% 2.39/1.48      axscons: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem2v2_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem2v2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axidr_decl,type,
% 2.39/1.48      axidr: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1_decl,type,
% 2.39/1.48      pushprop_lem1: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(laminj_decl,type,
% 2.39/1.48      laminj: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem0_decl,type,
% 2.39/1.48      pushprop_lem0: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_gthm_decl,type,
% 2.39/1.48      pushprop_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axabs_decl,type,
% 2.39/1.48      axabs: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3v2a_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem2_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj2_gthm_decl,type,
% 2.39/1.48      hoasapinj2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_p_and_p_prime_decl,type,
% 2.39/1.48      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem1_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem1_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(lamnotap_decl,type,
% 2.39/1.48      lamnotap: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapinj1_gthm_decl,type,
% 2.39/1.48      hoasapinj1_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotvar_decl,type,
% 2.39/1.48      hoaslamnotvar: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axidl_decl,type,
% 2.39/1.48      axidl: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslaminj_gthm_decl,type,
% 2.39/1.48      hoaslaminj_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2_lthm_decl,type,
% 2.39/1.48      induction2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem0_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem0_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(substmonoid_lthm_decl,type,
% 2.39/1.48      substmonoid_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_decl,type,
% 2.39/1.48      pushprop: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem3_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem2_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3b_decl,type,
% 2.39/1.48      hoasinduction_lem3b: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(substmonoid_decl,type,
% 2.39/1.48      substmonoid: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(lamnotvar_decl,type,
% 2.39/1.48      lamnotvar: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3a_decl,type,
% 2.39/1.48      hoasinduction_lem3a: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem1_gthm_decl,type,
% 2.39/1.48      hoasinduction_lem1_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_no_psi_cond_decl,type,
% 2.39/1.48      hoasinduction_no_psi_cond: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2_gthm_decl,type,
% 2.39/1.48      induction2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem2v2_lthm_decl,type,
% 2.39/1.48      pushprop_lem2v2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasvar_decl,type,
% 2.39/1.48      hoasvar: subst > term > subst > $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoaslamnotap_decl,type,
% 2.39/1.48      hoaslamnotap: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(substmonoid_gthm_decl,type,
% 2.39/1.48      substmonoid_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(ulamvarsh_decl,type,
% 2.39/1.48      ulamvarsh: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(induction2_decl,type,
% 2.39/1.48      induction2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem3v2_decl,type,
% 2.39/1.48      pushprop_lem3v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem2v2_gthm_decl,type,
% 2.39/1.48      pushprop_lem2v2_gthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem1_lthm_decl,type,
% 2.39/1.48      pushprop_lem1_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2_decl,type,
% 2.39/1.48      hoasinduction_lem3v2: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axshiftcons_decl,type,
% 2.39/1.48      axshiftcons: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(termmset_decl,type,
% 2.39/1.48      termmset: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_lem0_lthm_decl,type,
% 2.39/1.48      pushprop_lem0_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasapnotvar_lthm_decl,type,
% 2.39/1.48      hoasapnotvar_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lem3v2_lthm_decl,type,
% 2.39/1.48      hoasinduction_lem3v2_lthm: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(pushprop_p_and_p_prime_decl,type,
% 2.39/1.48      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 2.39/1.48  
% 2.39/1.48  thf(axvarid_decl,type,
% 2.39/1.48      axvarid: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(hoasinduction_lthm_3_decl,type,
% 2.39/1.48      hoasinduction_lthm_3: $o ).
% 2.39/1.48  
% 2.39/1.48  thf(d_term_type,type,
% 2.39/1.48      d_term: $tType ).
% 2.39/1.48  
% 2.39/1.48  thf(d_subst_type,type,
% 2.39/1.48      d_subst: $tType ).
% 2.39/1.48  
% 2.39/1.48  thf(d2term_decl,type,
% 2.39/1.48      d2term: d_term > term ).
% 2.39/1.48  
% 2.39/1.48  thf(d2subst_decl,type,
% 2.39/1.48      d2subst: d_subst > subst ).
% 2.39/1.48  
% 2.39/1.48  thf(d_one_decl,type,
% 2.39/1.48      d_one: d_term ).
% 2.39/1.48  
% 2.39/1.48  thf(d_id_decl,type,
% 2.39/1.48      d_id: d_subst ).
% 2.39/1.48  
% 2.39/1.48  thf(alg444_1,axiom,
% 2.39/1.48      ( ! [T: term] :
% 2.39/1.48        ? [DT: d_term] :
% 2.39/1.48          ( T
% 2.39/1.48          = ( d2term @ DT ) )
% 2.39/1.48      & ! [DT: d_term] : ( DT = d_one )
% 2.39/1.48      & ! [DT1: d_term,DT2: d_term] :
% 2.39/1.48          ( ( ( d2term @ DT1 )
% 2.39/1.48            = ( d2term @ DT2 ) )
% 2.39/1.48         => ( DT1 = DT2 ) )
% 2.39/1.48      & ! [S: subst] :
% 2.39/1.48        ? [DS: d_subst] :
% 2.39/1.48          ( S
% 2.39/1.48          = ( d2subst @ DS ) )
% 2.39/1.48      & ! [DS: d_subst] : ( DS = d_id )
% 2.39/1.48      & ! [DS1: d_subst,DS2: d_subst] :
% 2.39/1.48          ( ( ( d2subst @ DS1 )
% 2.39/1.48            = ( d2subst @ DS2 ) )
% 2.39/1.48         => ( DS1 = DS2 ) )
% 2.39/1.48      & ( one
% 2.39/1.48        = ( d2term @ d_one ) )
% 2.39/1.48      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 2.39/1.48        = ( d2term @ d_one ) )
% 2.39/1.48      & ( ( lam @ ( d2term @ d_one ) )
% 2.39/1.48        = ( d2term @ d_one ) )
% 2.39/1.48      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.48        = ( d2term @ d_one ) )
% 2.39/1.48      & ( id
% 2.39/1.48        = ( d2subst @ d_id ) )
% 2.39/1.48      & ( sh
% 2.39/1.48        = ( d2subst @ d_id ) )
% 2.39/1.48      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.48        = ( d2subst @ d_id ) )
% 2.39/1.48      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 2.39/1.48        = ( d2subst @ d_id ) )
% 2.39/1.48      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 2.39/1.48        = ( d2term @ d_one ) )
% 2.39/1.48      & ( hoaslam
% 2.39/1.48        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 2.39/1.48      & ( hoasinduction_p_and_p_prime
% 2.39/1.48        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 2.39/1.48            ! [X: term] :
% 2.39/1.48              ( ( Q @ X )
% 2.39/1.48              = ( P @ id @ X @ id ) ) ) )
% 2.39/1.48      & ( pushprop_p_and_p_prime
% 2.39/1.48        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 2.39/1.48            ! [X: term] :
% 2.39/1.48              ( ( Q @ X )
% 2.39/1.48              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 2.39/1.48      & ~ ( var @ ( d2term @ d_one ) )
% 2.39/1.48      & ( pushprop_lem1v2
% 2.39/1.48      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.39/1.48            ( ~ ( P @ A )
% 2.39/1.48            | ~ ! [X: term] :
% 2.39/1.48                  ( ( Q @ X )
% 2.39/1.48                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.39/1.48            | ( Q @ one ) ) )
% 2.39/1.48      & pushprop_lem1_gthm
% 2.39/1.48      & axmap
% 2.39/1.48      & pushprop_lem0_gthm
% 2.39/1.48      & ( shinj
% 2.39/1.48      <=> ! [A: term,B: term] :
% 2.39/1.48            ( ( ( sub @ A @ sh )
% 2.39/1.48             != ( sub @ B @ sh ) )
% 2.39/1.48            | ( A = B ) ) )
% 2.39/1.48      & hoasinduction_lem1v2
% 2.39/1.48      & hoasinduction_lem1v2_gthm
% 2.39/1.48      & ( induction2lem
% 2.39/1.48      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.48            ( ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ A )
% 2.39/1.48                  | ~ ( P @ B )
% 2.39/1.48                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48            | ~ ! [A: term] :
% 2.39/1.48                  ( ~ ! [B: term] :
% 2.39/1.48                        ( ~ ( P @ B )
% 2.39/1.48                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                  | ( P @ ( lam @ A ) ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( var @ B )
% 2.39/1.48                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.48            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 2.39/1.48      & ( hoasinduction_lem3v2_f
% 2.39/1.48      <=> ! [B: term] :
% 2.39/1.48            ~ ! [F: subst > term > term] :
% 2.39/1.48                ~ ! [A: term,M: subst] :
% 2.39/1.48                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.48                    = ( F @ M @ A ) ) )
% 2.39/1.48      & axvarshift
% 2.39/1.48      & ( hoasapinj2
% 2.39/1.48      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.48             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.48            | ( C = D ) ) )
% 2.39/1.48      & hoasapnotvar_gthm
% 2.39/1.48      & ( hoasapinj1
% 2.39/1.48      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.48             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.48            | ( A = B ) ) )
% 2.39/1.48      & ~ ulamvar1
% 2.39/1.48      & ( induction2lem_lthm
% 2.39/1.48      <=> ( ! [A: term,M: subst] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.48         => ( ! [A: term,M: subst] :
% 2.39/1.48                ( M
% 2.39/1.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.48           => ( ! [M: subst] :
% 2.39/1.48                  ( M
% 2.39/1.48                  = ( comp @ M @ id ) )
% 2.39/1.48             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 2.39/1.48                    ( ~ ! [A: term] :
% 2.39/1.48                          ( ~ ( var @ A )
% 2.39/1.48                          | ( P @ A ) )
% 2.39/1.48                    | ~ ! [A: term,B: term] :
% 2.39/1.48                          ( ~ ( P @ A )
% 2.39/1.48                          | ~ ( P @ B )
% 2.39/1.48                          | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                    | ~ ! [A: term] :
% 2.39/1.48                          ( ~ ( P @ A )
% 2.39/1.48                          | ( P @ ( lam @ A ) ) )
% 2.39/1.48                    | ( P @ Bound_variable_2140 ) )
% 2.39/1.48               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.48                    ( ~ ! [A: term,B: term] :
% 2.39/1.48                          ( ~ ( P @ A )
% 2.39/1.48                          | ~ ( P @ B )
% 2.39/1.48                          | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                    | ~ ! [A: term] :
% 2.39/1.48                          ( ~ ! [B: term] :
% 2.39/1.48                                ( ~ ( P @ B )
% 2.39/1.48                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                          | ( P @ ( lam @ A ) ) )
% 2.39/1.48                    | ~ ! [B: term] :
% 2.39/1.48                          ( ~ ( var @ B )
% 2.39/1.48                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.48                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 2.39/1.48      & hoasinduction_lem3v2_gthm
% 2.39/1.48      & apnotvar
% 2.39/1.48      & pushprop_lthm_orig
% 2.39/1.48      & ( hoasinduction_lem3v2_f_lthm
% 2.39/1.48      <=> ! [B: term] :
% 2.39/1.48            ~ ! [F: subst > term > term] :
% 2.39/1.48                ~ ! [A: term,M: subst] :
% 2.39/1.48                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.48                    = ( F @ M @ A ) ) )
% 2.39/1.48      & ( hoasinduction_lthm
% 2.39/1.48      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.48              ( ~ ! [A: term] :
% 2.39/1.48                    ( ~ ( var @ A )
% 2.39/1.48                    | ( P @ A ) )
% 2.39/1.48              | ~ ! [A: term,B: term] :
% 2.39/1.48                    ( ~ ( P @ A )
% 2.39/1.48                    | ~ ( P @ B )
% 2.39/1.48                    | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48              | ~ ! [A: term] :
% 2.39/1.48                    ( ~ ! [B: term] :
% 2.39/1.48                          ( ~ ( P @ B )
% 2.39/1.48                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                    | ( P @ ( lam @ A ) ) )
% 2.39/1.48              | ( P @ Bound_variable_2367 ) )
% 2.39/1.48         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.39/1.48                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48                | ~ ! [A: term,B: term] :
% 2.39/1.48                      ( ~ ( P @ id @ A @ id )
% 2.39/1.48                      | ~ ( P @ id @ B @ id )
% 2.39/1.48                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.39/1.48                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.39/1.48                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 2.39/1.48           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48                  | ~ ! [F: subst > term > term] :
% 2.39/1.48                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                        | ~ ! [A: term] :
% 2.39/1.48                              ( ~ ( P @ id @ A @ id )
% 2.39/1.48                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                  | ~ ! [B: term] :
% 2.39/1.48                        ( ~ ( P @ id @ B @ id )
% 2.39/1.48                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 2.39/1.48             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.48                        | ( P @ id @ A @ id ) )
% 2.39/1.48                  | ~ ! [A: term,B: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ~ ( P @ id @ B @ id )
% 2.39/1.48                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48                  | ~ ! [F: subst > term > term] :
% 2.39/1.48                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                        | ~ ! [A: term] :
% 2.39/1.48                              ( ~ ( P @ id @ A @ id )
% 2.39/1.48                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 2.39/1.48      & ( hoasinduction_no_psi_cond_lthm
% 2.39/1.48      <=> ( ! [P: subst > term > subst > $o] :
% 2.39/1.48              ~ ! [Q: term > $o] :
% 2.39/1.48                  ~ ! [X: term] :
% 2.39/1.48                      ( ( Q @ X )
% 2.39/1.48                      = ( P @ id @ X @ id ) )
% 2.39/1.48         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.48                ( ~ ! [A: term] :
% 2.39/1.48                      ( ~ ( var @ A )
% 2.39/1.48                      | ( P @ A ) )
% 2.39/1.48                | ~ ! [A: term,B: term] :
% 2.39/1.48                      ( ~ ( P @ A )
% 2.39/1.48                      | ~ ( P @ B )
% 2.39/1.48                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                | ~ ! [A: term] :
% 2.39/1.48                      ( ~ ! [B: term] :
% 2.39/1.48                            ( ~ ( P @ B )
% 2.39/1.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                      | ( P @ ( lam @ A ) ) )
% 2.39/1.48                | ( P @ Bound_variable_2367 ) )
% 2.39/1.48           => ( ! [A: term] :
% 2.39/1.48                  ( A
% 2.39/1.48                  = ( sub @ A @ id ) )
% 2.39/1.48             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.48                    ( ~ ! [F: subst > term > term] :
% 2.39/1.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                          | ~ ! [A: term] :
% 2.39/1.48                                ( ~ ( P @ id @ A @ id )
% 2.39/1.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                    | ~ ! [X: term] :
% 2.39/1.48                          ( ( Q @ X )
% 2.39/1.48                          = ( P @ id @ X @ id ) )
% 2.39/1.48                    | ~ ! [B: term] :
% 2.39/1.48                          ( ~ ( Q @ B )
% 2.39/1.48                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.48                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.39/1.48               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.39/1.48                    ( ~ ! [A: term,B: term] :
% 2.39/1.48                          ( ~ ( P @ id @ A @ id )
% 2.39/1.48                          | ~ ( P @ id @ B @ id )
% 2.39/1.48                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48                    | ~ ! [F: subst > term > term] :
% 2.39/1.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                          | ~ ! [A: term] :
% 2.39/1.48                                ( ~ ( P @ id @ A @ id )
% 2.39/1.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 2.39/1.48      & ( hoaslaminj
% 2.39/1.48      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.39/1.48                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48            | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.48             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.39/1.48            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.39/1.48              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 2.39/1.48      & ( hoasinduction_lem3aaa
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 2.39/1.48            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 2.39/1.48                  ( ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 2.39/1.48                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 2.39/1.48                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 2.39/1.48                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 2.39/1.48                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 2.39/1.48                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.48      & induction2lem_gthm
% 2.39/1.48      & ( hoasinduction_lem3aa_lthm
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.48            ( ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.48      & ( hoasinduction_lem3
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48            | ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 2.39/1.48      & ( hoasinduction_lem2
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48            | ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ A @ id )
% 2.39/1.48                  | ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.39/1.48            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.39/1.48            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 2.39/1.48      & ( termmset_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) ) ) )
% 2.39/1.48      & hoasinduction_lem1
% 2.39/1.48      & hoaslamnotap_lthm
% 2.39/1.48      & ( pushprop_lem1v2_lthm
% 2.39/1.48      <=> ( ! [A: term,M: subst] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.48         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.39/1.48              ( ~ ( P @ A )
% 2.39/1.48              | ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.39/1.48              | ( Q @ one ) ) ) )
% 2.39/1.48      & hoasapnotvar
% 2.39/1.48      & ( hoasinduction_lem0
% 2.39/1.48      <=> ! [P: subst > term > subst > $o] :
% 2.39/1.48            ~ ! [Q: term > $o] :
% 2.39/1.48                ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ id @ X @ id ) ) )
% 2.39/1.48      & ( hoasinduction
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48            | ~ ! [A: term] :
% 2.39/1.48                  ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.48                  | ( P @ id @ A @ id ) )
% 2.39/1.48            | ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ A @ id )
% 2.39/1.48                  | ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48            | ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 2.39/1.48      & hoasinduction_gthm
% 2.39/1.48      & axapp
% 2.39/1.48      & hoaslamnotvar_lthm
% 2.39/1.48      & pushprop_lem3v2_lthm
% 2.39/1.48      & ( hoasinduction_lem3b_lthm
% 2.39/1.48      <=> ! [B: term] :
% 2.39/1.48            ~ ! [F: subst > term > term] :
% 2.39/1.48                ( ( F @ sh @ one )
% 2.39/1.48               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.39/1.48      & ulamvarind
% 2.39/1.48      & ( induction
% 2.39/1.48      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 2.39/1.48            ( ~ ! [A: term] :
% 2.39/1.48                  ( ~ ( var @ A )
% 2.39/1.48                  | ( P @ A ) )
% 2.39/1.48            | ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ A )
% 2.39/1.48                  | ~ ( P @ B )
% 2.39/1.48                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48            | ~ ! [A: term] :
% 2.39/1.48                  ( ~ ( P @ A )
% 2.39/1.48                  | ( P @ ( lam @ A ) ) )
% 2.39/1.48            | ( P @ Bound_variable_2140 ) ) )
% 2.39/1.48      & ( hoasinduction_lem3a_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.48                ( ~ ! [F: subst > term > term] :
% 2.39/1.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                      | ~ ! [A: term] :
% 2.39/1.48                            ( ~ ( P @ id @ A @ id )
% 2.39/1.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( P @ id @ B @ id )
% 2.39/1.48                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.39/1.48           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.39/1.48                ( ~ ! [F: subst > term > term] :
% 2.39/1.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                      | ~ ! [A: term] :
% 2.39/1.48                            ( ~ ( P @ id @ A @ id )
% 2.39/1.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( P @ id @ B @ id )
% 2.39/1.48                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 2.39/1.48      & termmset_gthm
% 2.39/1.48      & ( hoasinduction_lem3aa
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.48            ( ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.39/1.48      & pushprop_lem1v2_gthm
% 2.39/1.48      & hoaslamnotap_gthm
% 2.39/1.48      & hoaslamnotvar_gthm
% 2.39/1.48      & hoasinduction_lem3b_gthm
% 2.39/1.48      & pushprop_lem2v2
% 2.39/1.48      & hoasinduction_lem3a_gthm
% 2.39/1.48      & axclos
% 2.39/1.48      & axassoc
% 2.39/1.48      & ( hoasinduction_lem2v2
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48            | ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ A @ id )
% 2.39/1.48                  | ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48            | ~ ! [X: term] :
% 2.39/1.48                  ( ( Q @ X )
% 2.39/1.48                  = ( P @ id @ X @ id ) )
% 2.39/1.48            | ~ ( Q @ Bound_variable_2820 )
% 2.39/1.48            | ~ ( Q @ Bound_variable_2822 )
% 2.39/1.48            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 2.39/1.48      & pushprop_lthm
% 2.39/1.48      & ( apinj2
% 2.39/1.48      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48            ( ( ( ap @ A @ C )
% 2.39/1.48             != ( ap @ B @ D ) )
% 2.39/1.48            | ( C = D ) ) )
% 2.39/1.48      & ( apinj1
% 2.39/1.48      <=> ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48            ( ( ( ap @ A @ C )
% 2.39/1.48             != ( ap @ B @ D ) )
% 2.39/1.48            | ( A = B ) ) )
% 2.39/1.48      & ( hoasapinj2_lthm
% 2.39/1.48      <=> ( ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48              ( ( ( ap @ A @ C )
% 2.39/1.48               != ( ap @ B @ D ) )
% 2.39/1.48              | ( C = D ) )
% 2.39/1.48         => ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.48               != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.48              | ( C = D ) ) ) )
% 2.39/1.48      & ( hoasinduction_lem3v2a
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.48            ( ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [X: term] :
% 2.39/1.48                  ( ( Q @ X )
% 2.39/1.48                  = ( P @ id @ X @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( Q @ B )
% 2.39/1.48                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.48            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 2.39/1.48      & ( hoasapinj1_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ( ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48                ( ( ( ap @ A @ C )
% 2.39/1.48                 != ( ap @ B @ D ) )
% 2.39/1.48                | ( A = B ) )
% 2.39/1.48           => ! [A: term,B: term,C: term,D: term] :
% 2.39/1.48                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.39/1.48                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.39/1.48                | ( A = B ) ) ) ) )
% 2.39/1.48      & ( hoaslaminj_lthm
% 2.39/1.48      <=> ( ! [A: term,M: subst] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.48         => ( ! [A: term,M: subst] :
% 2.39/1.48                ( M
% 2.39/1.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.48           => ( ! [A: term,B: term] :
% 2.39/1.48                  ( ( ( lam @ A )
% 2.39/1.48                   != ( lam @ B ) )
% 2.39/1.48                  | ( A = B ) )
% 2.39/1.48             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.39/1.48                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.48                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.39/1.48                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.39/1.48                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 2.39/1.48      & ( axvarcons
% 2.39/1.48      <=> ! [A: term,M: subst] :
% 2.39/1.48            ( A
% 2.39/1.48            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 2.39/1.48      & ( axscons
% 2.39/1.48      <=> ! [M: subst] :
% 2.39/1.48            ( M
% 2.39/1.48            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 2.39/1.48      & hoasinduction_lem2v2_gthm
% 2.39/1.48      & ( axidr
% 2.39/1.48      <=> ! [M: subst] :
% 2.39/1.48            ( M
% 2.39/1.48            = ( comp @ M @ id ) ) )
% 2.39/1.48      & ( pushprop_lem1
% 2.39/1.48      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.39/1.48            ( ~ ( P @ A )
% 2.39/1.48            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 2.39/1.48      & ( laminj
% 2.39/1.48      <=> ! [A: term,B: term] :
% 2.39/1.48            ( ( ( lam @ A )
% 2.39/1.48             != ( lam @ B ) )
% 2.39/1.48            | ( A = B ) ) )
% 2.39/1.48      & ( hoasinduction_lem3_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.39/1.48                ( ~ ! [F: subst > term > term] :
% 2.39/1.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                      | ~ ! [A: term] :
% 2.39/1.48                            ( ~ ( P @ id @ A @ id )
% 2.39/1.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( P @ id @ B @ id )
% 2.39/1.48                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.39/1.48           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.39/1.48                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48                | ~ ! [F: subst > term > term] :
% 2.39/1.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                      | ~ ! [A: term] :
% 2.39/1.48                            ( ~ ( P @ id @ A @ id )
% 2.39/1.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( P @ id @ B @ id )
% 2.39/1.48                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 2.39/1.48      & ( pushprop_lem0
% 2.39/1.48      <=> ! [P: term > $o,A: term,M: subst] :
% 2.39/1.48            ~ ! [Q: term > $o] :
% 2.39/1.48                ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.39/1.48      & pushprop_gthm
% 2.39/1.48      & axabs
% 2.39/1.48      & ( hoasinduction_lem3v2a_lthm
% 2.39/1.48      <=> ( ! [B: term] :
% 2.39/1.48              ~ ! [F: subst > term > term] :
% 2.39/1.48                  ~ ! [A: term,M: subst] :
% 2.39/1.48                      ( ( sub @ B @ ( push @ A @ M ) )
% 2.39/1.48                      = ( F @ M @ A ) )
% 2.39/1.48         => ( ! [A: term] :
% 2.39/1.48                ( A
% 2.39/1.48                = ( sub @ A @ id ) )
% 2.39/1.48           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.48                ( ~ ! [F: subst > term > term] :
% 2.39/1.48                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                      | ~ ! [A: term] :
% 2.39/1.48                            ( ~ ( P @ id @ A @ id )
% 2.39/1.48                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                | ~ ! [X: term] :
% 2.39/1.48                      ( ( Q @ X )
% 2.39/1.48                      = ( P @ id @ X @ id ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( Q @ B )
% 2.39/1.48                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.48                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 2.39/1.48      & hoasinduction_lem2_lthm
% 2.39/1.48      & hoasapinj2_gthm
% 2.39/1.48      & hoasinduction_lem1_lthm
% 2.39/1.48      & ~ lamnotap
% 2.39/1.48      & hoasapinj1_gthm
% 2.39/1.48      & hoaslamnotvar
% 2.39/1.48      & ( axidl
% 2.39/1.48      <=> ! [M: subst] :
% 2.39/1.48            ( M
% 2.39/1.48            = ( comp @ id @ M ) ) )
% 2.39/1.48      & hoaslaminj_gthm
% 2.39/1.48      & ( induction2_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.39/1.48                ( ~ ! [A: term,B: term] :
% 2.39/1.48                      ( ~ ( P @ A )
% 2.39/1.48                      | ~ ( P @ B )
% 2.39/1.48                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                | ~ ! [A: term] :
% 2.39/1.48                      ( ~ ! [B: term] :
% 2.39/1.48                            ( ~ ( P @ B )
% 2.39/1.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                      | ( P @ ( lam @ A ) ) )
% 2.39/1.48                | ~ ! [B: term] :
% 2.39/1.48                      ( ~ ( var @ B )
% 2.39/1.48                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.39/1.48                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 2.39/1.48           => ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.48                ( ~ ! [A: term] :
% 2.39/1.48                      ( ~ ( var @ A )
% 2.39/1.48                      | ( P @ A ) )
% 2.39/1.48                | ~ ! [A: term,B: term] :
% 2.39/1.48                      ( ~ ( P @ A )
% 2.39/1.48                      | ~ ( P @ B )
% 2.39/1.48                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                | ~ ! [A: term] :
% 2.39/1.48                      ( ~ ! [B: term] :
% 2.39/1.48                            ( ~ ( P @ B )
% 2.39/1.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                      | ( P @ ( lam @ A ) ) )
% 2.39/1.48                | ( P @ Bound_variable_2367 ) ) ) ) )
% 2.39/1.48      & ( hoasinduction_lem0_lthm
% 2.39/1.48      <=> ! [P: subst > term > subst > $o] :
% 2.39/1.48            ~ ! [Q: term > $o] :
% 2.39/1.48                ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ id @ X @ id ) ) )
% 2.39/1.48      & ( substmonoid_lthm
% 2.39/1.48      <=> ( ! [M: subst] :
% 2.39/1.48              ( M
% 2.39/1.48              = ( comp @ id @ M ) )
% 2.39/1.48         => ( ! [M: subst] :
% 2.39/1.48                ( M
% 2.39/1.48                = ( comp @ M @ id ) )
% 2.39/1.48           => ( ! [M: subst] :
% 2.39/1.48                  ( M
% 2.39/1.48                  = ( comp @ id @ M ) )
% 2.39/1.48              & ! [M: subst] :
% 2.39/1.48                  ( M
% 2.39/1.48                  = ( comp @ M @ id ) ) ) ) ) )
% 2.39/1.48      & pushprop
% 2.39/1.48      & hoasinduction_lem3_gthm
% 2.39/1.48      & hoasinduction_lem2_gthm
% 2.39/1.48      & ( hoasinduction_lem3b
% 2.39/1.48      <=> ! [B: term] :
% 2.39/1.48            ~ ! [F: subst > term > term] :
% 2.39/1.48                ( ( F @ sh @ one )
% 2.39/1.48               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.39/1.48      & ( substmonoid
% 2.39/1.48      <=> ( ! [M: subst] :
% 2.39/1.48              ( M
% 2.39/1.48              = ( comp @ id @ M ) )
% 2.39/1.48          & ! [M: subst] :
% 2.39/1.48              ( M
% 2.39/1.48              = ( comp @ M @ id ) ) ) )
% 2.39/1.48      & lamnotvar
% 2.39/1.48      & ( hoasinduction_lem3a
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.39/1.48            ( ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 2.39/1.48      & hoasinduction_lem1_gthm
% 2.39/1.48      & ( hoasinduction_no_psi_cond
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.39/1.48            ( ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ id @ A @ id )
% 2.39/1.48                  | ~ ( P @ id @ B @ id )
% 2.39/1.48                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48            | ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 2.39/1.48      & induction2_gthm
% 2.39/1.48      & pushprop_lem2v2_lthm
% 2.39/1.48      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.39/1.48      & ( hoaslamnotap
% 2.39/1.48      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48            | ( ( lam @ ( F @ sh @ one ) )
% 2.39/1.48             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 2.39/1.48      & substmonoid_gthm
% 2.39/1.48      & ulamvarsh
% 2.39/1.48      & ( induction2
% 2.39/1.48      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.48            ( ~ ! [A: term] :
% 2.39/1.48                  ( ~ ( var @ A )
% 2.39/1.48                  | ( P @ A ) )
% 2.39/1.48            | ~ ! [A: term,B: term] :
% 2.39/1.48                  ( ~ ( P @ A )
% 2.39/1.48                  | ~ ( P @ B )
% 2.39/1.48                  | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48            | ~ ! [A: term] :
% 2.39/1.48                  ( ~ ! [B: term] :
% 2.39/1.48                        ( ~ ( P @ B )
% 2.39/1.48                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                  | ( P @ ( lam @ A ) ) )
% 2.39/1.48            | ( P @ Bound_variable_2367 ) ) )
% 2.39/1.48      & pushprop_lem3v2
% 2.39/1.48      & pushprop_lem2v2_gthm
% 2.39/1.48      & ( pushprop_lem1_lthm
% 2.39/1.48      <=> ( ! [A: term,M: subst] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.39/1.48         => ( ! [A: term,M: subst] :
% 2.39/1.48                ( M
% 2.39/1.48                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.39/1.48           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.39/1.48                ( ~ ( P @ A )
% 2.39/1.48                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 2.39/1.48      & ( hoasinduction_lem3v2
% 2.39/1.48      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.39/1.48            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48            | ~ ! [F: subst > term > term] :
% 2.39/1.48                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                  | ~ ! [A: term] :
% 2.39/1.48                        ( ~ ( P @ id @ A @ id )
% 2.39/1.48                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48            | ~ ! [X: term] :
% 2.39/1.48                  ( ( Q @ X )
% 2.39/1.48                  = ( P @ id @ X @ id ) )
% 2.39/1.48            | ~ ! [B: term] :
% 2.39/1.48                  ( ~ ( Q @ B )
% 2.39/1.48                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.39/1.48            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 2.39/1.48      & ( axshiftcons
% 2.39/1.48      <=> ! [A: term,M: subst] :
% 2.39/1.48            ( M
% 2.39/1.48            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 2.39/1.48      & ( termmset
% 2.39/1.48      <=> ! [A: term] :
% 2.39/1.48            ( A
% 2.39/1.48            = ( sub @ A @ id ) ) )
% 2.39/1.48      & ( pushprop_lem0_lthm
% 2.39/1.48      <=> ! [P: term > $o,A: term,M: subst] :
% 2.39/1.48            ~ ! [Q: term > $o] :
% 2.39/1.48                ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.39/1.48      & hoasapnotvar_lthm
% 2.39/1.48      & ( hoasinduction_lem3v2_lthm
% 2.39/1.48      <=> ( ! [A: term] :
% 2.39/1.48              ( A
% 2.39/1.48              = ( sub @ A @ id ) )
% 2.39/1.48         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.39/1.48              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48              | ~ ! [F: subst > term > term] :
% 2.39/1.48                    ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                          ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                    | ~ ! [A: term] :
% 2.39/1.48                          ( ~ ( P @ id @ A @ id )
% 2.39/1.48                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48              | ~ ! [X: term] :
% 2.39/1.48                    ( ( Q @ X )
% 2.39/1.48                    = ( P @ id @ X @ id ) )
% 2.39/1.48              | ~ ! [B: term] :
% 2.39/1.48                    ( ~ ( Q @ B )
% 2.39/1.48                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.39/1.48              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 2.39/1.48      & ( axvarid
% 2.39/1.48      <=> ! [A: term] :
% 2.39/1.48            ( A
% 2.39/1.48            = ( sub @ A @ id ) ) )
% 2.39/1.48      & ( hoasinduction_lthm_3
% 2.39/1.48      <=> ( ! [P: subst > term > subst > $o] :
% 2.39/1.48              ~ ! [Q: term > $o] :
% 2.39/1.48                  ~ ! [X: term] :
% 2.39/1.48                      ( ( Q @ X )
% 2.39/1.48                      = ( P @ id @ X @ id ) )
% 2.39/1.48         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.39/1.48                ( ~ ! [A: term] :
% 2.39/1.48                      ( ~ ( var @ A )
% 2.39/1.48                      | ( P @ A ) )
% 2.39/1.48                | ~ ! [A: term,B: term] :
% 2.39/1.48                      ( ~ ( P @ A )
% 2.39/1.48                      | ~ ( P @ B )
% 2.39/1.48                      | ( P @ ( ap @ A @ B ) ) )
% 2.39/1.48                | ~ ! [A: term] :
% 2.39/1.48                      ( ~ ! [B: term] :
% 2.39/1.48                            ( ~ ( P @ B )
% 2.39/1.48                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.39/1.48                      | ( P @ ( lam @ A ) ) )
% 2.39/1.48                | ( P @ Bound_variable_2367 ) )
% 2.39/1.48           => ( ! [A: term] :
% 2.39/1.48                  ( A
% 2.39/1.48                  = ( sub @ A @ id ) )
% 2.39/1.48             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.39/1.48                    ( ~ ! [F: subst > term > term] :
% 2.39/1.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                          | ~ ! [A: term] :
% 2.39/1.48                                ( ~ ( P @ id @ A @ id )
% 2.39/1.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                    | ~ ! [X: term] :
% 2.39/1.48                          ( ( Q @ X )
% 2.39/1.48                          = ( P @ id @ X @ id ) )
% 2.39/1.48                    | ~ ! [B: term] :
% 2.39/1.48                          ( ~ ( Q @ B )
% 2.39/1.48                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.39/1.48                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.39/1.48               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.39/1.48                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.39/1.48                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.39/1.48                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.39/1.48                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.39/1.48                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.39/1.48                    | ~ ! [A: term] :
% 2.39/1.48                          ( ~ ( var @ ( sub @ A @ id ) )
% 2.39/1.48                          | ( P @ id @ A @ id ) )
% 2.39/1.48                    | ~ ! [A: term,B: term] :
% 2.39/1.48                          ( ~ ( P @ id @ A @ id )
% 2.39/1.48                          | ~ ( P @ id @ B @ id )
% 2.39/1.48                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.39/1.48                    | ~ ! [F: subst > term > term] :
% 2.39/1.48                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.39/1.48                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.39/1.48                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.39/1.48                          | ~ ! [A: term] :
% 2.39/1.48                                ( ~ ( P @ id @ A @ id )
% 2.39/1.48                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.39/1.48                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.39/1.48                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 2.39/1.48  
% 2.39/1.48  thf(lamnotvar,conjecture,
% 2.39/1.48      ( lamnotvar
% 2.39/1.48      = ( ! [A: term] :
% 2.39/1.48            ~ ( var @ ( lam @ A ) ) ) ) ).
% 2.39/1.48  ------------------------
% 2.47/1.51  % (25710)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/183Mi)
% 2.47/1.51  % (25711)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_25437 for (2999ds/4Mi)
% 2.47/1.51  % (25711)Instruction limit reached!
% 2.47/1.51  % (25711)------------------------------
% 2.47/1.51  % (25711)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.51  % (25711)Termination reason: Unknown
% 2.47/1.51  % (25711)Termination phase: shuffling
% 2.47/1.51  
% 2.47/1.51  % (25711)Memory used [KB]: 1407
% 2.47/1.51  % (25711)Time elapsed: 0.003 s
% 2.47/1.51  % (25711)Instructions burned: 6 (million)
% 2.47/1.51  % (25711)------------------------------
% 2.47/1.51  % (25711)------------------------------
% 2.47/1.51  % (25713)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/2Mi)
% 2.47/1.51  % (25712)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_25437 for (2999ds/27Mi)
% 2.47/1.51  % (25715)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_25437 for (2999ds/275Mi)
% 2.47/1.51  % (25714)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_25437 for (2999ds/2Mi)
% 2.47/1.51  % (25716)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/18Mi)
% 2.47/1.52  % (25713)Instruction limit reached!
% 2.47/1.52  % (25713)------------------------------
% 2.47/1.52  % (25713)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.52  % (25713)Termination reason: Unknown
% 2.47/1.52  % (25713)Termination phase: shuffling
% 2.47/1.52  
% 2.47/1.52  % (25713)Memory used [KB]: 1279
% 2.47/1.52  % (25713)Time elapsed: 0.004 s
% 2.47/1.52  % (25713)Instructions burned: 3 (million)
% 2.47/1.52  % (25713)------------------------------
% 2.47/1.52  % (25713)------------------------------
% 2.47/1.52  % (25714)Instruction limit reached!
% 2.47/1.52  % (25714)------------------------------
% 2.47/1.52  % (25714)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.52  % (25714)Termination reason: Unknown
% 2.47/1.52  % (25714)Termination phase: shuffling
% 2.47/1.52  
% 2.47/1.52  % (25714)Memory used [KB]: 1279
% 2.47/1.52  % (25714)Time elapsed: 0.004 s
% 2.47/1.52  % (25714)Instructions burned: 3 (million)
% 2.47/1.52  % (25714)------------------------------
% 2.47/1.52  % (25714)------------------------------
% 2.47/1.52  % (25717)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/3Mi)
% 2.47/1.52  % (25717)Instruction limit reached!
% 2.47/1.52  % (25717)------------------------------
% 2.47/1.52  % (25717)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.52  % (25717)Termination reason: Unknown
% 2.47/1.52  % (25717)Termination phase: shuffling
% 2.47/1.52  
% 2.47/1.52  % (25717)Memory used [KB]: 1279
% 2.47/1.52  % (25717)Time elapsed: 0.003 s
% 2.47/1.52  % (25717)Instructions burned: 4 (million)
% 2.47/1.52  % (25717)------------------------------
% 2.47/1.52  % (25717)------------------------------
% 2.47/1.52  % (25716)Instruction limit reached!
% 2.47/1.52  % (25716)------------------------------
% 2.47/1.52  % (25716)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.52  % (25716)Termination reason: Unknown
% 2.47/1.52  % (25716)Termination phase: shuffling
% 2.47/1.52  
% 2.47/1.52  % (25716)Memory used [KB]: 2046
% 2.47/1.52  % (25716)Time elapsed: 0.013 s
% 2.47/1.52  % (25716)Instructions burned: 18 (million)
% 2.47/1.52  % (25716)------------------------------
% 2.47/1.52  % (25716)------------------------------
% 2.47/1.53  % (25712)Instruction limit reached!
% 2.47/1.53  % (25712)------------------------------
% 2.47/1.53  % (25712)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.53  % (25712)Termination reason: Unknown
% 2.47/1.53  % (25712)Termination phase: Property scanning
% 2.47/1.53  
% 2.47/1.53  % (25712)Memory used [KB]: 2174
% 2.47/1.53  % (25712)Time elapsed: 0.018 s
% 2.47/1.53  % (25712)Instructions burned: 27 (million)
% 2.47/1.53  % (25712)------------------------------
% 2.47/1.53  % (25712)------------------------------
% 2.47/1.53  % (25720)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_25437 for (2999ds/3Mi)
% 2.47/1.53  % (25720)Instruction limit reached!
% 2.47/1.53  % (25720)------------------------------
% 2.47/1.53  % (25720)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.53  % (25720)Termination reason: Unknown
% 2.47/1.53  % (25720)Termination phase: shuffling
% 2.47/1.53  
% 2.47/1.53  % (25720)Memory used [KB]: 1279
% 2.47/1.53  % (25720)Time elapsed: 0.003 s
% 2.47/1.53  % (25720)Instructions burned: 4 (million)
% 2.47/1.53  % (25720)------------------------------
% 2.47/1.53  % (25720)------------------------------
% 2.47/1.53  % (25718)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_25437 for (2999ds/37Mi)
% 2.47/1.53  % (25719)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_25437 for (2999ds/15Mi)
% 2.47/1.54  % (25715)Refutation not found, incomplete strategy
% 2.47/1.54  % (25715)------------------------------
% 2.47/1.54  % (25715)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.54  % (25715)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.54  
% 2.47/1.54  
% 2.47/1.54  % (25715)Memory used [KB]: 6652
% 2.47/1.54  % (25715)Time elapsed: 0.023 s
% 2.47/1.54  % (25715)Instructions burned: 37 (million)
% 2.47/1.54  % (25715)------------------------------
% 2.47/1.54  % (25715)------------------------------
% 2.47/1.54  % (25723)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/16Mi)
% 2.47/1.54  % (25721)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_25437 for (2999ds/1041Mi)
% 2.47/1.54  % (25719)Instruction limit reached!
% 2.47/1.54  % (25719)------------------------------
% 2.47/1.54  % (25719)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.54  % (25719)Termination reason: Unknown
% 2.47/1.54  % (25719)Termination phase: shuffling
% 2.47/1.54  
% 2.47/1.54  % (25719)Memory used [KB]: 1791
% 2.47/1.54  % (25719)Time elapsed: 0.010 s
% 2.47/1.54  % (25719)Instructions burned: 15 (million)
% 2.47/1.54  % (25719)------------------------------
% 2.47/1.54  % (25719)------------------------------
% 2.47/1.55  % (25723)Instruction limit reached!
% 2.47/1.55  % (25723)------------------------------
% 2.47/1.55  % (25723)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.55  % (25723)Termination reason: Unknown
% 2.47/1.55  % (25723)Termination phase: shuffling
% 2.47/1.55  
% 2.47/1.55  % (25723)Memory used [KB]: 1918
% 2.47/1.55  % (25723)Time elapsed: 0.007 s
% 2.47/1.55  % (25723)Instructions burned: 16 (million)
% 2.47/1.55  % (25723)------------------------------
% 2.47/1.55  % (25723)------------------------------
% 2.47/1.55  % (25722)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/7Mi)
% 2.47/1.55  % (25718)Instruction limit reached!
% 2.47/1.55  % (25718)------------------------------
% 2.47/1.55  % (25718)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.55  % (25718)Termination reason: Unknown
% 2.47/1.55  % (25718)Termination phase: shuffling
% 2.47/1.55  
% 2.47/1.55  % (25718)Memory used [KB]: 1918
% 2.47/1.55  % (25718)Time elapsed: 0.020 s
% 2.47/1.55  % (25718)Instructions burned: 37 (million)
% 2.47/1.55  % (25718)------------------------------
% 2.47/1.55  % (25718)------------------------------
% 2.47/1.55  % (25722)Instruction limit reached!
% 2.47/1.55  % (25722)------------------------------
% 2.47/1.55  % (25722)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.55  % (25722)Termination reason: Unknown
% 2.47/1.55  % (25722)Termination phase: shuffling
% 2.47/1.55  
% 2.47/1.55  % (25722)Memory used [KB]: 1407
% 2.47/1.55  % (25722)Time elapsed: 0.006 s
% 2.47/1.55  % (25722)Instructions burned: 8 (million)
% 2.47/1.55  % (25722)------------------------------
% 2.47/1.55  % (25722)------------------------------
% 2.47/1.55  % (25724)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_25437 for (2999ds/3Mi)
% 2.47/1.56  % (25710)Instruction limit reached!
% 2.47/1.56  % (25710)------------------------------
% 2.47/1.56  % (25710)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.56  % (25710)Termination reason: Unknown
% 2.47/1.56  % (25710)Termination phase: Property scanning
% 2.47/1.56  
% 2.47/1.56  % (25710)Memory used [KB]: 4349
% 2.47/1.56  % (25710)Time elapsed: 0.051 s
% 2.47/1.56  % (25710)Instructions burned: 184 (million)
% 2.47/1.56  % (25710)------------------------------
% 2.47/1.56  % (25710)------------------------------
% 2.47/1.56  % (25724)Instruction limit reached!
% 2.47/1.56  % (25724)------------------------------
% 2.47/1.56  % (25724)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.56  % (25724)Termination reason: Unknown
% 2.47/1.56  % (25724)Termination phase: shuffling
% 2.47/1.56  
% 2.47/1.56  % (25724)Memory used [KB]: 1279
% 2.47/1.56  % (25724)Time elapsed: 0.004 s
% 2.47/1.56  % (25724)Instructions burned: 4 (million)
% 2.47/1.56  % (25724)------------------------------
% 2.47/1.56  % (25724)------------------------------
% 2.47/1.56  % (25726)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/7Mi)
% 2.47/1.56  % (25726)Instruction limit reached!
% 2.47/1.56  % (25726)------------------------------
% 2.47/1.56  % (25726)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.56  % (25726)Termination reason: Unknown
% 2.47/1.56  % (25726)Termination phase: shuffling
% 2.47/1.56  
% 2.47/1.56  % (25726)Memory used [KB]: 1407
% 2.47/1.56  % (25726)Time elapsed: 0.004 s
% 2.47/1.56  % (25726)Instructions burned: 8 (million)
% 2.47/1.56  % (25726)------------------------------
% 2.47/1.56  % (25726)------------------------------
% 2.47/1.56  % (25725)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_25437 for (2999ds/3Mi)
% 2.47/1.56  % (25725)Instruction limit reached!
% 2.47/1.56  % (25725)------------------------------
% 2.47/1.56  % (25725)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.56  % (25725)Termination reason: Unknown
% 2.47/1.56  % (25725)Termination phase: shuffling
% 2.47/1.56  
% 2.47/1.56  % (25725)Memory used [KB]: 1279
% 2.47/1.56  % (25725)Time elapsed: 0.004 s
% 2.47/1.56  % (25725)Instructions burned: 4 (million)
% 2.47/1.56  % (25725)------------------------------
% 2.47/1.56  % (25725)------------------------------
% 2.47/1.57  % (25727)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/3Mi)
% 2.47/1.57  % (25728)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/4Mi)
% 2.47/1.57  % (25731)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/6Mi)
% 2.47/1.57  % (25727)Instruction limit reached!
% 2.47/1.57  % (25727)------------------------------
% 2.47/1.57  % (25727)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.57  % (25727)Termination reason: Unknown
% 2.47/1.57  % (25727)Termination phase: shuffling
% 2.47/1.57  
% 2.47/1.57  % (25727)Memory used [KB]: 1279
% 2.47/1.57  % (25727)Time elapsed: 0.004 s
% 2.47/1.57  % (25727)Instructions burned: 5 (million)
% 2.47/1.57  % (25727)------------------------------
% 2.47/1.57  % (25727)------------------------------
% 2.47/1.57  % (25728)Instruction limit reached!
% 2.47/1.57  % (25728)------------------------------
% 2.47/1.57  % (25728)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.57  % (25728)Termination reason: Unknown
% 2.47/1.57  % (25728)Termination phase: shuffling
% 2.47/1.57  
% 2.47/1.57  % (25728)Memory used [KB]: 1279
% 2.47/1.57  % (25728)Time elapsed: 0.004 s
% 2.47/1.57  % (25728)Instructions burned: 4 (million)
% 2.47/1.57  % (25728)------------------------------
% 2.47/1.57  % (25728)------------------------------
% 2.47/1.57  % (25731)Instruction limit reached!
% 2.47/1.57  % (25731)------------------------------
% 2.47/1.57  % (25731)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.57  % (25731)Termination reason: Unknown
% 2.47/1.57  % (25731)Termination phase: shuffling
% 2.47/1.57  
% 2.47/1.57  % (25731)Memory used [KB]: 1407
% 2.47/1.57  % (25731)Time elapsed: 0.004 s
% 2.47/1.57  % (25731)Instructions burned: 7 (million)
% 2.47/1.57  % (25731)------------------------------
% 2.47/1.57  % (25731)------------------------------
% 2.47/1.57  % (25729)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/18Mi)
% 2.47/1.57  % (25730)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/710Mi)
% 2.47/1.58  % (25732)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_25437 for (2999ds/902Mi)
% 2.47/1.58  % (25735)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_25437 for (2999ds/6Mi)
% 2.47/1.58  % (25735)Instruction limit reached!
% 2.47/1.58  % (25735)------------------------------
% 2.47/1.58  % (25735)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.58  % (25735)Termination reason: Unknown
% 2.47/1.58  % (25735)Termination phase: shuffling
% 2.47/1.58  
% 2.47/1.58  % (25735)Memory used [KB]: 1407
% 2.47/1.58  % (25735)Time elapsed: 0.004 s
% 2.47/1.58  % (25735)Instructions burned: 8 (million)
% 2.47/1.58  % (25735)------------------------------
% 2.47/1.58  % (25735)------------------------------
% 2.47/1.58  % (25729)Instruction limit reached!
% 2.47/1.58  % (25729)------------------------------
% 2.47/1.58  % (25729)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.58  % (25729)Termination reason: Unknown
% 2.47/1.58  % (25729)Termination phase: shuffling
% 2.47/1.58  
% 2.47/1.58  % (25729)Memory used [KB]: 2046
% 2.47/1.58  % (25729)Time elapsed: 0.013 s
% 2.47/1.58  % (25729)Instructions burned: 19 (million)
% 2.47/1.58  % (25729)------------------------------
% 2.47/1.58  % (25729)------------------------------
% 2.47/1.59  % (25733)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_25437 for (2999ds/21Mi)
% 2.47/1.59  % (25734)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/5Mi)
% 2.47/1.59  % (25734)Instruction limit reached!
% 2.47/1.59  % (25734)------------------------------
% 2.47/1.59  % (25734)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.59  % (25734)Termination reason: Unknown
% 2.47/1.59  % (25734)Termination phase: shuffling
% 2.47/1.59  
% 2.47/1.59  % (25734)Memory used [KB]: 1407
% 2.47/1.59  % (25734)Time elapsed: 0.005 s
% 2.47/1.59  % (25734)Instructions burned: 6 (million)
% 2.47/1.59  % (25734)------------------------------
% 2.47/1.59  % (25734)------------------------------
% 2.47/1.59  % (25736)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_25437 for (2999ds/377Mi)
% 2.47/1.60  % (25733)Instruction limit reached!
% 2.47/1.60  % (25733)------------------------------
% 2.47/1.60  % (25733)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.60  % (25733)Termination reason: Unknown
% 2.47/1.60  % (25733)Termination phase: shuffling
% 2.47/1.60  
% 2.47/1.60  % (25733)Memory used [KB]: 2174
% 2.47/1.60  % (25733)Time elapsed: 0.011 s
% 2.47/1.60  % (25733)Instructions burned: 23 (million)
% 2.47/1.60  % (25733)------------------------------
% 2.47/1.60  % (25733)------------------------------
% 2.47/1.60  % (25737)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_25437 for (2999ds/779Mi)
% 2.47/1.61  % (25739)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/879Mi)
% 2.47/1.61  % (25738)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_25437 for (2999ds/19Mi)
% 2.47/1.62  % (25738)Instruction limit reached!
% 2.47/1.62  % (25738)------------------------------
% 2.47/1.62  % (25738)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.62  % (25738)Termination reason: Unknown
% 2.47/1.62  % (25738)Termination phase: shuffling
% 2.47/1.62  
% 2.47/1.62  % (25738)Memory used [KB]: 1663
% 2.47/1.62  % (25738)Time elapsed: 0.012 s
% 2.47/1.62  % (25738)Instructions burned: 20 (million)
% 2.47/1.62  % (25738)------------------------------
% 2.47/1.62  % (25738)------------------------------
% 2.47/1.63  % (25740)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/17Mi)
% 2.47/1.64  % (25740)Instruction limit reached!
% 2.47/1.64  % (25740)------------------------------
% 2.47/1.64  % (25740)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.64  % (25740)Termination reason: Unknown
% 2.47/1.64  % (25740)Termination phase: shuffling
% 2.47/1.64  
% 2.47/1.64  % (25740)Memory used [KB]: 2046
% 2.47/1.64  % (25740)Time elapsed: 0.008 s
% 2.47/1.64  % (25740)Instructions burned: 19 (million)
% 2.47/1.64  % (25740)------------------------------
% 2.47/1.64  % (25740)------------------------------
% 2.47/1.65  % (25741)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/3Mi)
% 2.47/1.65  % (25741)Instruction limit reached!
% 2.47/1.65  % (25741)------------------------------
% 2.47/1.65  % (25741)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.65  % (25741)Termination reason: Unknown
% 2.47/1.65  % (25741)Termination phase: shuffling
% 2.47/1.65  
% 2.47/1.65  % (25741)Memory used [KB]: 1279
% 2.47/1.65  % (25741)Time elapsed: 0.003 s
% 2.47/1.65  % (25741)Instructions burned: 4 (million)
% 2.47/1.65  % (25741)------------------------------
% 2.47/1.65  % (25741)------------------------------
% 2.47/1.66  % (25732)Refutation not found, incomplete strategy
% 2.47/1.66  % (25732)------------------------------
% 2.47/1.66  % (25732)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.66  % (25732)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.66  
% 2.47/1.66  
% 2.47/1.66  % (25732)Memory used [KB]: 9338
% 2.47/1.66  % (25732)Time elapsed: 0.077 s
% 2.47/1.66  % (25732)Instructions burned: 202 (million)
% 2.47/1.66  % (25732)------------------------------
% 2.47/1.66  % (25732)------------------------------
% 2.47/1.66  % (25742)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/30Mi)
% 2.47/1.67  % (25743)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/127Mi)
% 2.47/1.67  % (25742)Instruction limit reached!
% 2.47/1.67  % (25742)------------------------------
% 2.47/1.67  % (25742)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.67  % (25742)Termination reason: Unknown
% 2.47/1.67  % (25742)Termination phase: Property scanning
% 2.47/1.67  
% 2.47/1.67  % (25742)Memory used [KB]: 2174
% 2.47/1.67  % (25742)Time elapsed: 0.012 s
% 2.47/1.67  % (25742)Instructions burned: 30 (million)
% 2.47/1.67  % (25742)------------------------------
% 2.47/1.67  % (25742)------------------------------
% 2.47/1.68  % (25744)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_25437 for (2998ds/100Mi)
% 2.47/1.71  % (25743)Instruction limit reached!
% 2.47/1.71  % (25743)------------------------------
% 2.47/1.71  % (25743)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.71  % (25743)Termination reason: Unknown
% 2.47/1.71  % (25743)Termination phase: Property scanning
% 2.47/1.71  
% 2.47/1.71  % (25743)Memory used [KB]: 4221
% 2.47/1.71  % (25743)Time elapsed: 0.040 s
% 2.47/1.71  % (25743)Instructions burned: 129 (million)
% 2.47/1.71  % (25743)------------------------------
% 2.47/1.71  % (25743)------------------------------
% 2.47/1.71  % (25736)Instruction limit reached!
% 2.47/1.71  % (25736)------------------------------
% 2.47/1.71  % (25736)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.71  % (25736)Termination reason: Unknown
% 2.47/1.71  % (25736)Termination phase: Saturation
% 2.47/1.71  
% 2.47/1.71  % (25736)Memory used [KB]: 10490
% 2.47/1.71  % (25736)Time elapsed: 0.115 s
% 2.47/1.71  % (25736)Instructions burned: 378 (million)
% 2.47/1.71  % (25736)------------------------------
% 2.47/1.71  % (25736)------------------------------
% 2.47/1.71  % (25744)Instruction limit reached!
% 2.47/1.71  % (25744)------------------------------
% 2.47/1.71  % (25744)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.71  % (25744)Termination reason: Unknown
% 2.47/1.71  % (25744)Termination phase: Saturation
% 2.47/1.71  
% 2.47/1.71  % (25744)Memory used [KB]: 6524
% 2.47/1.71  % (25744)Time elapsed: 0.030 s
% 2.47/1.71  % (25744)Instructions burned: 102 (million)
% 2.47/1.71  % (25744)------------------------------
% 2.47/1.71  % (25744)------------------------------
% 2.47/1.72  % (25745)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_25437 for (2997ds/3Mi)
% 2.47/1.72  % (25745)Instruction limit reached!
% 2.47/1.72  % (25745)------------------------------
% 2.47/1.72  % (25745)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.72  % (25745)Termination reason: Unknown
% 2.47/1.72  % (25745)Termination phase: shuffling
% 2.47/1.72  
% 2.47/1.72  % (25745)Memory used [KB]: 1279
% 2.47/1.72  % (25745)Time elapsed: 0.002 s
% 2.47/1.72  % (25745)Instructions burned: 3 (million)
% 2.47/1.72  % (25745)------------------------------
% 2.47/1.72  % (25745)------------------------------
% 2.47/1.72  % (25746)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_25437 for (2997ds/20Mi)
% 2.47/1.72  % (25747)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_25437 for (2997ds/86Mi)
% 2.47/1.72  % (25746)Instruction limit reached!
% 2.47/1.72  % (25746)------------------------------
% 2.47/1.72  % (25746)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.72  % (25746)Termination reason: Unknown
% 2.47/1.72  % (25746)Termination phase: shuffling
% 2.47/1.72  
% 2.47/1.72  % (25746)Memory used [KB]: 2174
% 2.47/1.72  % (25746)Time elapsed: 0.008 s
% 2.47/1.72  % (25746)Instructions burned: 22 (million)
% 2.47/1.72  % (25746)------------------------------
% 2.47/1.72  % (25746)------------------------------
% 2.47/1.73  % (25748)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_25437 for (2997ds/107Mi)
% 2.47/1.73  % (25749)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_25437 for (2997ds/39Mi)
% 2.47/1.74  % (25749)Instruction limit reached!
% 2.47/1.74  % (25749)------------------------------
% 2.47/1.74  % (25749)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.74  % (25749)Termination reason: Unknown
% 2.47/1.74  % (25749)Termination phase: Property scanning
% 2.47/1.74  
% 2.47/1.74  % (25749)Memory used [KB]: 1918
% 2.47/1.74  % (25749)Time elapsed: 0.012 s
% 2.47/1.74  % (25749)Instructions burned: 40 (million)
% 2.47/1.74  % (25749)------------------------------
% 2.47/1.74  % (25749)------------------------------
% 2.47/1.75  % (25747)Instruction limit reached!
% 2.47/1.75  % (25747)------------------------------
% 2.47/1.75  % (25747)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.75  % (25747)Termination reason: Unknown
% 2.47/1.75  % (25747)Termination phase: Preprocessing 3
% 2.47/1.75  
% 2.47/1.75  % (25747)Memory used [KB]: 3965
% 2.47/1.75  % (25747)Time elapsed: 0.029 s
% 2.47/1.75  % (25747)Instructions burned: 86 (million)
% 2.47/1.75  % (25747)------------------------------
% 2.47/1.75  % (25747)------------------------------
% 2.47/1.75  % (25750)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_25437 for (2997ds/448Mi)
% 2.47/1.76  % (25751)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_25437 for (2997ds/46Mi)
% 2.47/1.76  % (25748)Instruction limit reached!
% 2.47/1.76  % (25748)------------------------------
% 2.47/1.76  % (25748)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.76  % (25748)Termination reason: Unknown
% 2.47/1.76  % (25748)Termination phase: Property scanning
% 2.47/1.76  
% 2.47/1.76  % (25748)Memory used [KB]: 4349
% 2.47/1.76  % (25748)Time elapsed: 0.035 s
% 2.47/1.76  % (25748)Instructions burned: 107 (million)
% 2.47/1.76  % (25748)------------------------------
% 2.47/1.76  % (25748)------------------------------
% 2.47/1.77  % (25752)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_25437 for (2997ds/98Mi)
% 2.47/1.77  % (25751)Instruction limit reached!
% 2.47/1.77  % (25751)------------------------------
% 2.47/1.77  % (25751)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.77  % (25751)Termination reason: Unknown
% 2.47/1.77  % (25751)Termination phase: Preprocessing 1
% 2.47/1.77  
% 2.47/1.77  % (25751)Memory used [KB]: 2302
% 2.47/1.77  % (25751)Time elapsed: 0.016 s
% 2.47/1.77  % (25751)Instructions burned: 46 (million)
% 2.47/1.77  % (25751)------------------------------
% 2.47/1.77  % (25751)------------------------------
% 2.47/1.77  % (25750)Refutation not found, incomplete strategy
% 2.47/1.77  % (25750)------------------------------
% 2.47/1.77  % (25750)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.77  % (25750)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.77  
% 2.47/1.77  
% 2.47/1.77  % (25750)Memory used [KB]: 6524
% 2.47/1.77  % (25750)Time elapsed: 0.020 s
% 2.47/1.77  % (25750)Instructions burned: 77 (million)
% 2.47/1.77  % (25750)------------------------------
% 2.47/1.77  % (25750)------------------------------
% 2.47/1.78  % (25753)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_25437 for (2997ds/507Mi)
% 2.47/1.78  % (25754)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_25437 for (2997ds/149Mi)
% 2.47/1.80  % (25752)Instruction limit reached!
% 2.47/1.80  % (25752)------------------------------
% 2.47/1.80  % (25752)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.80  % (25752)Termination reason: Unknown
% 2.47/1.80  % (25752)Termination phase: Saturation
% 2.47/1.80  
% 2.47/1.80  % (25752)Memory used [KB]: 2046
% 2.47/1.80  % (25752)Time elapsed: 0.029 s
% 2.47/1.80  % (25752)Instructions burned: 100 (million)
% 2.47/1.80  % (25752)------------------------------
% 2.47/1.80  % (25752)------------------------------
% 2.47/1.81  % (25721)Instruction limit reached!
% 2.47/1.81  % (25721)------------------------------
% 2.47/1.81  % (25721)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.81  % (25721)Termination reason: Unknown
% 2.47/1.81  % (25721)Termination phase: Saturation
% 2.47/1.81  
% 2.47/1.81  % (25721)Memory used [KB]: 7931
% 2.47/1.81  % (25721)Time elapsed: 0.266 s
% 2.47/1.81  % (25721)Instructions burned: 1041 (million)
% 2.47/1.81  % (25721)------------------------------
% 2.47/1.81  % (25721)------------------------------
% 2.47/1.81  % (25755)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on DTF2THF_25437 for (2997ds/39Mi)
% 2.47/1.82  % (25756)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_25437 for (2996ds/6Mi)
% 2.47/1.82  % (25756)Instruction limit reached!
% 2.47/1.82  % (25756)------------------------------
% 2.47/1.82  % (25756)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.82  % (25756)Termination reason: Unknown
% 2.47/1.82  % (25756)Termination phase: shuffling
% 2.47/1.82  
% 2.47/1.82  % (25756)Memory used [KB]: 1535
% 2.47/1.82  % (25756)Time elapsed: 0.004 s
% 2.47/1.82  % (25756)Instructions burned: 9 (million)
% 2.47/1.82  % (25756)------------------------------
% 2.47/1.82  % (25756)------------------------------
% 2.47/1.82  % (25755)Instruction limit reached!
% 2.47/1.82  % (25755)------------------------------
% 2.47/1.82  % (25755)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.82  % (25755)Termination reason: Unknown
% 2.47/1.82  % (25755)Termination phase: Preprocessing 1
% 2.47/1.82  
% 2.47/1.82  % (25755)Memory used [KB]: 2302
% 2.47/1.82  % (25755)Time elapsed: 0.014 s
% 2.47/1.82  % (25755)Instructions burned: 40 (million)
% 2.47/1.82  % (25755)------------------------------
% 2.47/1.82  % (25755)------------------------------
% 2.47/1.82  % (25737)Instruction limit reached!
% 2.47/1.82  % (25737)------------------------------
% 2.47/1.82  % (25737)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.82  % (25737)Termination reason: Unknown
% 2.47/1.82  % (25737)Termination phase: Saturation
% 2.47/1.82  
% 2.47/1.82  % (25737)Memory used [KB]: 7036
% 2.47/1.82  % (25737)Time elapsed: 0.224 s
% 2.47/1.82  % (25737)Instructions burned: 779 (million)
% 2.47/1.82  % (25737)------------------------------
% 2.47/1.82  % (25737)------------------------------
% 2.47/1.82  % (25754)Instruction limit reached!
% 2.47/1.82  % (25754)------------------------------
% 2.47/1.82  % (25754)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.82  % (25754)Termination reason: Unknown
% 2.47/1.82  % (25754)Termination phase: Property scanning
% 2.47/1.82  
% 2.47/1.82  % (25754)Memory used [KB]: 7931
% 2.47/1.82  % (25754)Time elapsed: 0.043 s
% 2.47/1.82  % (25754)Instructions burned: 149 (million)
% 2.47/1.82  % (25754)------------------------------
% 2.47/1.82  % (25754)------------------------------
% 2.47/1.83  % (25757)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_25437 for (2996ds/1087Mi)
% 2.47/1.83  % (25730)Instruction limit reached!
% 2.47/1.83  % (25730)------------------------------
% 2.47/1.83  % (25730)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.83  % (25730)Termination reason: Unknown
% 2.47/1.83  % (25730)Termination phase: Saturation
% 2.47/1.83  
% 2.47/1.83  % (25730)Memory used [KB]: 11129
% 2.47/1.83  % (25730)Time elapsed: 0.259 s
% 2.47/1.83  % (25730)Instructions burned: 711 (million)
% 2.47/1.83  % (25730)------------------------------
% 2.47/1.83  % (25730)------------------------------
% 2.47/1.83  % (25758)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on DTF2THF_25437 for (2996ds/47Mi)
% 2.47/1.83  % (25759)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_25437 for (2996ds/44Mi)
% 2.47/1.83  % (25760)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_25437 for (2996ds/432Mi)
% 2.47/1.84  % (25761)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on DTF2THF_25437 for (2996ds/62Mi)
% 2.47/1.85  % (25758)Instruction limit reached!
% 2.47/1.85  % (25758)------------------------------
% 2.47/1.85  % (25758)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.85  % (25758)Termination reason: Unknown
% 2.47/1.85  % (25758)Termination phase: Naming
% 2.47/1.85  
% 2.47/1.85  % (25758)Memory used [KB]: 2686
% 2.47/1.85  % (25758)Time elapsed: 0.016 s
% 2.47/1.85  % (25758)Instructions burned: 47 (million)
% 2.47/1.85  % (25758)------------------------------
% 2.47/1.85  % (25758)------------------------------
% 2.47/1.85  % (25759)Instruction limit reached!
% 2.47/1.85  % (25759)------------------------------
% 2.47/1.85  % (25759)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.85  % (25759)Termination reason: Unknown
% 2.47/1.85  % (25759)Termination phase: Property scanning
% 2.47/1.85  
% 2.47/1.85  % (25759)Memory used [KB]: 1918
% 2.47/1.85  % (25759)Time elapsed: 0.014 s
% 2.47/1.85  % (25759)Instructions burned: 46 (million)
% 2.47/1.85  % (25759)------------------------------
% 2.47/1.85  % (25759)------------------------------
% 2.47/1.86  % (25763)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on DTF2THF_25437 for (2996ds/96Mi)
% 2.47/1.86  % (25761)Instruction limit reached!
% 2.47/1.86  % (25761)------------------------------
% 2.47/1.86  % (25761)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.86  % (25761)Termination reason: Unknown
% 2.47/1.86  % (25761)Termination phase: Property scanning
% 2.47/1.86  
% 2.47/1.86  % (25761)Memory used [KB]: 1918
% 2.47/1.86  % (25761)Time elapsed: 0.018 s
% 2.47/1.86  % (25761)Instructions burned: 62 (million)
% 2.47/1.86  % (25761)------------------------------
% 2.47/1.86  % (25761)------------------------------
% 2.47/1.86  % (25762)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_25437 for (2996ds/31Mi)
% 2.47/1.87  % (25753)Refutation not found, incomplete strategy
% 2.47/1.87  % (25753)------------------------------
% 2.47/1.87  % (25753)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.87  % (25753)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.87  
% 2.47/1.87  
% 2.47/1.87  % (25753)Memory used [KB]: 9978
% 2.47/1.87  % (25753)Time elapsed: 0.086 s
% 2.47/1.87  % (25753)Instructions burned: 273 (million)
% 2.47/1.87  % (25753)------------------------------
% 2.47/1.87  % (25753)------------------------------
% 2.47/1.87  % (25764)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_25437 for (2996ds/453Mi)
% 2.47/1.88  % (25765)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_25437 for (2996ds/71Mi)
% 2.47/1.88  % (25762)Instruction limit reached!
% 2.47/1.88  % (25762)------------------------------
% 2.47/1.88  % (25762)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.88  % (25762)Termination reason: Unknown
% 2.47/1.88  % (25762)Termination phase: Property scanning
% 2.47/1.88  
% 2.47/1.88  % (25762)Memory used [KB]: 2174
% 2.47/1.88  % (25762)Time elapsed: 0.020 s
% 2.47/1.88  % (25762)Instructions burned: 31 (million)
% 2.47/1.88  % (25762)------------------------------
% 2.47/1.88  % (25762)------------------------------
% 2.47/1.89  % (25763)Instruction limit reached!
% 2.47/1.89  % (25763)------------------------------
% 2.47/1.89  % (25763)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.89  % (25763)Termination reason: Unknown
% 2.47/1.89  % (25763)Termination phase: Property scanning
% 2.47/1.89  
% 2.47/1.89  % (25763)Memory used [KB]: 4093
% 2.47/1.89  % (25763)Time elapsed: 0.031 s
% 2.47/1.89  % (25763)Instructions burned: 96 (million)
% 2.47/1.89  % (25763)------------------------------
% 2.47/1.89  % (25763)------------------------------
% 2.47/1.89  % (25739)Instruction limit reached!
% 2.47/1.89  % (25739)------------------------------
% 2.47/1.89  % (25739)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.89  % (25739)Termination reason: Unknown
% 2.47/1.89  % (25739)Termination phase: Saturation
% 2.47/1.89  
% 2.47/1.89  % (25739)Memory used [KB]: 11129
% 2.47/1.89  % (25739)Time elapsed: 0.287 s
% 2.47/1.89  % (25739)Instructions burned: 879 (million)
% 2.47/1.89  % (25739)------------------------------
% 2.47/1.89  % (25739)------------------------------
% 2.47/1.90  % (25767)lrs+10_1:128_cnfonf=lazy_not_gen_be_off:hud=1:ins=1:i=11:si=on:rtra=on_0 on DTF2THF_25437 for (2995ds/11Mi)
% 2.47/1.90  % (25766)dis+1002_1:1_bd=off:fsr=off:ntd=on:s2a=on:ss=axioms:i=83:si=on:rtra=on_0 on DTF2THF_25437 for (2996ds/83Mi)
% 2.47/1.90  % (25765)Instruction limit reached!
% 2.47/1.90  % (25765)------------------------------
% 2.47/1.90  % (25765)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.90  % (25765)Termination reason: Unknown
% 2.47/1.90  % (25765)Termination phase: Preprocessing 3
% 2.47/1.90  
% 2.47/1.90  % (25765)Memory used [KB]: 3454
% 2.47/1.90  % (25765)Time elapsed: 0.024 s
% 2.47/1.90  % (25765)Instructions burned: 72 (million)
% 2.47/1.90  % (25765)------------------------------
% 2.47/1.90  % (25765)------------------------------
% 2.47/1.90  % (25767)Instruction limit reached!
% 2.47/1.90  % (25767)------------------------------
% 2.47/1.90  % (25767)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.90  % (25767)Termination reason: Unknown
% 2.47/1.90  % (25767)Termination phase: shuffling
% 2.47/1.90  
% 2.47/1.90  % (25767)Memory used [KB]: 1535
% 2.47/1.90  % (25767)Time elapsed: 0.005 s
% 2.47/1.90  % (25767)Instructions burned: 14 (million)
% 2.47/1.90  % (25767)------------------------------
% 2.47/1.90  % (25767)------------------------------
% 2.47/1.90  % (25757)First to succeed.
% 2.47/1.90  % (25768)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_25437 for (2995ds/41Mi)
% 2.47/1.91  % (25769)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_25437 for (2995ds/6Mi)
% 2.47/1.91  % (25770)dis+10_1:1_avsq=on:cnfonf=off:e2e=on:nm=32:i=150:si=on:rtra=on_0 on DTF2THF_25437 for (2995ds/150Mi)
% 2.47/1.91  % (25769)Instruction limit reached!
% 2.47/1.91  % (25769)------------------------------
% 2.47/1.91  % (25769)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.91  % (25769)Termination reason: Unknown
% 2.47/1.91  % (25769)Termination phase: shuffling
% 2.47/1.91  
% 2.47/1.91  % (25769)Memory used [KB]: 1407
% 2.47/1.91  % (25769)Time elapsed: 0.004 s
% 2.47/1.91  % (25769)Instructions burned: 7 (million)
% 2.47/1.91  % (25769)------------------------------
% 2.47/1.91  % (25769)------------------------------
% 2.47/1.92  % (25768)Instruction limit reached!
% 2.47/1.92  % (25768)------------------------------
% 2.47/1.92  % (25768)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.92  % (25768)Termination reason: Unknown
% 2.47/1.92  % (25768)Termination phase: Property scanning
% 2.47/1.92  
% 2.47/1.92  % (25768)Memory used [KB]: 1918
% 2.47/1.92  % (25768)Time elapsed: 0.013 s
% 2.47/1.92  % (25768)Instructions burned: 43 (million)
% 2.47/1.92  % (25768)------------------------------
% 2.47/1.92  % (25768)------------------------------
% 2.47/1.92  % (25766)Refutation not found, incomplete strategy
% 2.47/1.92  % (25766)------------------------------
% 2.47/1.92  % (25766)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.92  % (25766)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.92  
% 2.47/1.92  
% 2.47/1.92  % (25766)Memory used [KB]: 6652
% 2.47/1.92  % (25766)Time elapsed: 0.025 s
% 2.47/1.92  % (25766)Instructions burned: 40 (million)
% 2.47/1.92  % (25766)------------------------------
% 2.47/1.92  % (25766)------------------------------
% 2.47/1.92  % (25771)ott+1010_1:1_au=on:s2a=on:sd=7:ss=axioms:st=1.5:i=343:si=on:rtra=on_0 on DTF2THF_25437 for (2995ds/343Mi)
% 2.47/1.93  % (25772)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_25437 for (2995ds/109Mi)
% 2.47/1.94  % (25771)Refutation not found, incomplete strategy
% 2.47/1.94  % (25771)------------------------------
% 2.47/1.94  % (25771)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.94  % (25771)Termination reason: Refutation not found, incomplete strategy
% 2.47/1.94  
% 2.47/1.94  
% 2.47/1.94  % (25771)Memory used [KB]: 6652
% 2.47/1.94  % (25771)Time elapsed: 0.015 s
% 2.47/1.94  % (25771)Instructions burned: 41 (million)
% 2.47/1.94  % (25771)------------------------------
% 2.47/1.94  % (25771)------------------------------
% 2.47/1.94  % (25757)Refutation found. Thanks to Tanya!
% 2.47/1.94  % SZS status Theorem for DTF2THF_25437
% 2.47/1.94  % SZS output start Proof for DTF2THF_25437
% 2.47/1.94  thf(type_def_5, type, term: $tType).
% 2.47/1.94  thf(type_def_7, type, subst: $tType).
% 2.47/1.94  thf(type_def_8, type, d_term: $tType).
% 2.47/1.94  thf(type_def_9, type, d_subst: $tType).
% 2.47/1.94  thf(func_def_0, type, term: $tType).
% 2.47/1.94  thf(func_def_1, type, subst: $tType).
% 2.47/1.94  thf(func_def_2, type, one: term).
% 2.47/1.94  thf(func_def_3, type, ap: term > term > term).
% 2.47/1.94  thf(func_def_4, type, lam: term > term).
% 2.47/1.94  thf(func_def_5, type, sub: term > subst > term).
% 2.47/1.94  thf(func_def_6, type, id: subst).
% 2.47/1.94  thf(func_def_7, type, sh: subst).
% 2.47/1.94  thf(func_def_8, type, push: term > subst > subst).
% 2.47/1.94  thf(func_def_9, type, comp: subst > subst > subst).
% 2.47/1.94  thf(func_def_10, type, var: term > $o).
% 2.47/1.94  thf(func_def_18, type, hoasap: subst > term > subst > term > term).
% 2.47/1.94  thf(func_def_73, type, hoaslam: subst > (subst > term > term) > term).
% 2.47/1.94  thf(func_def_86, type, hoasinduction_p_and_p_prime: (subst > term > subst > $o) > (term > $o) > $o).
% 2.47/1.94  thf(func_def_107, type, hoasvar: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_121, type, pushprop_p_and_p_prime: term > subst > (term > $o) > (term > $o) > $o).
% 2.47/1.94  thf(func_def_124, type, d_term: $tType).
% 2.47/1.94  thf(func_def_125, type, d_subst: $tType).
% 2.47/1.94  thf(func_def_126, type, d2term: d_term > term).
% 2.47/1.94  thf(func_def_127, type, d2subst: d_subst > subst).
% 2.47/1.94  thf(func_def_128, type, d_one: d_term).
% 2.47/1.94  thf(func_def_129, type, d_id: d_subst).
% 2.47/1.94  thf(func_def_141, type, sP0: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_142, type, sP1: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_145, type, sP4: (term > $o) > $o).
% 2.47/1.94  thf(func_def_146, type, sP5: (term > $o) > $o).
% 2.47/1.94  thf(func_def_147, type, sP6: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_148, type, sP7: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_149, type, sP8: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_155, type, sP14: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_157, type, sP16: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_159, type, sP18: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_160, type, sP19: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_161, type, sP20: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_162, type, sP21: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_164, type, sP23: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_165, type, sP24: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_166, type, sP25: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_167, type, sP26: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_168, type, sP27: (term > $o) > $o).
% 2.47/1.94  thf(func_def_169, type, sP28: (term > $o) > $o).
% 2.47/1.94  thf(func_def_170, type, sP29: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_174, type, sP33: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_176, type, sP35: (term > $o) > $o).
% 2.47/1.94  thf(func_def_177, type, sP36: (term > $o) > $o).
% 2.47/1.94  thf(func_def_179, type, sP38: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_180, type, sP39: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_183, type, sP42: (term > $o) > $o).
% 2.47/1.94  thf(func_def_184, type, sP43: (term > $o) > $o).
% 2.47/1.94  thf(func_def_186, type, sP45: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_187, type, sP46: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_188, type, sP47: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_189, type, sP48: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_190, type, sP49: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_194, type, sP53: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_195, type, sP54: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_196, type, sP55: (term > $o) > $o).
% 2.47/1.94  thf(func_def_197, type, sP56: (term > $o) > $o).
% 2.47/1.94  thf(func_def_198, type, sP57: (term > $o) > $o).
% 2.47/1.94  thf(func_def_199, type, sP58: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_200, type, sP59: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_201, type, sP60: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_202, type, sP61: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_203, type, sP62: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_204, type, sP63: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_205, type, sP64: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_210, type, sP69: (term > $o) > $o).
% 2.47/1.94  thf(func_def_211, type, sP70: (term > $o) > $o).
% 2.47/1.94  thf(func_def_212, type, sP71: (term > $o) > $o).
% 2.47/1.94  thf(func_def_213, type, sP72: (term > $o) > $o).
% 2.47/1.94  thf(func_def_216, type, sP75: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_218, type, sP77: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_220, type, sP79: (term > $o) > $o).
% 2.47/1.94  thf(func_def_221, type, sP80: (term > $o) > $o).
% 2.47/1.94  thf(func_def_222, type, sP81: (term > $o) > $o).
% 2.47/1.94  thf(func_def_223, type, sP82: (term > $o) > $o).
% 2.47/1.94  thf(func_def_226, type, sP85: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_227, type, sP86: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_228, type, sP87: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_232, type, sP91: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_233, type, sP92: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_235, type, sP94: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_237, type, sP96: (term > $o) > $o).
% 2.47/1.94  thf(func_def_238, type, sP97: (term > $o) > $o).
% 2.47/1.94  thf(func_def_240, type, sP99: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_241, type, sP100: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_242, type, sP101: term > (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_243, type, sP102: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_246, type, sP105: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_247, type, sP106: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_248, type, sP107: (subst > term > subst > $o) > $o).
% 2.47/1.94  thf(func_def_250, type, sK109: term).
% 2.47/1.94  thf(func_def_251, type, sK110: term > $o).
% 2.47/1.94  thf(func_def_252, type, sK111: term).
% 2.47/1.94  thf(func_def_253, type, sK112: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_254, type, sK113: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_255, type, sK114: (subst > term > subst > $o) > (term > $o) > term).
% 2.47/1.94  thf(func_def_256, type, sK115: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_257, type, sK116: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_258, type, sK117: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_259, type, sK118: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_260, type, sK119: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_261, type, sK120: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_262, type, sK121: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_263, type, sK122: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_264, type, sK123: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_265, type, sK124: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_266, type, sK125: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_267, type, sK126: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_268, type, sK127: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_269, type, sK128: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_270, type, sK129: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_271, type, sK130: term).
% 2.47/1.94  thf(func_def_272, type, sK131: term).
% 2.47/1.94  thf(func_def_273, type, sK132: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_274, type, sK133: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_275, type, sK134: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_276, type, sK135: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_277, type, sK136: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_278, type, sK137: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_279, type, sK138: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_280, type, sK139: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_281, type, sK140: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_282, type, sK141: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_283, type, sK142: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_284, type, sK143: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_285, type, sK144: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_286, type, sK145: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_287, type, sK146: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_288, type, sK147: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_289, type, sK148: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_290, type, sK149: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_291, type, sK150: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_292, type, sK151: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_293, type, sK152: term).
% 2.47/1.94  thf(func_def_294, type, sK153: term > $o).
% 2.47/1.94  thf(func_def_295, type, sK154: (term > $o) > term).
% 2.47/1.94  thf(func_def_296, type, sK155: (term > $o) > term).
% 2.47/1.94  thf(func_def_297, type, sK156: (term > $o) > term).
% 2.47/1.94  thf(func_def_298, type, sK157: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_299, type, sK158: (term > $o) > term).
% 2.47/1.94  thf(func_def_300, type, sK159: term).
% 2.47/1.94  thf(func_def_301, type, sK160: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_302, type, sK161: (subst > term > subst > $o) > term > term).
% 2.47/1.94  thf(func_def_303, type, sK162: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_304, type, sK163: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_305, type, sK164: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_306, type, sK165: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_307, type, sK166: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_308, type, sK167: term > $o).
% 2.47/1.94  thf(func_def_309, type, sK168: term).
% 2.47/1.94  thf(func_def_310, type, sK169: term).
% 2.47/1.94  thf(func_def_311, type, sK170: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_312, type, sK171: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_313, type, sK172: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_314, type, sK173: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_315, type, sK174: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_316, type, sK175: (subst > term > subst > $o) > (term > $o) > term).
% 2.47/1.94  thf(func_def_317, type, sK176: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_318, type, sK177: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_319, type, sK178: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_320, type, sK179: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_321, type, sK180: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_322, type, sK181: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_323, type, sK182: term).
% 2.47/1.94  thf(func_def_324, type, sK183: term).
% 2.47/1.94  thf(func_def_325, type, sK184: term).
% 2.47/1.94  thf(func_def_326, type, sK185: term).
% 2.47/1.94  thf(func_def_327, type, sK186: term).
% 2.47/1.94  thf(func_def_328, type, sK187: term).
% 2.47/1.94  thf(func_def_329, type, sK188: term).
% 2.47/1.94  thf(func_def_330, type, sK189: term).
% 2.47/1.94  thf(func_def_331, type, sK190: term).
% 2.47/1.94  thf(func_def_332, type, sK191: term > $o).
% 2.47/1.94  thf(func_def_333, type, sK192: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_334, type, sK193: term).
% 2.47/1.94  thf(func_def_335, type, sK194: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_336, type, sK195: (subst > term > subst > $o) > (term > $o) > term).
% 2.47/1.94  thf(func_def_337, type, sK196: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_338, type, sK197: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_339, type, sK198: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_340, type, sK199: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_341, type, sK200: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_342, type, sK201: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_343, type, sK202: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_344, type, sK203: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_345, type, sK204: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_346, type, sK205: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_347, type, sK206: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_348, type, sK207: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_349, type, sK208: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_350, type, sK209: (term > $o) > term).
% 2.47/1.94  thf(func_def_351, type, sK210: term > $o).
% 2.47/1.94  thf(func_def_352, type, sK211: term).
% 2.47/1.94  thf(func_def_353, type, sK212: subst).
% 2.47/1.94  thf(func_def_354, type, sK213: term).
% 2.47/1.94  thf(func_def_355, type, sK214: term > $o).
% 2.47/1.94  thf(func_def_356, type, sK215: (term > $o) > subst > term).
% 2.47/1.94  thf(func_def_357, type, sK216: (term > $o) > term).
% 2.47/1.94  thf(func_def_358, type, sK217: (term > $o) > term).
% 2.47/1.94  thf(func_def_359, type, sK218: (term > $o) > term).
% 2.47/1.94  thf(func_def_360, type, sK219: (term > $o) > term).
% 2.47/1.94  thf(func_def_361, type, sK220: (term > $o) > term).
% 2.47/1.94  thf(func_def_362, type, sK221: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_363, type, sK222: (term > $o) > term).
% 2.47/1.94  thf(func_def_364, type, sK223: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_365, type, sK224: term).
% 2.47/1.94  thf(func_def_366, type, sK225: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_367, type, sK226: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_368, type, sK227: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_369, type, sK228: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_370, type, sK229: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_371, type, sK230: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_372, type, sK231: term).
% 2.47/1.94  thf(func_def_373, type, sK232: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_374, type, sK233: term > $o).
% 2.47/1.94  thf(func_def_375, type, sK234: (term > $o) > term > term).
% 2.47/1.94  thf(func_def_376, type, sK235: (term > $o) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_377, type, sK236: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_378, type, sK237: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_379, type, sK238: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_380, type, sK239: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_381, type, sK240: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_382, type, sK241: subst > (term > $o) > term).
% 2.47/1.94  thf(func_def_383, type, sK242: term > $o).
% 2.47/1.94  thf(func_def_384, type, sK243: term).
% 2.47/1.94  thf(func_def_385, type, sK244: subst).
% 2.47/1.94  thf(func_def_386, type, sK245: term).
% 2.47/1.94  thf(func_def_387, type, sK246: term > $o).
% 2.47/1.94  thf(func_def_388, type, sK247: (term > $o) > term).
% 2.47/1.94  thf(func_def_389, type, sK248: (term > $o) > term).
% 2.47/1.94  thf(func_def_390, type, sK249: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_391, type, sK250: (term > $o) > term).
% 2.47/1.94  thf(func_def_392, type, sK251: (term > $o) > term).
% 2.47/1.94  thf(func_def_393, type, sK252: (term > $o) > term).
% 2.47/1.94  thf(func_def_394, type, sK253: (term > $o) > term).
% 2.47/1.94  thf(func_def_395, type, sK254: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_396, type, sK255: (term > $o) > term).
% 2.47/1.94  thf(func_def_397, type, sK256: term).
% 2.47/1.94  thf(func_def_398, type, sK257: term > $o).
% 2.47/1.94  thf(func_def_399, type, sK258: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_400, type, sK259: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_401, type, sK260: term).
% 2.47/1.94  thf(func_def_402, type, sK261: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_403, type, sK262: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_404, type, sK263: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_405, type, sK264: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_406, type, sK265: term).
% 2.47/1.94  thf(func_def_407, type, sK266: term).
% 2.47/1.94  thf(func_def_408, type, sK267: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_409, type, sK268: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_410, type, sK269: term).
% 2.47/1.94  thf(func_def_411, type, sK270: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_412, type, sK271: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_413, type, sK272: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_414, type, sK273: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_415, type, sK274: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_416, type, sK275: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_417, type, sK276: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_418, type, sK277: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_419, type, sK278: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_420, type, sK279: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_421, type, sK280: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_422, type, sK281: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_423, type, sK282: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_424, type, sK283: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_425, type, sK284: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_426, type, sK285: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_427, type, sK286: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_428, type, sK287: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_429, type, sK288: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_430, type, sK289: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_431, type, sK290: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_432, type, sK291: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_433, type, sK292: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_434, type, sK293: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_435, type, sK294: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_436, type, sK295: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_437, type, sK296: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_438, type, sK297: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_439, type, sK298: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_440, type, sK299: (term > $o) > term).
% 2.47/1.94  thf(func_def_441, type, sK300: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_442, type, sK301: (term > $o) > term).
% 2.47/1.94  thf(func_def_443, type, sK302: (term > $o) > term).
% 2.47/1.94  thf(func_def_444, type, sK303: (term > $o) > term).
% 2.47/1.94  thf(func_def_445, type, sK304: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_446, type, sK305: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_447, type, sK306: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_448, type, sK307: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_449, type, sK308: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_450, type, sK309: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_451, type, sK310: term).
% 2.47/1.94  thf(func_def_452, type, sK311: term).
% 2.47/1.94  thf(func_def_453, type, sK312: term).
% 2.47/1.94  thf(func_def_454, type, sK313: term).
% 2.47/1.94  thf(func_def_455, type, sK314: term).
% 2.47/1.94  thf(func_def_456, type, sK315: term).
% 2.47/1.94  thf(func_def_457, type, sK316: term).
% 2.47/1.94  thf(func_def_458, type, sK317: term).
% 2.47/1.94  thf(func_def_459, type, sK318: term).
% 2.47/1.94  thf(func_def_460, type, sK319: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_461, type, sK320: (subst > term > subst > $o) > term > term).
% 2.47/1.94  thf(func_def_462, type, sK321: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_463, type, sK322: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_464, type, sK323: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_465, type, sK324: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_466, type, sK325: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_467, type, sK326: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_468, type, sK327: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_469, type, sK328: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_470, type, sK329: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_471, type, sK330: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_472, type, sK331: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_473, type, sK332: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_474, type, sK333: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_475, type, sK334: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_476, type, sK335: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_477, type, sK336: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_478, type, sK337: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_479, type, sK338: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_480, type, sK339: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_481, type, sK340: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_482, type, sK341: term > $o).
% 2.47/1.94  thf(func_def_483, type, sK342: subst).
% 2.47/1.94  thf(func_def_484, type, sK343: term).
% 2.47/1.94  thf(func_def_485, type, sK344: subst > (term > $o) > term).
% 2.47/1.94  thf(func_def_486, type, sK345: (term > $o) > term).
% 2.47/1.94  thf(func_def_487, type, sK346: (term > $o) > term).
% 2.47/1.94  thf(func_def_488, type, sK347: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_489, type, sK348: (term > $o) > term).
% 2.47/1.94  thf(func_def_490, type, sK349: subst).
% 2.47/1.94  thf(func_def_491, type, sK350: subst).
% 2.47/1.94  thf(func_def_492, type, sK351: subst).
% 2.47/1.94  thf(func_def_493, type, sK352: subst).
% 2.47/1.94  thf(func_def_494, type, sK353: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_495, type, sK354: term).
% 2.47/1.94  thf(func_def_496, type, sK355: term).
% 2.47/1.94  thf(func_def_497, type, sK356: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_498, type, sK357: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_499, type, sK358: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_500, type, sK359: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_501, type, sK360: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_502, type, sK361: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_503, type, sK362: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_504, type, sK363: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_505, type, sK364: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_506, type, sK365: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_507, type, sK366: term).
% 2.47/1.94  thf(func_def_508, type, sK367: term > $o).
% 2.47/1.94  thf(func_def_509, type, sK368: (term > $o) > term).
% 2.47/1.94  thf(func_def_510, type, sK369: (term > $o) > term).
% 2.47/1.94  thf(func_def_511, type, sK370: (term > $o) > term).
% 2.47/1.94  thf(func_def_512, type, sK371: (term > $o) > term).
% 2.47/1.94  thf(func_def_513, type, sK372: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_514, type, sK373: term).
% 2.47/1.94  thf(func_def_515, type, sK374: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_516, type, sK375: term > (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_517, type, sK376: term > (subst > term > term) > term).
% 2.47/1.94  thf(func_def_518, type, sK377: term > (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_519, type, sK378: term > (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_520, type, sK379: term > (subst > term > term) > term).
% 2.47/1.94  thf(func_def_521, type, sK380: term > (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_522, type, sK381: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_523, type, sK382: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_524, type, sK383: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_525, type, sK384: (term > $o) > term > term).
% 2.47/1.94  thf(func_def_526, type, sK385: (term > $o) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_527, type, sK386: term).
% 2.47/1.94  thf(func_def_528, type, sK387: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_529, type, sK388: term > $o).
% 2.47/1.94  thf(func_def_530, type, sK389: (term > $o) > term).
% 2.47/1.94  thf(func_def_531, type, sK390: term > $o).
% 2.47/1.94  thf(func_def_532, type, sK391: term).
% 2.47/1.94  thf(func_def_533, type, sK392: term).
% 2.47/1.94  thf(func_def_534, type, sK393: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_535, type, sK394: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_536, type, sK395: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_537, type, sK396: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_538, type, sK397: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_539, type, sK398: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_540, type, sK399: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_541, type, sK400: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_542, type, sK401: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_543, type, sK402: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_544, type, sK403: (term > $o) > term).
% 2.47/1.94  thf(func_def_545, type, sK404: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_546, type, sK405: (term > $o) > term).
% 2.47/1.94  thf(func_def_547, type, sK406: (term > $o) > term).
% 2.47/1.94  thf(func_def_548, type, sK407: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_549, type, sK408: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_550, type, sK409: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_551, type, sK410: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_552, type, sK411: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_553, type, sK412: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_554, type, sK413: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_555, type, sK414: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_556, type, sK415: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_557, type, sK416: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_558, type, sK417: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_559, type, sK418: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_560, type, sK419: term).
% 2.47/1.94  thf(func_def_561, type, sK420: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_562, type, sK421: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_563, type, sK422: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_564, type, sK423: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_565, type, sK424: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_566, type, sK425: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_567, type, sK426: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_568, type, sK427: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_569, type, sK428: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_570, type, sK429: (subst > term > subst > $o) > subst).
% 2.47/1.94  thf(func_def_571, type, sK430: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_572, type, sK431: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_573, type, sK432: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_574, type, sK433: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_575, type, sK434: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_576, type, sK435: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_577, type, sK436: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_578, type, sK437: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_579, type, sK438: term > $o).
% 2.47/1.94  thf(func_def_580, type, sK439: term).
% 2.47/1.94  thf(func_def_581, type, sK440: (term > $o) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_582, type, sK441: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_583, type, sK442: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_584, type, sK443: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_585, type, sK444: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_586, type, sK445: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_587, type, sK446: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_588, type, sK447: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_589, type, sK448: term).
% 2.47/1.94  thf(func_def_590, type, sK449: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_591, type, sK450: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_592, type, sK451: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_593, type, sK452: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_594, type, sK453: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_595, type, sK454: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_596, type, sK455: subst).
% 2.47/1.94  thf(func_def_597, type, sK456: term).
% 2.47/1.94  thf(func_def_598, type, sK457: term).
% 2.47/1.94  thf(func_def_599, type, sK458: term).
% 2.47/1.94  thf(func_def_600, type, sK459: term).
% 2.47/1.94  thf(func_def_601, type, sK460: subst).
% 2.47/1.94  thf(func_def_602, type, sK461: subst > term > term).
% 2.47/1.94  thf(func_def_603, type, sK462: subst).
% 2.47/1.94  thf(func_def_604, type, sK463: subst > term > term).
% 2.47/1.94  thf(func_def_605, type, sK464: term).
% 2.47/1.94  thf(func_def_606, type, sK465: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_607, type, sK466: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_608, type, sK467: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_609, type, sK468: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_610, type, sK469: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_611, type, sK470: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_612, type, sK471: (term > $o) > term > term).
% 2.47/1.94  thf(func_def_613, type, sK472: (term > $o) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_614, type, sK473: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_615, type, sK474: term).
% 2.47/1.94  thf(func_def_616, type, sK475: term > $o).
% 2.47/1.94  thf(func_def_617, type, sK476: (term > $o) > term).
% 2.47/1.94  thf(func_def_618, type, sK477: term).
% 2.47/1.94  thf(func_def_619, type, sK478: term > $o).
% 2.47/1.94  thf(func_def_620, type, sK479: term).
% 2.47/1.94  thf(func_def_621, type, sK480: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_622, type, sK481: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_623, type, sK482: (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_624, type, sK483: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_625, type, sK484: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_626, type, sK485: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_627, type, sK486: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_628, type, sK487: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_629, type, sK488: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_630, type, sK489: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_631, type, sK490: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_632, type, sK491: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_633, type, sK492: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_634, type, sK493: (term > $o) > term).
% 2.47/1.94  thf(func_def_635, type, sK494: term > (term > $o) > term).
% 2.47/1.94  thf(func_def_636, type, sK495: (term > $o) > term).
% 2.47/1.94  thf(func_def_637, type, sK496: (term > $o) > term).
% 2.47/1.94  thf(func_def_638, type, sK497: (subst > term > subst > $o) > term > term).
% 2.47/1.94  thf(func_def_639, type, sK498: term).
% 2.47/1.94  thf(func_def_640, type, sK499: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_641, type, sK500: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_642, type, sK501: term).
% 2.47/1.94  thf(func_def_643, type, sK502: term > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_644, type, sK503: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_645, type, sK504: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_646, type, sK505: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_647, type, sK506: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_648, type, sK507: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_649, type, sK508: (subst > term > subst > $o) > subst > term > term).
% 2.47/1.94  thf(func_def_650, type, sK509: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_651, type, sK510: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_652, type, sK511: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_653, type, sK512: (subst > term > term) > (subst > term > subst > $o) > term).
% 2.47/1.94  thf(func_def_654, type, sK513: term).
% 2.47/1.94  thf(func_def_655, type, sK514: term).
% 2.47/1.94  thf(func_def_656, type, sK515: term).
% 2.47/1.94  thf(func_def_657, type, sK516: subst > d_subst).
% 2.47/1.94  thf(func_def_658, type, sK517: term).
% 2.47/1.94  thf(func_def_659, type, sK518: term).
% 2.47/1.94  thf(func_def_660, type, sK519: term).
% 2.47/1.94  thf(func_def_661, type, sK520: subst).
% 2.47/1.94  thf(func_def_662, type, sK521: term).
% 2.47/1.94  thf(func_def_663, type, sK522: subst).
% 2.47/1.94  thf(func_def_664, type, sK523: subst).
% 2.47/1.94  thf(func_def_665, type, sK524: term).
% 2.47/1.94  thf(func_def_666, type, sK525: term).
% 2.47/1.94  thf(func_def_667, type, sK526: term).
% 2.47/1.94  thf(func_def_668, type, sK527: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_669, type, sK528: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_670, type, sK529: term > subst > term > term).
% 2.47/1.94  thf(func_def_671, type, sK530: term).
% 2.47/1.94  thf(func_def_672, type, sK531: term).
% 2.47/1.94  thf(func_def_673, type, sK532: term > d_term).
% 2.47/1.94  thf(func_def_674, type, sK533: term).
% 2.47/1.94  thf(func_def_675, type, sK534: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_676, type, sK535: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_677, type, sK536: term > subst > term > term).
% 2.47/1.94  thf(func_def_678, type, sK537: term).
% 2.47/1.94  thf(func_def_679, type, sK538: term).
% 2.47/1.94  thf(func_def_680, type, sK539: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_681, type, sK540: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_682, type, sK541: term > subst > term > term).
% 2.47/1.94  thf(func_def_683, type, sK542: term).
% 2.47/1.94  thf(func_def_684, type, sK543: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_685, type, sK544: (term > $o) > term).
% 2.47/1.94  thf(func_def_686, type, sK545: (subst > term > subst > $o) > term > $o).
% 2.47/1.94  thf(func_def_687, type, sK546: term > $o).
% 2.47/1.94  thf(func_def_688, type, sK547: term > $o).
% 2.47/1.94  thf(func_def_689, type, sK548: term).
% 2.47/1.94  thf(func_def_690, type, sK549: subst).
% 2.47/1.94  thf(func_def_691, type, sK550: subst > term > (term > $o) > (term > $o) > term).
% 2.47/1.94  thf(func_def_692, type, sK551: term).
% 2.47/1.94  thf(func_def_693, type, sK552: subst).
% 2.47/1.94  thf(func_def_694, type, sK553: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_695, type, sK554: term).
% 2.47/1.94  thf(func_def_696, type, sK555: term > subst > term > term).
% 2.47/1.94  thf(func_def_697, type, sK556: term).
% 2.47/1.94  thf(func_def_698, type, sK557: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_699, type, sK558: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_700, type, sK559: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_701, type, sK560: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_702, type, sK561: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_703, type, sK562: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_704, type, sK563: subst > term > term).
% 2.47/1.94  thf(func_def_705, type, sK564: subst > term > term).
% 2.47/1.94  thf(func_def_706, type, sK565: term).
% 2.47/1.94  thf(func_def_707, type, sK566: subst).
% 2.47/1.94  thf(func_def_708, type, sK567: (subst > term > term) > term).
% 2.47/1.94  thf(func_def_709, type, sK568: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_710, type, sK569: (subst > term > term) > subst).
% 2.47/1.94  thf(func_def_711, type, sK570: term).
% 2.47/1.94  thf(func_def_712, type, sK571: subst > term > term).
% 2.47/1.94  thf(func_def_713, type, sK572: term).
% 2.47/1.94  thf(func_def_714, type, sK573: term).
% 2.47/1.94  thf(func_def_715, type, sK574: term).
% 2.47/1.94  thf(func_def_716, type, sK575: term).
% 2.47/1.94  thf(func_def_717, type, sK576: term).
% 2.47/1.94  thf(func_def_718, type, sK577: term).
% 2.47/1.94  thf(func_def_719, type, sK578: term > $o).
% 2.47/1.94  thf(func_def_720, type, sK579: subst).
% 2.47/1.94  thf(func_def_721, type, sK580: (term > $o) > term).
% 2.47/1.94  thf(func_def_722, type, sK581: subst > (term > $o) > term > term > $o).
% 2.47/1.94  thf(func_def_723, type, sK582: subst).
% 2.47/1.94  thf(func_def_724, type, sK583: subst).
% 2.47/1.94  thf(func_def_725, type, sK584: subst).
% 2.47/1.94  thf(func_def_726, type, sK585: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_727, type, sK586: (term > $o) > term).
% 2.47/1.94  thf(func_def_728, type, sK587: term).
% 2.47/1.94  thf(func_def_729, type, sK588: (subst > term > subst > $o) > term > $o).
% 2.47/1.94  thf(func_def_730, type, sK589: subst).
% 2.47/1.94  thf(func_def_731, type, sK590: term).
% 2.47/1.94  thf(func_def_732, type, sK591: term).
% 2.47/1.94  thf(func_def_733, type, sK592: term > subst > term > term).
% 2.47/1.94  thf(func_def_734, type, sK593: subst).
% 2.47/1.94  thf(func_def_735, type, sK594: term > $o).
% 2.47/1.94  thf(func_def_736, type, sK595: term).
% 2.47/1.94  thf(func_def_737, type, sK596: subst).
% 2.47/1.94  thf(func_def_738, type, sK597: term > $o).
% 2.47/1.94  thf(func_def_739, type, sK598: term).
% 2.47/1.94  thf(func_def_740, type, sK599: subst).
% 2.47/1.94  thf(func_def_741, type, sK600: term).
% 2.47/1.94  thf(func_def_742, type, sK601: term > $o).
% 2.47/1.94  thf(func_def_743, type, sK602: term).
% 2.47/1.94  thf(func_def_744, type, sK603: term > $o).
% 2.47/1.94  thf(func_def_745, type, sK604: subst).
% 2.47/1.94  thf(func_def_746, type, sK605: term).
% 2.47/1.94  thf(func_def_747, type, sK606: subst).
% 2.47/1.94  thf(func_def_748, type, sK607: term).
% 2.47/1.94  thf(func_def_749, type, sK608: term).
% 2.47/1.94  thf(func_def_750, type, sK609: term).
% 2.47/1.94  thf(func_def_751, type, sK610: term).
% 2.47/1.94  thf(func_def_752, type, sK611: term).
% 2.47/1.94  thf(func_def_753, type, sK612: term > $o).
% 2.47/1.94  thf(func_def_754, type, sK613: term).
% 2.47/1.94  thf(func_def_755, type, sK614: subst).
% 2.47/1.94  thf(func_def_756, type, sK615: (term > $o) > term).
% 2.47/1.94  thf(func_def_757, type, sK616: subst > term > (term > $o) > term > $o).
% 2.47/1.94  thf(func_def_758, type, sK617: term).
% 2.47/1.94  thf(func_def_759, type, sK618: subst).
% 2.47/1.94  thf(func_def_760, type, sK619: term).
% 2.47/1.94  thf(func_def_761, type, sK620: term).
% 2.47/1.94  thf(func_def_762, type, sK621: term).
% 2.47/1.94  thf(func_def_763, type, sK622: term).
% 2.47/1.94  thf(func_def_764, type, sK623: term).
% 2.47/1.94  thf(func_def_765, type, sK624: (subst > term > subst > $o) > term > $o).
% 2.47/1.94  thf(func_def_766, type, sK625: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_767, type, sK626: (term > $o) > term).
% 2.47/1.94  thf(func_def_768, type, sK627: term > $o).
% 2.47/1.94  thf(func_def_769, type, sK628: term > $o).
% 2.47/1.94  thf(func_def_770, type, sK629: term).
% 2.47/1.94  thf(func_def_771, type, sK630: subst).
% 2.47/1.94  thf(func_def_772, type, sK631: subst > term > (term > $o) > (term > $o) > term).
% 2.47/1.94  thf(func_def_773, type, sK632: subst).
% 2.47/1.94  thf(func_def_774, type, sK633: term).
% 2.47/1.94  thf(func_def_775, type, sK634: term).
% 2.47/1.94  thf(func_def_776, type, sK635: term).
% 2.47/1.94  thf(func_def_777, type, sK636: term).
% 2.47/1.94  thf(func_def_778, type, sK637: (subst > term > subst > $o) > term > $o).
% 2.47/1.94  thf(func_def_779, type, sK638: term).
% 2.47/1.94  thf(func_def_780, type, sK639: subst > term > subst > $o).
% 2.47/1.94  thf(func_def_781, type, sK640: (term > $o) > term).
% 2.47/1.94  thf(func_def_782, type, sK641: term).
% 2.47/1.94  thf(func_def_785, type, ph643: !>[X0: $tType]:(X0)).
% 2.47/1.94  thf(f3837,plain,(
% 2.47/1.94    $false),
% 2.47/1.94    inference(subsumption_resolution,[status(thm)],[f1489,f3802])).
% 2.47/1.94  thf(f3802,plain,(
% 2.47/1.94    ( ! [X0 : term] : (($true = (var @ X0))) )),
% 2.47/1.94    inference(superposition,[status(thm)],[f1861,f3801])).
% 2.47/1.94  thf(f3801,plain,(
% 2.47/1.94    ( ! [X0 : term,X1 : term] : ((X0 = X1)) )),
% 2.47/1.94    inference(superposition,[status(thm)],[f3797,f3797])).
% 2.47/1.94  thf(f3797,plain,(
% 2.47/1.94    ( ! [X38 : term] : (((d2term @ d_one) = X38)) )),
% 2.47/1.94    inference(forward_demodulation,[status(thm)],[f1444,f1400])).
% 2.47/1.94  thf(f1400,plain,(
% 2.47/1.94    ( ! [X84 : d_term] : ((d_one = X84)) )),
% 2.47/1.94    inference(cnf_transformation,[status(thm)],[f744])).
% 2.47/1.94  thf(f744,plain,(
% 2.47/1.94    (($true = sP108) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP108)) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & (((sub @ sK513 @ id) != sK513) | ($true = sP104) | ($true = sP103) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X1 : term] : ((sub @ X1 @ id) = X1) & ($true != sP104) & ($true != sP103))) & (! [X2 : term,X3 : term] : ((X2 = X3) | ((lam @ X3) != (lam @ X2))) | (laminj != $true)) & ((laminj = $true) | ((sK515 != sK514) & ((lam @ sK514) = (lam @ sK515)))) & ((induction2 = $true) | ($true != sP98)) & (($true = sP98) | (induction2 != $true)) & ((hoasinduction_lem3a = $true) | (sP95 != $true)) & ((sP95 = $true) | (hoasinduction_lem3a != $true)) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & (axclos = $true) & ! [X6 : subst] : ((d2subst @ (sK516 @ X6)) = X6) & ((hoasapinj1_lthm = $true) | ($true != sP90)) & (($true = sP90) | (hoasapinj1_lthm != $true)) & (! [X8 : term,X9 : term] : ((X8 = X9) | ((sub @ X9 @ sh) != (sub @ X8 @ sh))) | (shinj != $true)) & ((shinj = $true) | ((sK517 != sK518) & ((sub @ sK517 @ sh) = (sub @ sK518 @ sh)))) & ((sK519 != (sub @ sK519 @ id)) | ($true = sP88) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X13 : term] : ((sub @ X13 @ id) = X13) & ($true != sP88))) & ((induction2lem_lthm = $true) | (($true != sP84) & ! [X14 : subst,X15 : term] : ((comp @ sh @ (push @ X15 @ X14)) = X14) & ! [X16 : subst] : ((comp @ X16 @ id) = X16) & ! [X17 : subst,X18 : term] : ((sub @ one @ (push @ X18 @ X17)) = X18) & ($true != sP83))) & (($true = sP84) | ((comp @ sh @ (push @ sK521 @ sK520)) != sK520) | ((comp @ sK522 @ id) != sK522) | (sK524 != (sub @ one @ (push @ sK524 @ sK523))) | ($true = sP83) | (induction2lem_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (($true = sP78) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP78)) & (((sub @ sK525 @ id) != sK525) | ! [X26 : subst > term > term] : ((sub @ sK526 @ (push @ (sK528 @ X26) @ (sK527 @ X26))) != (X26 @ (sK527 @ X26) @ (sK528 @ X26))) | ($true = sP76) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X29 : term] : ((sub @ X29 @ id) = X29) & ! [X30 : term] : ! [X32 : subst,X33 : term] : ((sub @ X30 @ (push @ X33 @ X32)) = (sK529 @ X30 @ X32 @ X33)) & ($true != sP76))) & (termmset_gthm = $true) & ((termmset_lthm = $true) | (! [X34 : term] : ((sub @ X34 @ id) = X34) & (sK530 != (sub @ sK530 @ id)))) & (((sub @ sK531 @ id) != sK531) | ! [X37 : term] : ((sub @ X37 @ id) = X37) | (termmset_lthm != $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X38 : term] : ((d2term @ (sK532 @ X38)) = X38) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X41 : subst > term > term] : ((X41 @ (sK535 @ X41) @ (sK534 @ X41)) != (sub @ sK533 @ (push @ (sK534 @ X41) @ (sK535 @ X41))))) & (! [X44 : term] : ! [X46 : term,X47 : subst] : ((sK536 @ X44 @ X47 @ X46) = (sub @ X44 @ (push @ X46 @ X47))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((termmset = $true) | ((sub @ sK537 @ id) != sK537)) & (! [X49 : term] : ((sub @ X49 @ id) = X49) | (termmset != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasinduction_lem3v2_f = $true) | ! [X51 : subst > term > term] : ((X51 @ (sK540 @ X51) @ (sK539 @ X51)) != (sub @ sK538 @ (push @ (sK539 @ X51) @ (sK540 @ X51))))) & (! [X54 : term] : ! [X56 : term,X57 : subst] : ((sub @ X54 @ (push @ X56 @ X57)) = (sK541 @ X54 @ X57 @ X56)) | (hoasinduction_lem3v2_f != $true)) & ((induction2_lthm = $true) | (($true != sP74) & ! [X58 : term] : ((sub @ X58 @ id) = X58) & (sP73 != $true))) & (($true = sP74) | (sK542 != (sub @ sK542 @ id)) | (sP73 = $true) | (induction2_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X61 : term > $o] : ((X61 @ (sK544 @ X61)) != (sK543 @ id @ (sK544 @ X61) @ id))) & (! [X63 : subst > term > subst > $o] : ! [X65 : term] : ((X63 @ id @ X65 @ id) = (sK545 @ X63 @ X65)) | (hoasinduction_lem0_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((sP65 = $true) | ($true = sP67) | ($true = sP68) | ($true = sP66) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | ((sP65 != $true) & ($true != sP67) & ($true != sP68) & ($true != sP66))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (($true = sP52) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP52)) & (hoasinduction_lem3_gthm = $true) & ((pushprop_lem1v2_lthm = $true) | ((($true = (sK546 @ sK548)) & ($true != (sK547 @ one)) & ! [X70 : term] : ((sK546 @ (sub @ X70 @ (push @ sK548 @ sK549))) = (sK547 @ X70))) & ! [X71 : term,X72 : subst] : ((sub @ one @ (push @ X71 @ X72)) = X71))) & (! [X73 : term > $o,X74 : term > $o,X75 : term,X76 : subst] : (($true != (X73 @ X75)) | ($true = (X74 @ one)) | ((X73 @ (sub @ (sK550 @ X76 @ X75 @ X74 @ X73) @ (push @ X75 @ X76))) != (X74 @ (sK550 @ X76 @ X75 @ X74 @ X73)))) | (sK551 != (sub @ one @ (push @ sK551 @ sK552))) | (pushprop_lem1v2_lthm != $true)) & ((hoasinduction_lem3 = $true) | (sP50 != $true)) & ((sP50 = $true) | (hoasinduction_lem3 != $true)) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X80 : subst > term > subst > $o,X81 : term] : (($true = (X80 @ id @ X81 @ id)) | ($true = (sP46 @ X80)) | ($true = (sP45 @ X80))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | (($true != (sK553 @ id @ sK554 @ id)) & ($true != (sP46 @ sK553)) & ($true != (sP45 @ sK553)))) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (($true = sP44) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP44)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X84 : d_term] : (d_one = X84) & (pushprop_lem3v2 = $true) & (($true = sP41) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP41)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP40)) & (($true = sP40) | (hoasinduction_lem2 != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP37) | (induction != $true)) & ((induction = $true) | ($true != sP37)) & (apnotvar = $true) & (! [X85 : term] : ((sub @ X85 @ (push @ one @ sh)) = (sK555 @ X85 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ! [X88 : subst > term > term] : ((X88 @ sh @ one) != (sub @ sK556 @ (push @ one @ sh)))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & (! [X89 : subst > term > term,X90 : subst > term > term,X91 : term,X92 : subst] : (((lam @ (X89 @ sh @ one)) != (lam @ (X90 @ sh @ one))) | ((sub @ (X90 @ (sK559 @ X90) @ (sK558 @ X90)) @ (sK557 @ X90)) != (X90 @ (comp @ (sK559 @ X90) @ (sK557 @ X90)) @ (sub @ (sK558 @ X90) @ (sK557 @ X90)))) | ((X90 @ X92 @ X91) = (X89 @ X92 @ X91)) | ((X89 @ (comp @ (sK560 @ X89) @ (sK562 @ X89)) @ (sub @ (sK561 @ X89) @ (sK562 @ X89))) != (sub @ (X89 @ (sK560 @ X89) @ (sK561 @ X89)) @ (sK562 @ X89)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (((lam @ (sK564 @ sh @ one)) = (lam @ (sK563 @ sh @ one))) & ! [X103 : subst,X104 : term,X105 : subst] : ((sub @ (sK564 @ X105 @ X104) @ X103) = (sK564 @ (comp @ X105 @ X103) @ (sub @ X104 @ X103))) & ((sK564 @ sK566 @ sK565) != (sK563 @ sK566 @ sK565)) & ! [X106 : subst,X107 : term,X108 : subst] : ((sK563 @ (comp @ X106 @ X108) @ (sub @ X107 @ X108)) = (sub @ (sK563 @ X106 @ X107) @ X108)))) & (! [X109 : term,X110 : subst > term > term,X111 : term] : (((lam @ (X110 @ sh @ one)) != (ap @ (sub @ X111 @ id) @ X109)) | ((X110 @ (comp @ (sK568 @ X110) @ (sK569 @ X110)) @ (sub @ (sK567 @ X110) @ (sK569 @ X110))) != (sub @ (X110 @ (sK568 @ X110) @ (sK567 @ X110)) @ (sK569 @ X110)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | (((lam @ (sK571 @ sh @ one)) = (ap @ (sub @ sK572 @ id) @ sK570)) & ! [X118 : term,X119 : subst,X120 : subst] : ((sK571 @ (comp @ X119 @ X120) @ (sub @ X118 @ X120)) = (sub @ (sK571 @ X119 @ X118) @ X120)))) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((apinj2 = $true) | (((ap @ sK576 @ sK574) = (ap @ sK575 @ sK573)) & (sK573 != sK574))) & (! [X125 : term,X126 : term,X127 : term,X128 : term] : (((ap @ X127 @ X125) != (ap @ X128 @ X126)) | (X125 = X126)) | (apinj2 != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ! [X132 : term > $o] : ((X132 @ (sK580 @ X132)) != (sK578 @ (sub @ (sK580 @ X132) @ (push @ sK577 @ sK579))))) & (! [X134 : term,X135 : term > $o,X136 : subst] : ! [X138 : term] : ((sK581 @ X136 @ X135 @ X134 @ X138) = (X135 @ (sub @ X138 @ (push @ X134 @ X136)))) | (pushprop_lem0 != $true)) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & (! [X139 : subst] : ((push @ (sub @ one @ X139) @ (comp @ sh @ X139)) = X139) | (axscons != $true)) & ((axscons = $true) | (sK582 != (push @ (sub @ one @ sK582) @ (comp @ sh @ sK582)))) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X141 : d_subst,X142 : d_subst] : (((d2subst @ X142) != (d2subst @ X141)) | (X141 = X142)) & (axabs = $true) & ! [X143 : d_subst] : (d_id = X143) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP34) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP34)) & ((! [X144 : subst] : ((comp @ X144 @ id) = X144) & ! [X145 : subst] : ((comp @ id @ X145) = X145)) | (substmonoid != $true)) & ((substmonoid = $true) | (sK583 != (comp @ sK583 @ id)) | (sK584 != (comp @ id @ sK584))) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X148 : d_term,X149 : d_term] : (((d2term @ X149) != (d2term @ X148)) | (X148 = X149)) & (($true = sP32) | ($true = sP31) | ! [X151 : term > $o] : ((sK585 @ id @ (sK586 @ X151) @ id) != (X151 @ (sK586 @ X151))) | ($true = sP30) | (sK587 != (sub @ sK587 @ id)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP32) & ($true != sP31) & ! [X154 : subst > term > subst > $o] : ! [X156 : term] : ((X154 @ id @ X156 @ id) = (sK588 @ X154 @ X156)) & ($true != sP30) & ! [X157 : term] : ((sub @ X157 @ id) = X157))) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & (! [X158 : subst,X159 : term] : ((sub @ one @ (push @ X159 @ X158)) = X159) | (axvarcons != $true)) & ((axvarcons = $true) | (sK590 != (sub @ one @ (push @ sK590 @ sK589)))) & ((hoasinduction_lem3b = $true) | ! [X163 : subst > term > term] : ((sub @ sK591 @ (push @ one @ sh)) != (X163 @ sh @ one))) & (! [X164 : term] : ((sub @ X164 @ (push @ one @ sh)) = (sK592 @ X164 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((axidl = $true) | ((comp @ id @ sK593) != sK593)) & (! [X167 : subst] : ((comp @ id @ X167) = X167) | (axidl != $true)) & ((pushprop_lem1 = $true) | (($true = (sK594 @ sK598)) & ($true != (sK597 @ (sub @ sK598 @ (push @ sK595 @ sK596)))))) & (! [X173 : term > $o,X174 : term,X175 : subst,X176 : term > $o,X177 : term] : (($true != (X173 @ X177)) | ($true = (X176 @ (sub @ X177 @ (push @ X174 @ X175))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1_lthm = $true) | (! [X178 : subst,X179 : term] : ((sub @ one @ (push @ X179 @ X178)) = X179) & (($true = (sK603 @ sK602)) & ($true != (sK601 @ (sub @ sK602 @ (push @ sK600 @ sK599))))) & ! [X185 : subst,X186 : term] : ((comp @ sh @ (push @ X186 @ X185)) = X185))) & (((sub @ one @ (push @ sK605 @ sK604)) != sK605) | ! [X189 : subst,X190 : term,X191 : term > $o,X192 : term,X193 : term > $o] : (($true != (X193 @ X192)) | ($true = (X191 @ (sub @ X192 @ (push @ X190 @ X189))))) | ((comp @ sh @ (push @ sK607 @ sK606)) != sK606) | (pushprop_lem1_lthm != $true)) & (! [X196 : term,X197 : term,X198 : term,X199 : term] : ((X196 = X199) | ((ap @ X199 @ X198) != (ap @ X196 @ X197))) | (apinj1 != $true)) & ((apinj1 = $true) | ((sK608 != sK611) & ((ap @ sK611 @ sK610) = (ap @ sK608 @ sK609)))) & (hoasinduction_lem3b_gthm = $true) & ((pushprop_lem0_lthm = $true) | ! [X207 : term > $o] : ((X207 @ (sK615 @ X207)) != (sK612 @ (sub @ (sK615 @ X207) @ (push @ sK613 @ sK614))))) & (! [X209 : term > $o,X210 : term,X211 : subst] : ! [X213 : term] : ((sK616 @ X211 @ X210 @ X209 @ X213) = (X209 @ (sub @ X213 @ (push @ X210 @ X211)))) | (pushprop_lem0_lthm != $true)) & (hoaslamnotvar_gthm = $true) & ((axvarid = $true) | ((sub @ sK617 @ id) != sK617)) & (! [X215 : term] : ((sub @ X215 @ id) = X215) | (axvarid != $true)) & (axmap = $true) & (($true = sP22) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP22)) & ((hoasinduction_lem3v2a = $true) | ($true != sP17)) & (($true = sP17) | (hoasinduction_lem3v2a != $true)) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & (! [X216 : subst,X217 : term] : ((comp @ sh @ (push @ X217 @ X216)) = X216) | (axshiftcons != $true)) & ((axshiftcons = $true) | (sK618 != (comp @ sh @ (push @ sK619 @ sK618)))) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP15) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP15)) & (axvarshift = $true) & ((hoasapinj1 = $true) | ((sK623 != sK620) & ((ap @ (sub @ sK620 @ id) @ sK621) = (ap @ (sub @ sK623 @ id) @ sK622)))) & (! [X224 : term,X225 : term,X226 : term,X227 : term] : ((X224 = X227) | ((ap @ (sub @ X227 @ id) @ X226) != (ap @ (sub @ X224 @ id) @ X225))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X228 : subst > term > subst > $o] : ! [X230 : term] : ((X228 @ id @ X230 @ id) = (sK624 @ X228 @ X230)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ! [X232 : term > $o] : ((sK625 @ id @ (sK626 @ X232) @ id) != (X232 @ (sK626 @ X232)))) & ((pushprop_lem1v2 = $true) | (($true != (sK627 @ one)) & ! [X238 : term] : ((sK628 @ (sub @ X238 @ (push @ sK629 @ sK630))) = (sK627 @ X238)) & ($true = (sK628 @ sK629)))) & (! [X239 : term > $o,X240 : term > $o,X241 : term,X242 : subst] : (($true = (X239 @ one)) | ((X240 @ (sub @ (sK631 @ X242 @ X241 @ X240 @ X239) @ (push @ X241 @ X242))) != (X239 @ (sK631 @ X242 @ X241 @ X240 @ X239))) | ((X240 @ X241) != $true)) | (pushprop_lem1v2 != $true)) & (! [X244 : subst] : ((comp @ X244 @ id) = X244) | (axidr != $true)) & ((axidr = $true) | ((comp @ sK632 @ id) != sK632)) & (pushprop_gthm = $true) & ((hoaslaminj_lthm = $true) | ($true != sP13)) & (($true = sP13) | (hoaslaminj_lthm != $true)) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & ((hoasapinj2 = $true) | (((ap @ (sub @ sK633 @ id) @ sK635) = (ap @ (sub @ sK634 @ id) @ sK636)) & (sK636 != sK635))) & (! [X250 : term,X251 : term,X252 : term,X253 : term] : (((ap @ (sub @ X251 @ id) @ X253) != (ap @ (sub @ X250 @ id) @ X252)) | (X252 = X253)) | (hoasapinj2 != $true)) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X254 : term] : ((sub @ X254 @ id) = X254) & ! [X255 : subst > term > subst > $o] : ! [X257 : term] : ((X255 @ id @ X257 @ id) = (sK637 @ X255 @ X257)) & ($true != sP9) & ($true != sP11) & ($true != sP10))) & ((sK638 != (sub @ sK638 @ id)) | ! [X260 : term > $o] : ((sK639 @ id @ (sK640 @ X260) @ id) != (X260 @ (sK640 @ X260))) | ($true = sP9) | ($true = sP11) | ($true = sP10) | (hoasinduction_no_psi_cond_lthm != $true)) & (($true = sP2) | ($true = sP3) | ((sub @ sK641 @ id) != sK641) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP2) & ($true != sP3) & ! [X263 : term] : ((sub @ X263 @ id) = X263))) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(skolemisation,[status(esa),new_symbols(skolem,[sK513,sK514,sK515,sK516,sK517,sK518,sK519,sK520,sK521,sK522,sK523,sK524,sK525,sK526,sK527,sK528,sK529,sK530,sK531,sK532,sK533,sK534,sK535,sK536,sK537,sK538,sK539,sK540,sK541,sK542,sK543,sK544,sK545,sK546,sK547,sK548,sK549,sK550,sK551,sK552,sK553,sK554,sK555,sK556,sK557,sK558,sK559,sK560,sK561,sK562,sK563,sK564,sK565,sK566,sK567,sK568,sK569,sK570,sK571,sK572,sK573,sK574,sK575,sK576,sK577,sK578,sK579,sK580,sK581,sK582,sK583,sK584,sK585,sK586,sK587,sK588,sK589,sK590,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])],[f668,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682,f681,f680,f679,f678,f677,f676,f675,f674,f673,f672,f671,f670,f669])).
% 2.47/1.94  thf(f669,plain,(
% 2.47/1.94    ? [X0 : term] : ((sub @ X0 @ id) != X0) => ((sub @ sK513 @ id) != sK513)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f670,plain,(
% 2.47/1.94    ? [X4 : term,X5 : term] : ((X4 != X5) & ((lam @ X5) = (lam @ X4))) => ((sK515 != sK514) & ((lam @ sK514) = (lam @ sK515)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f671,plain,(
% 2.47/1.94    ! [X6 : subst] : (? [X7 : d_subst] : ((d2subst @ X7) = X6) => ((d2subst @ (sK516 @ X6)) = X6))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f672,plain,(
% 2.47/1.94    ? [X10 : term,X11 : term] : ((X10 != X11) & ((sub @ X11 @ sh) = (sub @ X10 @ sh))) => ((sK517 != sK518) & ((sub @ sK517 @ sh) = (sub @ sK518 @ sh)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f673,plain,(
% 2.47/1.94    ? [X12 : term] : ((sub @ X12 @ id) != X12) => (sK519 != (sub @ sK519 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f674,plain,(
% 2.47/1.94    ? [X19 : subst,X20 : term] : ((comp @ sh @ (push @ X20 @ X19)) != X19) => ((comp @ sh @ (push @ sK521 @ sK520)) != sK520)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f675,plain,(
% 2.47/1.94    ? [X21 : subst] : ((comp @ X21 @ id) != X21) => ((comp @ sK522 @ id) != sK522)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f676,plain,(
% 2.47/1.94    ? [X22 : subst,X23 : term] : ((sub @ one @ (push @ X23 @ X22)) != X23) => (sK524 != (sub @ one @ (push @ sK524 @ sK523)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f677,plain,(
% 2.47/1.94    ? [X24 : term] : ((sub @ X24 @ id) != X24) => ((sub @ sK525 @ id) != sK525)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f678,plain,(
% 2.47/1.94    ? [X25 : term] : ! [X26 : subst > term > term] : ? [X27 : subst,X28 : term] : ((sub @ X25 @ (push @ X28 @ X27)) != (X26 @ X27 @ X28)) => ! [X26 : subst > term > term] : ? [X28 : term,X27 : subst] : ((X26 @ X27 @ X28) != (sub @ sK526 @ (push @ X28 @ X27)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f679,plain,(
% 2.47/1.94    ! [X26 : subst > term > term] : (? [X28 : term,X27 : subst] : ((X26 @ X27 @ X28) != (sub @ sK526 @ (push @ X28 @ X27))) => ((sub @ sK526 @ (push @ (sK528 @ X26) @ (sK527 @ X26))) != (X26 @ (sK527 @ X26) @ (sK528 @ X26))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f680,plain,(
% 2.47/1.94    ! [X30 : term] : (? [X31 : subst > term > term] : ! [X32 : subst,X33 : term] : ((X31 @ X32 @ X33) = (sub @ X30 @ (push @ X33 @ X32))) => ! [X33 : term,X32 : subst] : ((sub @ X30 @ (push @ X33 @ X32)) = (sK529 @ X30 @ X32 @ X33)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f681,plain,(
% 2.47/1.94    ? [X35 : term] : ((sub @ X35 @ id) != X35) => (sK530 != (sub @ sK530 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f682,plain,(
% 2.47/1.94    ? [X36 : term] : ((sub @ X36 @ id) != X36) => ((sub @ sK531 @ id) != sK531)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f683,plain,(
% 2.47/1.94    ! [X38 : term] : (? [X39 : d_term] : ((d2term @ X39) = X38) => ((d2term @ (sK532 @ X38)) = X38))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f684,plain,(
% 2.47/1.94    ? [X40 : term] : ! [X41 : subst > term > term] : ? [X42 : term,X43 : subst] : ((sub @ X40 @ (push @ X42 @ X43)) != (X41 @ X43 @ X42)) => ! [X41 : subst > term > term] : ? [X43 : subst,X42 : term] : ((sub @ sK533 @ (push @ X42 @ X43)) != (X41 @ X43 @ X42))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f685,plain,(
% 2.47/1.94    ! [X41 : subst > term > term] : (? [X43 : subst,X42 : term] : ((sub @ sK533 @ (push @ X42 @ X43)) != (X41 @ X43 @ X42)) => ((X41 @ (sK535 @ X41) @ (sK534 @ X41)) != (sub @ sK533 @ (push @ (sK534 @ X41) @ (sK535 @ X41)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f686,plain,(
% 2.47/1.94    ! [X44 : term] : (? [X45 : subst > term > term] : ! [X46 : term,X47 : subst] : ((sub @ X44 @ (push @ X46 @ X47)) = (X45 @ X47 @ X46)) => ! [X47 : subst,X46 : term] : ((sK536 @ X44 @ X47 @ X46) = (sub @ X44 @ (push @ X46 @ X47))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f687,plain,(
% 2.47/1.94    ? [X48 : term] : ((sub @ X48 @ id) != X48) => ((sub @ sK537 @ id) != sK537)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f688,plain,(
% 2.47/1.94    ? [X50 : term] : ! [X51 : subst > term > term] : ? [X52 : term,X53 : subst] : ((X51 @ X53 @ X52) != (sub @ X50 @ (push @ X52 @ X53))) => ! [X51 : subst > term > term] : ? [X53 : subst,X52 : term] : ((sub @ sK538 @ (push @ X52 @ X53)) != (X51 @ X53 @ X52))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f689,plain,(
% 2.47/1.94    ! [X51 : subst > term > term] : (? [X53 : subst,X52 : term] : ((sub @ sK538 @ (push @ X52 @ X53)) != (X51 @ X53 @ X52)) => ((X51 @ (sK540 @ X51) @ (sK539 @ X51)) != (sub @ sK538 @ (push @ (sK539 @ X51) @ (sK540 @ X51)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f690,plain,(
% 2.47/1.94    ! [X54 : term] : (? [X55 : subst > term > term] : ! [X56 : term,X57 : subst] : ((X55 @ X57 @ X56) = (sub @ X54 @ (push @ X56 @ X57))) => ! [X57 : subst,X56 : term] : ((sub @ X54 @ (push @ X56 @ X57)) = (sK541 @ X54 @ X57 @ X56)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f691,plain,(
% 2.47/1.94    ? [X59 : term] : ((sub @ X59 @ id) != X59) => (sK542 != (sub @ sK542 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f692,plain,(
% 2.47/1.94    ? [X60 : subst > term > subst > $o] : ! [X61 : term > $o] : ? [X62 : term] : ((X61 @ X62) != (X60 @ id @ X62 @ id)) => ! [X61 : term > $o] : ? [X62 : term] : ((X61 @ X62) != (sK543 @ id @ X62 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f693,plain,(
% 2.47/1.94    ! [X61 : term > $o] : (? [X62 : term] : ((X61 @ X62) != (sK543 @ id @ X62 @ id)) => ((X61 @ (sK544 @ X61)) != (sK543 @ id @ (sK544 @ X61) @ id)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f694,plain,(
% 2.47/1.94    ! [X63 : subst > term > subst > $o] : (? [X64 : term > $o] : ! [X65 : term] : ((X63 @ id @ X65 @ id) = (X64 @ X65)) => ! [X65 : term] : ((X63 @ id @ X65 @ id) = (sK545 @ X63 @ X65)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f695,plain,(
% 2.47/1.94    ? [X66 : term > $o,X67 : term > $o,X68 : term,X69 : subst] : (($true = (X66 @ X68)) & ($true != (X67 @ one)) & ! [X70 : term] : ((X66 @ (sub @ X70 @ (push @ X68 @ X69))) = (X67 @ X70))) => (($true = (sK546 @ sK548)) & ($true != (sK547 @ one)) & ! [X70 : term] : ((sK546 @ (sub @ X70 @ (push @ sK548 @ sK549))) = (sK547 @ X70)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f696,plain,(
% 2.47/1.94    ! [X73 : term > $o,X74 : term > $o,X75 : term,X76 : subst] : (? [X77 : term] : ((X74 @ X77) != (X73 @ (sub @ X77 @ (push @ X75 @ X76)))) => ((X73 @ (sub @ (sK550 @ X76 @ X75 @ X74 @ X73) @ (push @ X75 @ X76))) != (X74 @ (sK550 @ X76 @ X75 @ X74 @ X73))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f697,plain,(
% 2.47/1.94    ? [X78 : term,X79 : subst] : ((sub @ one @ (push @ X78 @ X79)) != X78) => (sK551 != (sub @ one @ (push @ sK551 @ sK552)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f698,plain,(
% 2.47/1.94    ? [X82 : subst > term > subst > $o,X83 : term] : (($true != (X82 @ id @ X83 @ id)) & ($true != (sP46 @ X82)) & ($true != (sP45 @ X82))) => (($true != (sK553 @ id @ sK554 @ id)) & ($true != (sP46 @ sK553)) & ($true != (sP45 @ sK553)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f699,plain,(
% 2.47/1.94    ! [X85 : term] : (? [X86 : subst > term > term] : ((X86 @ sh @ one) = (sub @ X85 @ (push @ one @ sh))) => ((sub @ X85 @ (push @ one @ sh)) = (sK555 @ X85 @ sh @ one)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f700,plain,(
% 2.47/1.94    ? [X87 : term] : ! [X88 : subst > term > term] : ((X88 @ sh @ one) != (sub @ X87 @ (push @ one @ sh))) => ! [X88 : subst > term > term] : ((X88 @ sh @ one) != (sub @ sK556 @ (push @ one @ sh)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f701,plain,(
% 2.47/1.94    ! [X90 : subst > term > term] : (? [X93 : subst,X94 : term,X95 : subst] : ((sub @ (X90 @ X95 @ X94) @ X93) != (X90 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93))) => ((sub @ (X90 @ (sK559 @ X90) @ (sK558 @ X90)) @ (sK557 @ X90)) != (X90 @ (comp @ (sK559 @ X90) @ (sK557 @ X90)) @ (sub @ (sK558 @ X90) @ (sK557 @ X90)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f702,plain,(
% 2.47/1.94    ! [X89 : subst > term > term] : (? [X96 : subst,X97 : term,X98 : subst] : ((sub @ (X89 @ X96 @ X97) @ X98) != (X89 @ (comp @ X96 @ X98) @ (sub @ X97 @ X98))) => ((X89 @ (comp @ (sK560 @ X89) @ (sK562 @ X89)) @ (sub @ (sK561 @ X89) @ (sK562 @ X89))) != (sub @ (X89 @ (sK560 @ X89) @ (sK561 @ X89)) @ (sK562 @ X89))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f703,plain,(
% 2.47/1.94    ? [X99 : subst > term > term,X100 : subst > term > term,X101 : term,X102 : subst] : (((lam @ (X100 @ sh @ one)) = (lam @ (X99 @ sh @ one))) & ! [X103 : subst,X104 : term,X105 : subst] : ((X100 @ (comp @ X105 @ X103) @ (sub @ X104 @ X103)) = (sub @ (X100 @ X105 @ X104) @ X103)) & ((X100 @ X102 @ X101) != (X99 @ X102 @ X101)) & ! [X106 : subst,X107 : term,X108 : subst] : ((sub @ (X99 @ X106 @ X107) @ X108) = (X99 @ (comp @ X106 @ X108) @ (sub @ X107 @ X108)))) => (((lam @ (sK564 @ sh @ one)) = (lam @ (sK563 @ sh @ one))) & ! [X105 : subst,X104 : term,X103 : subst] : ((sub @ (sK564 @ X105 @ X104) @ X103) = (sK564 @ (comp @ X105 @ X103) @ (sub @ X104 @ X103))) & ((sK564 @ sK566 @ sK565) != (sK563 @ sK566 @ sK565)) & ! [X108 : subst,X107 : term,X106 : subst] : ((sK563 @ (comp @ X106 @ X108) @ (sub @ X107 @ X108)) = (sub @ (sK563 @ X106 @ X107) @ X108)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f704,plain,(
% 2.47/1.94    ! [X110 : subst > term > term] : (? [X112 : term,X113 : subst,X114 : subst] : ((X110 @ (comp @ X113 @ X114) @ (sub @ X112 @ X114)) != (sub @ (X110 @ X113 @ X112) @ X114)) => ((X110 @ (comp @ (sK568 @ X110) @ (sK569 @ X110)) @ (sub @ (sK567 @ X110) @ (sK569 @ X110))) != (sub @ (X110 @ (sK568 @ X110) @ (sK567 @ X110)) @ (sK569 @ X110))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f705,plain,(
% 2.47/1.94    ? [X115 : term,X116 : subst > term > term,X117 : term] : (((ap @ (sub @ X117 @ id) @ X115) = (lam @ (X116 @ sh @ one))) & ! [X118 : term,X119 : subst,X120 : subst] : ((X116 @ (comp @ X119 @ X120) @ (sub @ X118 @ X120)) = (sub @ (X116 @ X119 @ X118) @ X120))) => (((lam @ (sK571 @ sh @ one)) = (ap @ (sub @ sK572 @ id) @ sK570)) & ! [X120 : subst,X119 : subst,X118 : term] : ((sK571 @ (comp @ X119 @ X120) @ (sub @ X118 @ X120)) = (sub @ (sK571 @ X119 @ X118) @ X120)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f706,plain,(
% 2.47/1.94    ? [X121 : term,X122 : term,X123 : term,X124 : term] : (((ap @ X124 @ X122) = (ap @ X123 @ X121)) & (X121 != X122)) => (((ap @ sK576 @ sK574) = (ap @ sK575 @ sK573)) & (sK573 != sK574))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f707,plain,(
% 2.47/1.94    ? [X129 : term,X130 : term > $o,X131 : subst] : ! [X132 : term > $o] : ? [X133 : term] : ((X132 @ X133) != (X130 @ (sub @ X133 @ (push @ X129 @ X131)))) => ! [X132 : term > $o] : ? [X133 : term] : ((sK578 @ (sub @ X133 @ (push @ sK577 @ sK579))) != (X132 @ X133))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f708,plain,(
% 2.47/1.94    ! [X132 : term > $o] : (? [X133 : term] : ((sK578 @ (sub @ X133 @ (push @ sK577 @ sK579))) != (X132 @ X133)) => ((X132 @ (sK580 @ X132)) != (sK578 @ (sub @ (sK580 @ X132) @ (push @ sK577 @ sK579)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f709,plain,(
% 2.47/1.94    ! [X134 : term,X135 : term > $o,X136 : subst] : (? [X137 : term > $o] : ! [X138 : term] : ((X137 @ X138) = (X135 @ (sub @ X138 @ (push @ X134 @ X136)))) => ! [X138 : term] : ((sK581 @ X136 @ X135 @ X134 @ X138) = (X135 @ (sub @ X138 @ (push @ X134 @ X136)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f710,plain,(
% 2.47/1.94    ? [X140 : subst] : ((push @ (sub @ one @ X140) @ (comp @ sh @ X140)) != X140) => (sK582 != (push @ (sub @ one @ sK582) @ (comp @ sh @ sK582)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f711,plain,(
% 2.47/1.94    ? [X146 : subst] : ((comp @ X146 @ id) != X146) => (sK583 != (comp @ sK583 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f712,plain,(
% 2.47/1.94    ? [X147 : subst] : ((comp @ id @ X147) != X147) => (sK584 != (comp @ id @ sK584))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f713,plain,(
% 2.47/1.94    ? [X150 : subst > term > subst > $o] : ! [X151 : term > $o] : ? [X152 : term] : ((X151 @ X152) != (X150 @ id @ X152 @ id)) => ! [X151 : term > $o] : ? [X152 : term] : ((sK585 @ id @ X152 @ id) != (X151 @ X152))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f714,plain,(
% 2.47/1.94    ! [X151 : term > $o] : (? [X152 : term] : ((sK585 @ id @ X152 @ id) != (X151 @ X152)) => ((sK585 @ id @ (sK586 @ X151) @ id) != (X151 @ (sK586 @ X151))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f715,plain,(
% 2.47/1.94    ? [X153 : term] : ((sub @ X153 @ id) != X153) => (sK587 != (sub @ sK587 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f716,plain,(
% 2.47/1.94    ! [X154 : subst > term > subst > $o] : (? [X155 : term > $o] : ! [X156 : term] : ((X155 @ X156) = (X154 @ id @ X156 @ id)) => ! [X156 : term] : ((X154 @ id @ X156 @ id) = (sK588 @ X154 @ X156)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f717,plain,(
% 2.47/1.94    ? [X160 : subst,X161 : term] : ((sub @ one @ (push @ X161 @ X160)) != X161) => (sK590 != (sub @ one @ (push @ sK590 @ sK589)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f718,plain,(
% 2.47/1.94    ? [X162 : term] : ! [X163 : subst > term > term] : ((X163 @ sh @ one) != (sub @ X162 @ (push @ one @ sh))) => ! [X163 : subst > term > term] : ((sub @ sK591 @ (push @ one @ sh)) != (X163 @ sh @ one))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f719,plain,(
% 2.47/1.94    ! [X164 : term] : (? [X165 : subst > term > term] : ((sub @ X164 @ (push @ one @ sh)) = (X165 @ sh @ one)) => ((sub @ X164 @ (push @ one @ sh)) = (sK592 @ X164 @ sh @ one)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f720,plain,(
% 2.47/1.94    ? [X166 : subst] : ((comp @ id @ X166) != X166) => ((comp @ id @ sK593) != sK593)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f721,plain,(
% 2.47/1.94    ? [X168 : term > $o,X169 : term,X170 : subst,X171 : term > $o,X172 : term] : (($true = (X168 @ X172)) & ($true != (X171 @ (sub @ X172 @ (push @ X169 @ X170))))) => (($true = (sK594 @ sK598)) & ($true != (sK597 @ (sub @ sK598 @ (push @ sK595 @ sK596)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f722,plain,(
% 2.47/1.94    ? [X180 : subst,X181 : term,X182 : term > $o,X183 : term,X184 : term > $o] : (($true = (X184 @ X183)) & ($true != (X182 @ (sub @ X183 @ (push @ X181 @ X180))))) => (($true = (sK603 @ sK602)) & ($true != (sK601 @ (sub @ sK602 @ (push @ sK600 @ sK599)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f723,plain,(
% 2.47/1.94    ? [X187 : subst,X188 : term] : ((sub @ one @ (push @ X188 @ X187)) != X188) => ((sub @ one @ (push @ sK605 @ sK604)) != sK605)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f724,plain,(
% 2.47/1.94    ? [X194 : subst,X195 : term] : ((comp @ sh @ (push @ X195 @ X194)) != X194) => ((comp @ sh @ (push @ sK607 @ sK606)) != sK606)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f725,plain,(
% 2.47/1.94    ? [X200 : term,X201 : term,X202 : term,X203 : term] : ((X200 != X203) & ((ap @ X203 @ X202) = (ap @ X200 @ X201))) => ((sK608 != sK611) & ((ap @ sK611 @ sK610) = (ap @ sK608 @ sK609)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f726,plain,(
% 2.47/1.94    ? [X204 : term > $o,X205 : term,X206 : subst] : ! [X207 : term > $o] : ? [X208 : term] : ((X207 @ X208) != (X204 @ (sub @ X208 @ (push @ X205 @ X206)))) => ! [X207 : term > $o] : ? [X208 : term] : ((X207 @ X208) != (sK612 @ (sub @ X208 @ (push @ sK613 @ sK614))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f727,plain,(
% 2.47/1.94    ! [X207 : term > $o] : (? [X208 : term] : ((X207 @ X208) != (sK612 @ (sub @ X208 @ (push @ sK613 @ sK614)))) => ((X207 @ (sK615 @ X207)) != (sK612 @ (sub @ (sK615 @ X207) @ (push @ sK613 @ sK614)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f728,plain,(
% 2.47/1.94    ! [X209 : term > $o,X210 : term,X211 : subst] : (? [X212 : term > $o] : ! [X213 : term] : ((X212 @ X213) = (X209 @ (sub @ X213 @ (push @ X210 @ X211)))) => ! [X213 : term] : ((sK616 @ X211 @ X210 @ X209 @ X213) = (X209 @ (sub @ X213 @ (push @ X210 @ X211)))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f729,plain,(
% 2.47/1.94    ? [X214 : term] : ((sub @ X214 @ id) != X214) => ((sub @ sK617 @ id) != sK617)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f730,plain,(
% 2.47/1.94    ? [X218 : subst,X219 : term] : ((comp @ sh @ (push @ X219 @ X218)) != X218) => (sK618 != (comp @ sh @ (push @ sK619 @ sK618)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f731,plain,(
% 2.47/1.94    ? [X220 : term,X221 : term,X222 : term,X223 : term] : ((X220 != X223) & ((ap @ (sub @ X220 @ id) @ X221) = (ap @ (sub @ X223 @ id) @ X222))) => ((sK623 != sK620) & ((ap @ (sub @ sK620 @ id) @ sK621) = (ap @ (sub @ sK623 @ id) @ sK622)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f732,plain,(
% 2.47/1.94    ! [X228 : subst > term > subst > $o] : (? [X229 : term > $o] : ! [X230 : term] : ((X229 @ X230) = (X228 @ id @ X230 @ id)) => ! [X230 : term] : ((X228 @ id @ X230 @ id) = (sK624 @ X228 @ X230)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f733,plain,(
% 2.47/1.94    ? [X231 : subst > term > subst > $o] : ! [X232 : term > $o] : ? [X233 : term] : ((X232 @ X233) != (X231 @ id @ X233 @ id)) => ! [X232 : term > $o] : ? [X233 : term] : ((X232 @ X233) != (sK625 @ id @ X233 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f734,plain,(
% 2.47/1.94    ! [X232 : term > $o] : (? [X233 : term] : ((X232 @ X233) != (sK625 @ id @ X233 @ id)) => ((sK625 @ id @ (sK626 @ X232) @ id) != (X232 @ (sK626 @ X232))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f735,plain,(
% 2.47/1.94    ? [X234 : term > $o,X235 : term > $o,X236 : term,X237 : subst] : (($true != (X234 @ one)) & ! [X238 : term] : ((X235 @ (sub @ X238 @ (push @ X236 @ X237))) = (X234 @ X238)) & ($true = (X235 @ X236))) => (($true != (sK627 @ one)) & ! [X238 : term] : ((sK628 @ (sub @ X238 @ (push @ sK629 @ sK630))) = (sK627 @ X238)) & ($true = (sK628 @ sK629)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f736,plain,(
% 2.47/1.94    ! [X239 : term > $o,X240 : term > $o,X241 : term,X242 : subst] : (? [X243 : term] : ((X239 @ X243) != (X240 @ (sub @ X243 @ (push @ X241 @ X242)))) => ((X240 @ (sub @ (sK631 @ X242 @ X241 @ X240 @ X239) @ (push @ X241 @ X242))) != (X239 @ (sK631 @ X242 @ X241 @ X240 @ X239))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f737,plain,(
% 2.47/1.94    ? [X245 : subst] : ((comp @ X245 @ id) != X245) => ((comp @ sK632 @ id) != sK632)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f738,plain,(
% 2.47/1.94    ? [X246 : term,X247 : term,X248 : term,X249 : term] : (((ap @ (sub @ X246 @ id) @ X248) = (ap @ (sub @ X247 @ id) @ X249)) & (X248 != X249)) => (((ap @ (sub @ sK633 @ id) @ sK635) = (ap @ (sub @ sK634 @ id) @ sK636)) & (sK636 != sK635))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f739,plain,(
% 2.47/1.94    ! [X255 : subst > term > subst > $o] : (? [X256 : term > $o] : ! [X257 : term] : ((X255 @ id @ X257 @ id) = (X256 @ X257)) => ! [X257 : term] : ((X255 @ id @ X257 @ id) = (sK637 @ X255 @ X257)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f740,plain,(
% 2.47/1.94    ? [X258 : term] : ((sub @ X258 @ id) != X258) => (sK638 != (sub @ sK638 @ id))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f741,plain,(
% 2.47/1.94    ? [X259 : subst > term > subst > $o] : ! [X260 : term > $o] : ? [X261 : term] : ((X259 @ id @ X261 @ id) != (X260 @ X261)) => ! [X260 : term > $o] : ? [X261 : term] : ((sK639 @ id @ X261 @ id) != (X260 @ X261))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f742,plain,(
% 2.47/1.94    ! [X260 : term > $o] : (? [X261 : term] : ((sK639 @ id @ X261 @ id) != (X260 @ X261)) => ((sK639 @ id @ (sK640 @ X260) @ id) != (X260 @ (sK640 @ X260))))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f743,plain,(
% 2.47/1.94    ? [X262 : term] : ((sub @ X262 @ id) != X262) => ((sub @ sK641 @ id) != sK641)),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f668,plain,(
% 2.47/1.94    (($true = sP108) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP108)) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & (? [X0 : term] : ((sub @ X0 @ id) != X0) | ($true = sP104) | ($true = sP103) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X1 : term] : ((sub @ X1 @ id) = X1) & ($true != sP104) & ($true != sP103))) & (! [X2 : term,X3 : term] : ((X2 = X3) | ((lam @ X3) != (lam @ X2))) | (laminj != $true)) & ((laminj = $true) | ? [X4 : term,X5 : term] : ((X4 != X5) & ((lam @ X5) = (lam @ X4)))) & ((induction2 = $true) | ($true != sP98)) & (($true = sP98) | (induction2 != $true)) & ((hoasinduction_lem3a = $true) | (sP95 != $true)) & ((sP95 = $true) | (hoasinduction_lem3a != $true)) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & (axclos = $true) & ! [X6 : subst] : ? [X7 : d_subst] : ((d2subst @ X7) = X6) & ((hoasapinj1_lthm = $true) | ($true != sP90)) & (($true = sP90) | (hoasapinj1_lthm != $true)) & (! [X8 : term,X9 : term] : ((X8 = X9) | ((sub @ X9 @ sh) != (sub @ X8 @ sh))) | (shinj != $true)) & ((shinj = $true) | ? [X10 : term,X11 : term] : ((X10 != X11) & ((sub @ X11 @ sh) = (sub @ X10 @ sh)))) & (? [X12 : term] : ((sub @ X12 @ id) != X12) | ($true = sP88) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X13 : term] : ((sub @ X13 @ id) = X13) & ($true != sP88))) & ((induction2lem_lthm = $true) | (($true != sP84) & ! [X14 : subst,X15 : term] : ((comp @ sh @ (push @ X15 @ X14)) = X14) & ! [X16 : subst] : ((comp @ X16 @ id) = X16) & ! [X17 : subst,X18 : term] : ((sub @ one @ (push @ X18 @ X17)) = X18) & ($true != sP83))) & (($true = sP84) | ? [X19 : subst,X20 : term] : ((comp @ sh @ (push @ X20 @ X19)) != X19) | ? [X21 : subst] : ((comp @ X21 @ id) != X21) | ? [X22 : subst,X23 : term] : ((sub @ one @ (push @ X23 @ X22)) != X23) | ($true = sP83) | (induction2lem_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (($true = sP78) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP78)) & (? [X24 : term] : ((sub @ X24 @ id) != X24) | ? [X25 : term] : ! [X26 : subst > term > term] : ? [X27 : subst,X28 : term] : ((sub @ X25 @ (push @ X28 @ X27)) != (X26 @ X27 @ X28)) | ($true = sP76) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X29 : term] : ((sub @ X29 @ id) = X29) & ! [X30 : term] : ? [X31 : subst > term > term] : ! [X32 : subst,X33 : term] : ((X31 @ X32 @ X33) = (sub @ X30 @ (push @ X33 @ X32))) & ($true != sP76))) & (termmset_gthm = $true) & ((termmset_lthm = $true) | (! [X34 : term] : ((sub @ X34 @ id) = X34) & ? [X35 : term] : ((sub @ X35 @ id) != X35))) & (? [X36 : term] : ((sub @ X36 @ id) != X36) | ! [X37 : term] : ((sub @ X37 @ id) = X37) | (termmset_lthm != $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X38 : term] : ? [X39 : d_term] : ((d2term @ X39) = X38) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X40 : term] : ! [X41 : subst > term > term] : ? [X42 : term,X43 : subst] : ((sub @ X40 @ (push @ X42 @ X43)) != (X41 @ X43 @ X42))) & (! [X44 : term] : ? [X45 : subst > term > term] : ! [X46 : term,X47 : subst] : ((sub @ X44 @ (push @ X46 @ X47)) = (X45 @ X47 @ X46)) | (hoasinduction_lem3v2_f_lthm != $true)) & ((termmset = $true) | ? [X48 : term] : ((sub @ X48 @ id) != X48)) & (! [X49 : term] : ((sub @ X49 @ id) = X49) | (termmset != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasinduction_lem3v2_f = $true) | ? [X50 : term] : ! [X51 : subst > term > term] : ? [X52 : term,X53 : subst] : ((X51 @ X53 @ X52) != (sub @ X50 @ (push @ X52 @ X53)))) & (! [X54 : term] : ? [X55 : subst > term > term] : ! [X56 : term,X57 : subst] : ((X55 @ X57 @ X56) = (sub @ X54 @ (push @ X56 @ X57))) | (hoasinduction_lem3v2_f != $true)) & ((induction2_lthm = $true) | (($true != sP74) & ! [X58 : term] : ((sub @ X58 @ id) = X58) & (sP73 != $true))) & (($true = sP74) | ? [X59 : term] : ((sub @ X59 @ id) != X59) | (sP73 = $true) | (induction2_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X60 : subst > term > subst > $o] : ! [X61 : term > $o] : ? [X62 : term] : ((X61 @ X62) != (X60 @ id @ X62 @ id))) & (! [X63 : subst > term > subst > $o] : ? [X64 : term > $o] : ! [X65 : term] : ((X63 @ id @ X65 @ id) = (X64 @ X65)) | (hoasinduction_lem0_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((sP65 = $true) | ($true = sP67) | ($true = sP68) | ($true = sP66) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | ((sP65 != $true) & ($true != sP67) & ($true != sP68) & ($true != sP66))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (($true = sP52) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP52)) & (hoasinduction_lem3_gthm = $true) & ((pushprop_lem1v2_lthm = $true) | (? [X66 : term > $o,X67 : term > $o,X68 : term,X69 : subst] : (($true = (X66 @ X68)) & ($true != (X67 @ one)) & ! [X70 : term] : ((X66 @ (sub @ X70 @ (push @ X68 @ X69))) = (X67 @ X70))) & ! [X71 : term,X72 : subst] : ((sub @ one @ (push @ X71 @ X72)) = X71))) & (! [X73 : term > $o,X74 : term > $o,X75 : term,X76 : subst] : (($true != (X73 @ X75)) | ($true = (X74 @ one)) | ? [X77 : term] : ((X74 @ X77) != (X73 @ (sub @ X77 @ (push @ X75 @ X76))))) | ? [X78 : term,X79 : subst] : ((sub @ one @ (push @ X78 @ X79)) != X78) | (pushprop_lem1v2_lthm != $true)) & ((hoasinduction_lem3 = $true) | (sP50 != $true)) & ((sP50 = $true) | (hoasinduction_lem3 != $true)) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X80 : subst > term > subst > $o,X81 : term] : (($true = (X80 @ id @ X81 @ id)) | ($true = (sP46 @ X80)) | ($true = (sP45 @ X80))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X82 : subst > term > subst > $o,X83 : term] : (($true != (X82 @ id @ X83 @ id)) & ($true != (sP46 @ X82)) & ($true != (sP45 @ X82)))) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (($true = sP44) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP44)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X84 : d_term] : (d_one = X84) & (pushprop_lem3v2 = $true) & (($true = sP41) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP41)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP40)) & (($true = sP40) | (hoasinduction_lem2 != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP37) | (induction != $true)) & ((induction = $true) | ($true != sP37)) & (apnotvar = $true) & (! [X85 : term] : ? [X86 : subst > term > term] : ((X86 @ sh @ one) = (sub @ X85 @ (push @ one @ sh))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X87 : term] : ! [X88 : subst > term > term] : ((X88 @ sh @ one) != (sub @ X87 @ (push @ one @ sh)))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & (! [X89 : subst > term > term,X90 : subst > term > term,X91 : term,X92 : subst] : (((lam @ (X89 @ sh @ one)) != (lam @ (X90 @ sh @ one))) | ? [X93 : subst,X94 : term,X95 : subst] : ((sub @ (X90 @ X95 @ X94) @ X93) != (X90 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93))) | ((X90 @ X92 @ X91) = (X89 @ X92 @ X91)) | ? [X96 : subst,X97 : term,X98 : subst] : ((sub @ (X89 @ X96 @ X97) @ X98) != (X89 @ (comp @ X96 @ X98) @ (sub @ X97 @ X98)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X99 : subst > term > term,X100 : subst > term > term,X101 : term,X102 : subst] : (((lam @ (X100 @ sh @ one)) = (lam @ (X99 @ sh @ one))) & ! [X103 : subst,X104 : term,X105 : subst] : ((X100 @ (comp @ X105 @ X103) @ (sub @ X104 @ X103)) = (sub @ (X100 @ X105 @ X104) @ X103)) & ((X100 @ X102 @ X101) != (X99 @ X102 @ X101)) & ! [X106 : subst,X107 : term,X108 : subst] : ((sub @ (X99 @ X106 @ X107) @ X108) = (X99 @ (comp @ X106 @ X108) @ (sub @ X107 @ X108))))) & (! [X109 : term,X110 : subst > term > term,X111 : term] : (((lam @ (X110 @ sh @ one)) != (ap @ (sub @ X111 @ id) @ X109)) | ? [X112 : term,X113 : subst,X114 : subst] : ((X110 @ (comp @ X113 @ X114) @ (sub @ X112 @ X114)) != (sub @ (X110 @ X113 @ X112) @ X114))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X115 : term,X116 : subst > term > term,X117 : term] : (((ap @ (sub @ X117 @ id) @ X115) = (lam @ (X116 @ sh @ one))) & ! [X118 : term,X119 : subst,X120 : subst] : ((X116 @ (comp @ X119 @ X120) @ (sub @ X118 @ X120)) = (sub @ (X116 @ X119 @ X118) @ X120)))) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((apinj2 = $true) | ? [X121 : term,X122 : term,X123 : term,X124 : term] : (((ap @ X124 @ X122) = (ap @ X123 @ X121)) & (X121 != X122))) & (! [X125 : term,X126 : term,X127 : term,X128 : term] : (((ap @ X127 @ X125) != (ap @ X128 @ X126)) | (X125 = X126)) | (apinj2 != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ? [X129 : term,X130 : term > $o,X131 : subst] : ! [X132 : term > $o] : ? [X133 : term] : ((X132 @ X133) != (X130 @ (sub @ X133 @ (push @ X129 @ X131))))) & (! [X134 : term,X135 : term > $o,X136 : subst] : ? [X137 : term > $o] : ! [X138 : term] : ((X137 @ X138) = (X135 @ (sub @ X138 @ (push @ X134 @ X136)))) | (pushprop_lem0 != $true)) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & (! [X139 : subst] : ((push @ (sub @ one @ X139) @ (comp @ sh @ X139)) = X139) | (axscons != $true)) & ((axscons = $true) | ? [X140 : subst] : ((push @ (sub @ one @ X140) @ (comp @ sh @ X140)) != X140)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X141 : d_subst,X142 : d_subst] : (((d2subst @ X142) != (d2subst @ X141)) | (X141 = X142)) & (axabs = $true) & ! [X143 : d_subst] : (d_id = X143) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP34) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP34)) & ((! [X144 : subst] : ((comp @ X144 @ id) = X144) & ! [X145 : subst] : ((comp @ id @ X145) = X145)) | (substmonoid != $true)) & ((substmonoid = $true) | ? [X146 : subst] : ((comp @ X146 @ id) != X146) | ? [X147 : subst] : ((comp @ id @ X147) != X147)) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X148 : d_term,X149 : d_term] : (((d2term @ X149) != (d2term @ X148)) | (X148 = X149)) & (($true = sP32) | ($true = sP31) | ? [X150 : subst > term > subst > $o] : ! [X151 : term > $o] : ? [X152 : term] : ((X151 @ X152) != (X150 @ id @ X152 @ id)) | ($true = sP30) | ? [X153 : term] : ((sub @ X153 @ id) != X153) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP32) & ($true != sP31) & ! [X154 : subst > term > subst > $o] : ? [X155 : term > $o] : ! [X156 : term] : ((X155 @ X156) = (X154 @ id @ X156 @ id)) & ($true != sP30) & ! [X157 : term] : ((sub @ X157 @ id) = X157))) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & (! [X158 : subst,X159 : term] : ((sub @ one @ (push @ X159 @ X158)) = X159) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X160 : subst,X161 : term] : ((sub @ one @ (push @ X161 @ X160)) != X161)) & ((hoasinduction_lem3b = $true) | ? [X162 : term] : ! [X163 : subst > term > term] : ((X163 @ sh @ one) != (sub @ X162 @ (push @ one @ sh)))) & (! [X164 : term] : ? [X165 : subst > term > term] : ((sub @ X164 @ (push @ one @ sh)) = (X165 @ sh @ one)) | (hoasinduction_lem3b != $true)) & ((axidl = $true) | ? [X166 : subst] : ((comp @ id @ X166) != X166)) & (! [X167 : subst] : ((comp @ id @ X167) = X167) | (axidl != $true)) & ((pushprop_lem1 = $true) | ? [X168 : term > $o,X169 : term,X170 : subst,X171 : term > $o,X172 : term] : (($true = (X168 @ X172)) & ($true != (X171 @ (sub @ X172 @ (push @ X169 @ X170)))))) & (! [X173 : term > $o,X174 : term,X175 : subst,X176 : term > $o,X177 : term] : (($true != (X173 @ X177)) | ($true = (X176 @ (sub @ X177 @ (push @ X174 @ X175))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1_lthm = $true) | (! [X178 : subst,X179 : term] : ((sub @ one @ (push @ X179 @ X178)) = X179) & ? [X180 : subst,X181 : term,X182 : term > $o,X183 : term,X184 : term > $o] : (($true = (X184 @ X183)) & ($true != (X182 @ (sub @ X183 @ (push @ X181 @ X180))))) & ! [X185 : subst,X186 : term] : ((comp @ sh @ (push @ X186 @ X185)) = X185))) & (? [X187 : subst,X188 : term] : ((sub @ one @ (push @ X188 @ X187)) != X188) | ! [X189 : subst,X190 : term,X191 : term > $o,X192 : term,X193 : term > $o] : (($true != (X193 @ X192)) | ($true = (X191 @ (sub @ X192 @ (push @ X190 @ X189))))) | ? [X194 : subst,X195 : term] : ((comp @ sh @ (push @ X195 @ X194)) != X194) | (pushprop_lem1_lthm != $true)) & (! [X196 : term,X197 : term,X198 : term,X199 : term] : ((X196 = X199) | ((ap @ X199 @ X198) != (ap @ X196 @ X197))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X200 : term,X201 : term,X202 : term,X203 : term] : ((X200 != X203) & ((ap @ X203 @ X202) = (ap @ X200 @ X201)))) & (hoasinduction_lem3b_gthm = $true) & ((pushprop_lem0_lthm = $true) | ? [X204 : term > $o,X205 : term,X206 : subst] : ! [X207 : term > $o] : ? [X208 : term] : ((X207 @ X208) != (X204 @ (sub @ X208 @ (push @ X205 @ X206))))) & (! [X209 : term > $o,X210 : term,X211 : subst] : ? [X212 : term > $o] : ! [X213 : term] : ((X212 @ X213) = (X209 @ (sub @ X213 @ (push @ X210 @ X211)))) | (pushprop_lem0_lthm != $true)) & (hoaslamnotvar_gthm = $true) & ((axvarid = $true) | ? [X214 : term] : ((sub @ X214 @ id) != X214)) & (! [X215 : term] : ((sub @ X215 @ id) = X215) | (axvarid != $true)) & (axmap = $true) & (($true = sP22) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP22)) & ((hoasinduction_lem3v2a = $true) | ($true != sP17)) & (($true = sP17) | (hoasinduction_lem3v2a != $true)) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & (! [X216 : subst,X217 : term] : ((comp @ sh @ (push @ X217 @ X216)) = X216) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X218 : subst,X219 : term] : ((comp @ sh @ (push @ X219 @ X218)) != X218)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP15) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP15)) & (axvarshift = $true) & ((hoasapinj1 = $true) | ? [X220 : term,X221 : term,X222 : term,X223 : term] : ((X220 != X223) & ((ap @ (sub @ X220 @ id) @ X221) = (ap @ (sub @ X223 @ id) @ X222)))) & (! [X224 : term,X225 : term,X226 : term,X227 : term] : ((X224 = X227) | ((ap @ (sub @ X227 @ id) @ X226) != (ap @ (sub @ X224 @ id) @ X225))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X228 : subst > term > subst > $o] : ? [X229 : term > $o] : ! [X230 : term] : ((X229 @ X230) = (X228 @ id @ X230 @ id)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X231 : subst > term > subst > $o] : ! [X232 : term > $o] : ? [X233 : term] : ((X232 @ X233) != (X231 @ id @ X233 @ id))) & ((pushprop_lem1v2 = $true) | ? [X234 : term > $o,X235 : term > $o,X236 : term,X237 : subst] : (($true != (X234 @ one)) & ! [X238 : term] : ((X235 @ (sub @ X238 @ (push @ X236 @ X237))) = (X234 @ X238)) & ($true = (X235 @ X236)))) & (! [X239 : term > $o,X240 : term > $o,X241 : term,X242 : subst] : (($true = (X239 @ one)) | ? [X243 : term] : ((X239 @ X243) != (X240 @ (sub @ X243 @ (push @ X241 @ X242)))) | ((X240 @ X241) != $true)) | (pushprop_lem1v2 != $true)) & (! [X244 : subst] : ((comp @ X244 @ id) = X244) | (axidr != $true)) & ((axidr = $true) | ? [X245 : subst] : ((comp @ X245 @ id) != X245)) & (pushprop_gthm = $true) & ((hoaslaminj_lthm = $true) | ($true != sP13)) & (($true = sP13) | (hoaslaminj_lthm != $true)) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & ((hoasapinj2 = $true) | ? [X246 : term,X247 : term,X248 : term,X249 : term] : (((ap @ (sub @ X246 @ id) @ X248) = (ap @ (sub @ X247 @ id) @ X249)) & (X248 != X249))) & (! [X250 : term,X251 : term,X252 : term,X253 : term] : (((ap @ (sub @ X251 @ id) @ X253) != (ap @ (sub @ X250 @ id) @ X252)) | (X252 = X253)) | (hoasapinj2 != $true)) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X254 : term] : ((sub @ X254 @ id) = X254) & ! [X255 : subst > term > subst > $o] : ? [X256 : term > $o] : ! [X257 : term] : ((X255 @ id @ X257 @ id) = (X256 @ X257)) & ($true != sP9) & ($true != sP11) & ($true != sP10))) & (? [X258 : term] : ((sub @ X258 @ id) != X258) | ? [X259 : subst > term > subst > $o] : ! [X260 : term > $o] : ? [X261 : term] : ((X259 @ id @ X261 @ id) != (X260 @ X261)) | ($true = sP9) | ($true = sP11) | ($true = sP10) | (hoasinduction_no_psi_cond_lthm != $true)) & (($true = sP2) | ($true = sP3) | ? [X262 : term] : ((sub @ X262 @ id) != X262) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP2) & ($true != sP3) & ! [X263 : term] : ((sub @ X263 @ id) = X263))) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(rectify,[status(thm)],[f667])).
% 2.47/1.94  thf(f667,plain,(
% 2.47/1.94    (($true = sP108) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP108)) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & (? [X243 : term] : ((sub @ X243 @ id) != X243) | ($true = sP104) | ($true = sP103) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X243 : term] : ((sub @ X243 @ id) = X243) & ($true != sP104) & ($true != sP103))) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) | (laminj != $true)) & ((laminj = $true) | ? [X15 : term,X16 : term] : ((X15 != X16) & ((lam @ X15) = (lam @ X16)))) & ((induction2 = $true) | ($true != sP98)) & (($true = sP98) | (induction2 != $true)) & ((hoasinduction_lem3a = $true) | (sP95 != $true)) & ((sP95 = $true) | (hoasinduction_lem3a != $true)) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & (axclos = $true) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & ((hoasapinj1_lthm = $true) | ($true != sP90)) & (($true = sP90) | (hoasapinj1_lthm != $true)) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) | (shinj != $true)) & ((shinj = $true) | ? [X17 : term,X18 : term] : ((X17 != X18) & ((sub @ X17 @ sh) = (sub @ X18 @ sh)))) & (? [X19 : term] : ((sub @ X19 @ id) != X19) | ($true = sP88) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X19 : term] : ((sub @ X19 @ id) = X19) & ($true != sP88))) & ((induction2lem_lthm = $true) | (($true != sP84) & ! [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) = X324) & ! [X326 : subst] : ((comp @ X326 @ id) = X326) & ! [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) = X323) & ($true != sP83))) & (($true = sP84) | ? [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) != X324) | ? [X326 : subst] : ((comp @ X326 @ id) != X326) | ? [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) != X323) | ($true = sP83) | (induction2lem_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (($true = sP78) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP78)) & (? [X445 : term] : ((sub @ X445 @ id) != X445) | ? [X441 : term] : ! [X442 : subst > term > term] : ? [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) != (sub @ X441 @ (push @ X444 @ X443))) | ($true = sP76) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X445 : term] : ((sub @ X445 @ id) = X445) & ! [X441 : term] : ? [X442 : subst > term > term] : ! [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) = (sub @ X441 @ (push @ X444 @ X443))) & ($true != sP76))) & (termmset_gthm = $true) & ((termmset_lthm = $true) | (! [X54 : term] : ((sub @ X54 @ id) = X54) & ? [X55 : term] : ((sub @ X55 @ id) != X55))) & (? [X54 : term] : ((sub @ X54 @ id) != X54) | ! [X55 : term] : ((sub @ X55 @ id) = X55) | (termmset_lthm != $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X223 : term] : ! [X224 : subst > term > term] : ? [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) != (sub @ X223 @ (push @ X225 @ X226)))) & (! [X223 : term] : ? [X224 : subst > term > term] : ! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((termmset = $true) | ? [X77 : term] : ((sub @ X77 @ id) != X77)) & (! [X77 : term] : ((sub @ X77 @ id) = X77) | (termmset != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasinduction_lem3v2_f = $true) | ? [X414 : term] : ! [X415 : subst > term > term] : ? [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) != (sub @ X414 @ (push @ X416 @ X417)))) & (! [X414 : term] : ? [X415 : subst > term > term] : ! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417))) | (hoasinduction_lem3v2_f != $true)) & ((induction2_lthm = $true) | (($true != sP74) & ! [X456 : term] : ((sub @ X456 @ id) = X456) & (sP73 != $true))) & (($true = sP74) | ? [X456 : term] : ((sub @ X456 @ id) != X456) | (sP73 = $true) | (induction2_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X151 : subst > term > subst > $o] : ! [X152 : term > $o] : ? [X153 : term] : ((X152 @ X153) != (X151 @ id @ X153 @ id))) & (! [X151 : subst > term > subst > $o] : ? [X152 : term > $o] : ! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id)) | (hoasinduction_lem0_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((sP65 = $true) | ($true = sP67) | ($true = sP68) | ($true = sP66) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | ((sP65 != $true) & ($true != sP67) & ($true != sP68) & ($true != sP66))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (($true = sP52) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP52)) & (hoasinduction_lem3_gthm = $true) & ((pushprop_lem1v2_lthm = $true) | (? [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true = (X420 @ X422)) & ($true != (X421 @ one)) & ! [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) = (X421 @ X424))) & ! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418))) & (! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true != (X420 @ X422)) | ($true = (X421 @ one)) | ? [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) != (X421 @ X424))) | ? [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) != X418) | (pushprop_lem1v2_lthm != $true)) & ((hoasinduction_lem3 = $true) | (sP50 != $true)) & ((sP50 = $true) | (hoasinduction_lem3 != $true)) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X282 : subst > term > subst > $o,X283 : term] : (($true = (X282 @ id @ X283 @ id)) | ($true = (sP46 @ X282)) | ($true = (sP45 @ X282))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X282 : subst > term > subst > $o,X283 : term] : (($true != (X282 @ id @ X283 @ id)) & ($true != (sP46 @ X282)) & ($true != (sP45 @ X282)))) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (($true = sP44) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP44)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X6 : d_term] : (d_one = X6) & (pushprop_lem3v2 = $true) & (($true = sP41) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP41)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP40)) & (($true = sP40) | (hoasinduction_lem2 != $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP37) | (induction != $true)) & ((induction = $true) | ($true != sP37)) & (apnotvar = $true) & (! [X52 : term] : ? [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) = (X53 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X52 : term] : ! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & (! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ? [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) != (sub @ (X113 @ X121 @ X120) @ X119)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ? [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) != (sub @ (X112 @ X116 @ X117) @ X118))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) = (lam @ (X112 @ sh @ one))) & ! [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) = (sub @ (X113 @ X121 @ X120) @ X119)) & ((X113 @ X115 @ X114) != (X112 @ X115 @ X114)) & ! [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) = (sub @ (X112 @ X116 @ X117) @ X118)))) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)) | ? [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) != (sub @ (X1 @ X4 @ X3) @ X5))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) = (ap @ (sub @ X2 @ id) @ X0)) & ! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5)))) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((apinj2 = $true) | ? [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) = (ap @ X212 @ X210)) & (X210 != X211))) & (! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211)) | (apinj2 != $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ? [X122 : term,X123 : term > $o,X124 : subst] : ! [X125 : term > $o] : ? [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) != (X125 @ X126))) & (! [X122 : term,X123 : term > $o,X124 : subst] : ? [X125 : term > $o] : ! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126)) | (pushprop_lem0 != $true)) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) | (axscons != $true)) & ((axscons = $true) | ? [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) != X96)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) != (d2subst @ X75)) | (X75 = X76)) & (axabs = $true) & ! [X321 : d_subst] : (d_id = X321) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP34) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP34)) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) | (substmonoid != $true)) & ((substmonoid = $true) | ? [X56 : subst] : ((comp @ X56 @ id) != X56) | ? [X57 : subst] : ((comp @ id @ X57) != X57)) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) != (d2term @ X280)) | (X280 = X281)) & (($true = sP32) | ($true = sP31) | ? [X476 : subst > term > subst > $o] : ! [X477 : term > $o] : ? [X478 : term] : ((X476 @ id @ X478 @ id) != (X477 @ X478)) | ($true = sP30) | ? [X486 : term] : ((sub @ X486 @ id) != X486) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP32) & ($true != sP31) & ! [X476 : subst > term > subst > $o] : ? [X477 : term > $o] : ! [X478 : term] : ((X476 @ id @ X478 @ id) = (X477 @ X478)) & ($true != sP30) & ! [X486 : term] : ((sub @ X486 @ id) = X486))) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) != X44)) & ((hoasinduction_lem3b = $true) | ? [X438 : term] : ! [X439 : subst > term > term] : ((X439 @ sh @ one) != (sub @ X438 @ (push @ one @ sh)))) & (! [X438 : term] : ? [X439 : subst > term > term] : ((X439 @ sh @ one) = (sub @ X438 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((axidl = $true) | ? [X440 : subst] : ((comp @ id @ X440) != X440)) & (! [X440 : subst] : ((comp @ id @ X440) = X440) | (axidl != $true)) & ((pushprop_lem1 = $true) | ? [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true = (X97 @ X101)) & ($true != (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & (! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1_lthm = $true) | (! [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) = X128) & ? [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) = $true) & ($true != (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) & ! [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) = X129))) & (? [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) != X128) | ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) | ? [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) != X129) | (pushprop_lem1_lthm != $true)) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 != X279) & ((ap @ X276 @ X277) = (ap @ X279 @ X278)))) & (hoasinduction_lem3b_gthm = $true) & ((pushprop_lem0_lthm = $true) | ? [X38 : term > $o,X39 : term,X40 : subst] : ! [X41 : term > $o] : ? [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) != (X41 @ X42))) & (! [X38 : term > $o,X39 : term,X40 : subst] : ? [X41 : term > $o] : ! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42)) | (pushprop_lem0_lthm != $true)) & (hoaslamnotvar_gthm = $true) & ((axvarid = $true) | ? [X214 : term] : ((sub @ X214 @ id) != X214)) & (! [X214 : term] : ((sub @ X214 @ id) = X214) | (axvarid != $true)) & (axmap = $true) & (($true = sP22) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP22)) & ((hoasinduction_lem3v2a = $true) | ($true != sP17)) & (($true = sP17) | (hoasinduction_lem3v2a != $true)) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) != X314)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP15) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP15)) & (axvarshift = $true) & ((hoasapinj1 = $true) | ? [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 != X475) & ((ap @ (sub @ X472 @ id) @ X473) = (ap @ (sub @ X475 @ id) @ X474)))) & (! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474))) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X305 : subst > term > subst > $o] : ? [X306 : term > $o] : ! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X305 : subst > term > subst > $o] : ! [X306 : term > $o] : ? [X307 : term] : ((X305 @ id @ X307 @ id) != (X306 @ X307))) & ((pushprop_lem1v2 = $true) | ? [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true != (X316 @ one)) & ! [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) = (X316 @ X320)) & ($true = (X317 @ X318)))) & (! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true = (X316 @ one)) | ? [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) != (X316 @ X320)) | ($true != (X317 @ X318))) | (pushprop_lem1v2 != $true)) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) | (axidr != $true)) & ((axidr = $true) | ? [X413 : subst] : ((comp @ X413 @ id) != X413)) & (pushprop_gthm = $true) & ((hoaslaminj_lthm = $true) | ($true != sP13)) & (($true = sP13) | (hoaslaminj_lthm != $true)) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & ((hoasapinj2 = $true) | ? [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) = (ap @ (sub @ X207 @ id) @ X209)) & (X208 != X209))) & (! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209)) | (hoasapinj2 != $true)) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X184 : term] : ((sub @ X184 @ id) = X184) & ! [X174 : subst > term > subst > $o] : ? [X175 : term > $o] : ! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) & ($true != sP9) & ($true != sP11) & ($true != sP10))) & (? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)) | ($true = sP9) | ($true = sP11) | ($true = sP10) | (hoasinduction_no_psi_cond_lthm != $true)) & (($true = sP2) | ($true = sP3) | ? [X58 : term] : ((sub @ X58 @ id) != X58) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP2) & ($true != sP3) & ! [X58 : term] : ((sub @ X58 @ id) = X58))) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(flattening,[status(thm)],[f666])).
% 2.47/1.94  thf(f666,plain,(
% 2.47/1.94    ((($true = sP108) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP108))) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & (((? [X243 : term] : ((sub @ X243 @ id) != X243) | ($true = sP104) | ($true = sP103)) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X243 : term] : ((sub @ X243 @ id) = X243) & ($true != sP104) & ($true != sP103)))) & ((! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) | (laminj != $true)) & ((laminj = $true) | ? [X15 : term,X16 : term] : ((X15 != X16) & ((lam @ X15) = (lam @ X16))))) & (((induction2 = $true) | ($true != sP98)) & (($true = sP98) | (induction2 != $true))) & (((hoasinduction_lem3a = $true) | (sP95 != $true)) & ((sP95 = $true) | (hoasinduction_lem3a != $true))) & ((($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93))) & (axclos = $true) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & (((hoasapinj1_lthm = $true) | ($true != sP90)) & (($true = sP90) | (hoasapinj1_lthm != $true))) & ((! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) | (shinj != $true)) & ((shinj = $true) | ? [X17 : term,X18 : term] : ((X17 != X18) & ((sub @ X17 @ sh) = (sub @ X18 @ sh))))) & (((? [X19 : term] : ((sub @ X19 @ id) != X19) | ($true = sP88)) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (! [X19 : term] : ((sub @ X19 @ id) = X19) & ($true != sP88)))) & (((induction2lem_lthm = $true) | (($true != sP84) & ! [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) = X324) & ! [X326 : subst] : ((comp @ X326 @ id) = X326) & ! [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) = X323) & ($true != sP83))) & ((($true = sP84) | ? [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) != X324) | ? [X326 : subst] : ((comp @ X326 @ id) != X326) | ? [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) != X323) | ($true = sP83)) | (induction2lem_lthm != $true))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((($true = sP78) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP78))) & (((? [X445 : term] : ((sub @ X445 @ id) != X445) | ? [X441 : term] : ! [X442 : subst > term > term] : ? [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) != (sub @ X441 @ (push @ X444 @ X443))) | ($true = sP76)) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (! [X445 : term] : ((sub @ X445 @ id) = X445) & ! [X441 : term] : ? [X442 : subst > term > term] : ! [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) = (sub @ X441 @ (push @ X444 @ X443))) & ($true != sP76)))) & (termmset_gthm = $true) & (((termmset_lthm = $true) | (! [X54 : term] : ((sub @ X54 @ id) = X54) & ? [X55 : term] : ((sub @ X55 @ id) != X55))) & ((? [X54 : term] : ((sub @ X54 @ id) != X54) | ! [X55 : term] : ((sub @ X55 @ id) = X55)) | (termmset_lthm != $true))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & (((hoasinduction_lem3v2_f_lthm = $true) | ? [X223 : term] : ! [X224 : subst > term > term] : ? [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) != (sub @ X223 @ (push @ X225 @ X226)))) & (! [X223 : term] : ? [X224 : subst > term > term] : ! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226))) | (hoasinduction_lem3v2_f_lthm != $true))) & (((termmset = $true) | ? [X77 : term] : ((sub @ X77 @ id) != X77)) & (! [X77 : term] : ((sub @ X77 @ id) = X77) | (termmset != $true))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (((hoasinduction_lem3v2_f = $true) | ? [X414 : term] : ! [X415 : subst > term > term] : ? [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) != (sub @ X414 @ (push @ X416 @ X417)))) & (! [X414 : term] : ? [X415 : subst > term > term] : ! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417))) | (hoasinduction_lem3v2_f != $true))) & (((induction2_lthm = $true) | (($true != sP74) & ! [X456 : term] : ((sub @ X456 @ id) = X456) & (sP73 != $true))) & ((($true = sP74) | ? [X456 : term] : ((sub @ X456 @ id) != X456) | (sP73 = $true)) | (induction2_lthm != $true))) & (((hoasinduction_lem0_lthm = $true) | ? [X151 : subst > term > subst > $o] : ! [X152 : term > $o] : ? [X153 : term] : ((X152 @ X153) != (X151 @ id @ X153 @ id))) & (! [X151 : subst > term > subst > $o] : ? [X152 : term > $o] : ! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id)) | (hoasinduction_lem0_lthm != $true))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((((sP65 = $true) | ($true = sP67) | ($true = sP68) | ($true = sP66)) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | ((sP65 != $true) & ($true != sP67) & ($true != sP68) & ($true != sP66)))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((($true = sP52) | (hoasapinj2_lthm != $true)) & ((hoasapinj2_lthm = $true) | ($true != sP52))) & (hoasinduction_lem3_gthm = $true) & (((pushprop_lem1v2_lthm = $true) | (? [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true = (X420 @ X422)) & ($true != (X421 @ one)) & ! [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) = (X421 @ X424))) & ! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418))) & ((! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true != (X420 @ X422)) | ($true = (X421 @ one)) | ? [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) != (X421 @ X424))) | ? [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) != X418)) | (pushprop_lem1v2_lthm != $true))) & (((hoasinduction_lem3 = $true) | (sP50 != $true)) & ((sP50 = $true) | (hoasinduction_lem3 != $true))) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & ((! [X282 : subst > term > subst > $o,X283 : term] : (($true = (X282 @ id @ X283 @ id)) | ($true = (sP46 @ X282)) | ($true = (sP45 @ X282))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X282 : subst > term > subst > $o,X283 : term] : (($true != (X282 @ id @ X283 @ id)) & ($true != (sP46 @ X282)) & ($true != (sP45 @ X282))))) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & ((($true = sP44) | (induction2lem != $true)) & ((induction2lem = $true) | ($true != sP44))) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X6 : d_term] : (d_one = X6) & (pushprop_lem3v2 = $true) & ((($true = sP41) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP41))) & (axassoc = $true) & (((hoasinduction_lem2 = $true) | ($true != sP40)) & (($true = sP40) | (hoasinduction_lem2 != $true))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((($true = sP37) | (induction != $true)) & ((induction = $true) | ($true != sP37))) & (apnotvar = $true) & ((! [X52 : term] : ? [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) = (X53 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X52 : term] : ! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one)))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & ((! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ? [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) != (sub @ (X113 @ X121 @ X120) @ X119)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ? [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) != (sub @ (X112 @ X116 @ X117) @ X118))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) = (lam @ (X112 @ sh @ one))) & ! [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) = (sub @ (X113 @ X121 @ X120) @ X119)) & ((X113 @ X115 @ X114) != (X112 @ X115 @ X114)) & ! [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) = (sub @ (X112 @ X116 @ X117) @ X118))))) & ((! [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)) | ? [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) != (sub @ (X1 @ X4 @ X3) @ X5))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) = (ap @ (sub @ X2 @ id) @ X0)) & ! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5))))) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & (((apinj2 = $true) | ? [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) = (ap @ X212 @ X210)) & (X210 != X211))) & (! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211)) | (apinj2 != $true))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (((pushprop_lem0 = $true) | ? [X122 : term,X123 : term > $o,X124 : subst] : ! [X125 : term > $o] : ? [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) != (X125 @ X126))) & (! [X122 : term,X123 : term > $o,X124 : subst] : ? [X125 : term > $o] : ! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126)) | (pushprop_lem0 != $true))) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & ((! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) | (axscons != $true)) & ((axscons = $true) | ? [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) != X96))) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) != (d2subst @ X75)) | (X75 = X76)) & (axabs = $true) & ! [X321 : d_subst] : (d_id = X321) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ((($true = sP34) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ($true != sP34))) & (((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) | (substmonoid != $true)) & ((substmonoid = $true) | (? [X56 : subst] : ((comp @ X56 @ id) != X56) | ? [X57 : subst] : ((comp @ id @ X57) != X57)))) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) != (d2term @ X280)) | (X280 = X281)) & (((($true = sP32) | ($true = sP31) | ? [X476 : subst > term > subst > $o] : ! [X477 : term > $o] : ? [X478 : term] : ((X476 @ id @ X478 @ id) != (X477 @ X478)) | ($true = sP30) | ? [X486 : term] : ((sub @ X486 @ id) != X486)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (($true != sP32) & ($true != sP31) & ! [X476 : subst > term > subst > $o] : ? [X477 : term > $o] : ! [X478 : term] : ((X476 @ id @ X478 @ id) = (X477 @ X478)) & ($true != sP30) & ! [X486 : term] : ((sub @ X486 @ id) = X486)))) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & ((! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) != X44))) & (((hoasinduction_lem3b = $true) | ? [X438 : term] : ! [X439 : subst > term > term] : ((X439 @ sh @ one) != (sub @ X438 @ (push @ one @ sh)))) & (! [X438 : term] : ? [X439 : subst > term > term] : ((X439 @ sh @ one) = (sub @ X438 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true))) & (((axidl = $true) | ? [X440 : subst] : ((comp @ id @ X440) != X440)) & (! [X440 : subst] : ((comp @ id @ X440) = X440) | (axidl != $true))) & (((pushprop_lem1 = $true) | ? [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true = (X97 @ X101)) & ($true != (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & (! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99))))) | (pushprop_lem1 != $true))) & (((pushprop_lem1_lthm = $true) | (! [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) = X128) & ? [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) = $true) & ($true != (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) & ! [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) = X129))) & ((? [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) != X128) | ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) | ? [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) != X129)) | (pushprop_lem1_lthm != $true))) & ((! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 != X279) & ((ap @ X276 @ X277) = (ap @ X279 @ X278))))) & (hoasinduction_lem3b_gthm = $true) & (((pushprop_lem0_lthm = $true) | ? [X38 : term > $o,X39 : term,X40 : subst] : ! [X41 : term > $o] : ? [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) != (X41 @ X42))) & (! [X38 : term > $o,X39 : term,X40 : subst] : ? [X41 : term > $o] : ! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42)) | (pushprop_lem0_lthm != $true))) & (hoaslamnotvar_gthm = $true) & (((axvarid = $true) | ? [X214 : term] : ((sub @ X214 @ id) != X214)) & (! [X214 : term] : ((sub @ X214 @ id) = X214) | (axvarid != $true))) & (axmap = $true) & ((($true = sP22) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP22))) & (((hoasinduction_lem3v2a = $true) | ($true != sP17)) & (($true = sP17) | (hoasinduction_lem3v2a != $true))) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & ((! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) != X314))) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ((($true = sP15) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ($true != sP15))) & (axvarshift = $true) & (((hoasapinj1 = $true) | ? [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 != X475) & ((ap @ (sub @ X472 @ id) @ X473) = (ap @ (sub @ X475 @ id) @ X474)))) & (! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474))) | (hoasapinj1 != $true))) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((! [X305 : subst > term > subst > $o] : ? [X306 : term > $o] : ! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307)) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X305 : subst > term > subst > $o] : ! [X306 : term > $o] : ? [X307 : term] : ((X305 @ id @ X307 @ id) != (X306 @ X307)))) & (((pushprop_lem1v2 = $true) | ? [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true != (X316 @ one)) & ! [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) = (X316 @ X320)) & ($true = (X317 @ X318)))) & (! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true = (X316 @ one)) | ? [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) != (X316 @ X320)) | ($true != (X317 @ X318))) | (pushprop_lem1v2 != $true))) & ((! [X413 : subst] : ((comp @ X413 @ id) = X413) | (axidr != $true)) & ((axidr = $true) | ? [X413 : subst] : ((comp @ X413 @ id) != X413))) & (pushprop_gthm = $true) & (((hoaslaminj_lthm = $true) | ($true != sP13)) & (($true = sP13) | (hoaslaminj_lthm != $true))) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & (((hoasapinj2 = $true) | ? [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) = (ap @ (sub @ X207 @ id) @ X209)) & (X208 != X209))) & (! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209)) | (hoasapinj2 != $true))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & (((hoasinduction_no_psi_cond_lthm = $true) | (! [X184 : term] : ((sub @ X184 @ id) = X184) & ! [X174 : subst > term > subst > $o] : ? [X175 : term > $o] : ! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) & ($true != sP9) & ($true != sP11) & ($true != sP10))) & ((? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)) | ($true = sP9) | ($true = sP11) | ($true = sP10)) | (hoasinduction_no_psi_cond_lthm != $true))) & (((($true = sP2) | ($true = sP3) | ? [X58 : term] : ((sub @ X58 @ id) != X58)) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP2) & ($true != sP3) & ! [X58 : term] : ((sub @ X58 @ id) = X58)))) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(nnf_transformation,[status(thm)],[f124])).
% 2.47/1.94  thf(f124,plain,(
% 2.47/1.94    (($true = sP108) <=> (hoasinduction_lem3v2 = $true)) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & ((? [X243 : term] : ((sub @ X243 @ id) != X243) | ($true = sP104) | ($true = sP103)) <=> (hoasinduction_lem3_lthm = $true)) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & ((induction2 = $true) <=> ($true = sP98)) & ((hoasinduction_lem3a = $true) <=> (sP95 = $true)) & (($true = sP93) <=> (hoasinduction_lem2v2 = $true)) & (axclos = $true) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & ((hoasapinj1_lthm = $true) <=> ($true = sP90)) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & ((? [X19 : term] : ((sub @ X19 @ id) != X19) | ($true = sP88)) <=> (hoasinduction_lem3v2_lthm = $true)) & ((induction2lem_lthm = $true) <=> (($true = sP84) | ? [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) != X324) | ? [X326 : subst] : ((comp @ X326 @ id) != X326) | ? [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) != X323) | ($true = sP83))) & (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 = sP78) <=> (hoasinduction_lem3aa = $true)) & ((? [X445 : term] : ((sub @ X445 @ id) != X445) | ? [X441 : term] : ! [X442 : subst > term > term] : ? [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) != (sub @ X441 @ (push @ X444 @ X443))) | ($true = sP76)) <=> (hoasinduction_lem3v2a_lthm = $true)) & (termmset_gthm = $true) & ((termmset_lthm = $true) <=> (? [X54 : term] : ((sub @ X54 @ id) != X54) | ! [X55 : term] : ((sub @ X55 @ id) = X55))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X223 : term] : ? [X224 : subst > term > term] : ! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226)))) & ((termmset = $true) <=> ! [X77 : term] : ((sub @ X77 @ id) = X77)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X414 : term] : ? [X415 : subst > term > term] : ! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417)))) & ((induction2_lthm = $true) <=> (($true = sP74) | ? [X456 : term] : ((sub @ X456 @ id) != X456) | (sP73 = $true))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X151 : subst > term > subst > $o] : ? [X152 : term > $o] : ! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (((sP65 = $true) | ($true = sP67) | ($true = sP68) | ($true = sP66)) <=> (hoasinduction_lthm = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (($true = sP52) <=> (hoasapinj2_lthm = $true)) & (hoasinduction_lem3_gthm = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true != (X420 @ X422)) | ($true = (X421 @ one)) | ? [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) != (X421 @ X424))) | ? [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) != X418))) & ((hoasinduction_lem3 = $true) <=> (sP50 = $true)) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X282 : subst > term > subst > $o,X283 : term] : (($true = (X282 @ id @ X283 @ id)) | ($true = (sP46 @ X282)) | ($true = (sP45 @ X282))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (($true = sP44) <=> (induction2lem = $true)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X6 : d_term] : (d_one = X6) & (pushprop_lem3v2 = $true) & (($true = sP41) <=> (substmonoid_lthm = $true)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) <=> ($true = sP40)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (($true = sP37) <=> (induction = $true)) & (apnotvar = $true) & (! [X52 : term] : ? [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) = (X53 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & (! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ? [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) != (sub @ (X113 @ X121 @ X120) @ X119)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ? [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) != (sub @ (X112 @ X116 @ X117) @ X118))) <=> (hoaslaminj = $true)) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)) | ? [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) != (sub @ (X1 @ X4 @ X3) @ X5))) <=> (hoaslamnotap = $true)) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((apinj2 = $true) <=> ! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X122 : term,X123 : term > $o,X124 : subst] : ? [X125 : term > $o] : ! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126))) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) <=> (axscons = $true)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) != (d2subst @ X75)) | (X75 = X76)) & (axabs = $true) & ! [X321 : d_subst] : (d_id = X321) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (($true = sP34) <=> (hoasinduction_lem3aaa = $true)) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) <=> (substmonoid = $true)) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) != (d2term @ X280)) | (X280 = X281)) & ((($true = sP32) | ($true = sP31) | ? [X476 : subst > term > subst > $o] : ! [X477 : term > $o] : ? [X478 : term] : ((X476 @ id @ X478 @ id) != (X477 @ X478)) | ($true = sP30) | ? [X486 : term] : ((sub @ X486 @ id) != X486)) <=> (hoasinduction_lthm_3 = $true)) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & ((hoasinduction_lem3b = $true) <=> ! [X438 : term] : ? [X439 : subst > term > term] : ((X439 @ sh @ one) = (sub @ X438 @ (push @ one @ sh)))) & ((axidl = $true) <=> ! [X440 : subst] : ((comp @ id @ X440) = X440)) & ((pushprop_lem1 = $true) <=> ! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & ((pushprop_lem1_lthm = $true) <=> (? [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) != X128) | ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) | ? [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) != X129))) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) <=> (apinj1 = $true)) & (hoasinduction_lem3b_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ? [X41 : term > $o] : ! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & (hoaslamnotvar_gthm = $true) & ((axvarid = $true) <=> ! [X214 : term] : ((sub @ X214 @ id) = X214)) & (axmap = $true) & (($true = sP22) <=> (hoasinduction = $true)) & ((hoasinduction_lem3v2a = $true) <=> ($true = sP17)) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) <=> (axshiftcons = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (($true = sP15) <=> (hoasinduction_lem3aa_lthm = $true)) & (axvarshift = $true) & ((hoasapinj1 = $true) <=> ! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474)))) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X305 : subst > term > subst > $o] : ? [X306 : term > $o] : ! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307)) <=> (hoasinduction_lem0 = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true = (X316 @ one)) | ? [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) != (X316 @ X320)) | ($true != (X317 @ X318)))) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) <=> (axidr = $true)) & (pushprop_gthm = $true) & ((hoaslaminj_lthm = $true) <=> ($true = sP13)) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & ((hoasapinj2 = $true) <=> ! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)) | ($true = sP9) | ($true = sP11) | ($true = sP10))) & ((($true = sP2) | ($true = sP3) | ? [X58 : term] : ((sub @ X58 @ id) != X58)) <=> (hoasinduction_lem3a_lthm = $true)) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(definition_folding,[status(thm)],[f14,f123,f122,f121,f120,f119,f118,f117,f116,f115,f114,f113,f112,f111,f110,f109,f108,f107,f106,f105,f104,f103,f102,f101,f100,f99,f98,f97,f96,f95,f94,f93,f92,f91,f90,f89,f88,f87,f86,f85,f84,f83,f82,f81,f80,f79,f78,f77,f76,f75,f74,f73,f72,f71,f70,f69,f68,f67,f66,f65,f64,f63,f62,f61,f60,f59,f58,f57,f56,f55,f54,f53,f52,f51,f50,f49,f48,f47,f46,f45,f44,f43,f42,f41,f40,f39,f38,f37,f36,f35,f34,f33,f32,f31,f30,f29,f28,f27,f26,f25,f24,f23,f22,f21,f20,f19,f18,f17,f16,f15])).
% 2.47/1.94  thf(f15,plain,(
% 2.47/1.94    ! [X60 : subst > term > subst > $o] : (($true = (sP0 @ X60)) <=> ! [X61 : subst > term > term] : (($true = (X60 @ id @ (lam @ (X61 @ sh @ one)) @ id)) | ? [X63 : term,X64 : subst,X65 : subst] : ((sub @ (X61 @ X65 @ X63) @ X64) != (X61 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64))) | ? [X62 : term] : (($true != (X60 @ id @ (X61 @ id @ X62) @ id)) & ($true = (X60 @ id @ X62 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f16,plain,(
% 2.47/1.94    ! [X67 : subst > term > subst > $o] : (($true = (sP1 @ X67)) <=> ? [X70 : subst > term > term] : (! [X72 : subst,X73 : subst,X74 : term] : ((sub @ (X70 @ X73 @ X74) @ X72) = (X70 @ (comp @ X73 @ X72) @ (sub @ X74 @ X72))) & ($true != (X67 @ id @ (lam @ (X70 @ sh @ one)) @ id)) & ! [X71 : term] : (($true = (X67 @ id @ (X70 @ id @ X71) @ id)) | ($true != (X67 @ id @ X71 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f17,plain,(
% 2.47/1.94    ($true = sP2) <=> ! [X67 : subst > term > subst > $o,X68 : term] : (($true = (X67 @ id @ (lam @ X68) @ id)) | ($true = (sP1 @ X67)) | ? [X69 : term] : (($true != (X67 @ id @ (sub @ X68 @ (push @ X69 @ id)) @ id)) & ($true = (X67 @ id @ X69 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f18,plain,(
% 2.47/1.94    ($true = sP3) <=> ? [X59 : term,X60 : subst > term > subst > $o] : (($true = (sP0 @ X60)) & ! [X66 : term] : (($true != (X60 @ id @ X66 @ id)) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X66 @ id)) @ id))) & ($true != (X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f19,plain,(
% 2.47/1.94    ! [X178 : term > $o] : (($true = (sP4 @ X178)) <=> ! [X179 : term,X180 : term] : (($true != (X178 @ X179)) | ($true != (X178 @ X180)) | ($true = (X178 @ (ap @ X179 @ X180)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f20,plain,(
% 2.47/1.94    ! [X178 : term > $o] : (($true = (sP5 @ X178)) <=> ! [X182 : term] : (? [X183 : term] : (($true != (X178 @ (sub @ X182 @ (push @ X183 @ id)))) & ($true = (X178 @ X183))) | ($true = (X178 @ (lam @ X182)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f21,plain,(
% 2.47/1.94    ! [X185 : subst > term > subst > $o] : (($true = (sP6 @ X185)) <=> ! [X190 : subst > term > term] : (($true = (X185 @ id @ (lam @ (X190 @ sh @ one)) @ id)) | ? [X194 : term] : (($true != (X185 @ id @ (X190 @ id @ X194) @ id)) & ($true = (X185 @ id @ X194 @ id))) | ? [X191 : term,X192 : subst,X193 : subst] : ((X190 @ (comp @ X193 @ X192) @ (sub @ X191 @ X192)) != (sub @ (X190 @ X193 @ X191) @ X192))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f22,plain,(
% 2.47/1.94    ! [X196 : subst > term > subst > $o] : (((sP7 @ X196) = $true) <=> ? [X199 : subst > term > term] : (! [X201 : term,X202 : subst,X203 : subst] : ((X199 @ (comp @ X202 @ X203) @ (sub @ X201 @ X203)) = (sub @ (X199 @ X202 @ X201) @ X203)) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X200 : term] : (($true = (X196 @ id @ (X199 @ id @ X200) @ id)) | ($true != (X196 @ id @ X200 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f23,plain,(
% 2.47/1.94    ! [X196 : subst > term > subst > $o] : (($true = (sP8 @ X196)) <=> ? [X197 : term,X198 : term] : (($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ($true = (X196 @ id @ X198 @ id)) & ($true = (X196 @ id @ X197 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f24,plain,(
% 2.47/1.94    ($true = sP9) <=> ! [X195 : term,X196 : subst > term > subst > $o] : (((sP7 @ X196) = $true) | ($true = (X196 @ id @ X195 @ id)) | ($true = (sP8 @ X196)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f25,plain,(
% 2.47/1.94    ($true = sP10) <=> ? [X177 : term,X178 : term > $o] : (! [X181 : term] : (($true != (var @ X181)) | ($true = (X178 @ X181))) & ($true = (sP5 @ X178)) & ($true = (sP4 @ X178)) & ($true != (X178 @ X177)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f26,plain,(
% 2.47/1.94    ($true = sP11) <=> ? [X185 : subst > term > subst > $o,X186 : term,X187 : term > $o] : (! [X189 : term] : (($true != (X187 @ X189)) | ($true = (X187 @ (sub @ X186 @ (push @ X189 @ id))))) & ! [X188 : term] : ((X185 @ id @ X188 @ id) = (X187 @ X188)) & ($true = (sP6 @ X185)) & ($true != (X187 @ (lam @ X186))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f27,plain,(
% 2.47/1.94    ($true = sP12) <=> ! [X521 : subst > term > term,X522 : subst,X523 : subst > term > term,X524 : term] : (? [X525 : subst,X526 : term,X527 : subst] : ((X523 @ (comp @ X527 @ X525) @ (sub @ X526 @ X525)) != (sub @ (X523 @ X527 @ X526) @ X525)) | ((X521 @ X522 @ X524) = (X523 @ X522 @ X524)) | ? [X528 : term,X529 : subst,X530 : subst] : ((sub @ (X521 @ X529 @ X528) @ X530) != (X521 @ (comp @ X529 @ X530) @ (sub @ X528 @ X530))) | ((lam @ (X523 @ sh @ one)) != (lam @ (X521 @ sh @ one))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f28,plain,(
% 2.47/1.94    ($true = sP13) <=> (? [X517 : subst,X518 : term] : ((comp @ sh @ (push @ X518 @ X517)) != X517) | ($true = sP12) | ? [X519 : term,X520 : term] : (((lam @ X520) = (lam @ X519)) & (X519 != X520)) | ? [X515 : term,X516 : subst] : ((sub @ one @ (push @ X515 @ X516)) != X515))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f29,plain,(
% 2.47/1.94    ! [X154 : subst > term > subst > $o] : (($true = (sP14 @ X154)) <=> ? [X156 : subst > term > term] : (! [X157 : term] : (($true != (X154 @ id @ X157 @ id)) | ($true = (X154 @ id @ (X156 @ id @ X157) @ id))) & ! [X158 : term,X159 : subst,X160 : subst] : ((X156 @ (comp @ X159 @ X160) @ (sub @ X158 @ X160)) = (sub @ (X156 @ X159 @ X158) @ X160)) & ($true != (X154 @ id @ (lam @ (X156 @ sh @ one)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f30,plain,(
% 2.47/1.94    ($true = sP15) <=> ! [X154 : subst > term > subst > $o,X155 : term] : (($true = (sP14 @ X154)) | ? [X161 : term] : (((X154 @ id @ (sub @ X155 @ (push @ X161 @ id)) @ id) != $true) & ($true = (X154 @ id @ X161 @ id))) | ($true = (X154 @ id @ (lam @ (sub @ X155 @ (push @ one @ sh))) @ id)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f31,plain,(
% 2.47/1.94    ! [X102 : subst > term > subst > $o] : (($true = (sP16 @ X102)) <=> ? [X106 : subst > term > term] : (! [X110 : term] : (($true != (X102 @ id @ X110 @ id)) | ($true = (X102 @ id @ (X106 @ id @ X110) @ id))) & ! [X107 : term,X108 : subst,X109 : subst] : ((X106 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)) = (sub @ (X106 @ X109 @ X107) @ X108)) & ($true != (X102 @ id @ (lam @ (X106 @ sh @ one)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f32,plain,(
% 2.47/1.94    ($true = sP17) <=> ! [X102 : subst > term > subst > $o,X103 : term > $o,X104 : term] : (($true = (X103 @ (lam @ X104))) | ? [X111 : term] : ((X102 @ id @ X111 @ id) != (X103 @ X111)) | ($true = (sP16 @ X102)) | ? [X105 : term] : (($true != (X103 @ (sub @ X104 @ (push @ X105 @ id)))) & ($true = (X103 @ X105))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f33,plain,(
% 2.47/1.94    ! [X79 : subst > term > subst > $o] : (($true = (sP18 @ X79)) <=> ? [X80 : subst > term > term] : (! [X84 : term] : (((X79 @ id @ (X80 @ id @ X84) @ id) = $true) | ($true != (X79 @ id @ X84 @ id))) & ($true != (X79 @ id @ (lam @ (X80 @ sh @ one)) @ id)) & ! [X81 : subst,X82 : term,X83 : subst] : ((X80 @ (comp @ X81 @ X83) @ (sub @ X82 @ X83)) = (sub @ (X80 @ X81 @ X82) @ X83))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f34,plain,(
% 2.47/1.94    ! [X79 : subst > term > subst > $o] : (($true = (sP19 @ X79)) <=> ? [X94 : term,X95 : term] : (($true = (X79 @ id @ X95 @ id)) & ($true != (X79 @ id @ (ap @ (sub @ X94 @ id) @ X95) @ id)) & ($true = (X79 @ id @ X94 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f35,plain,(
% 2.47/1.94    ! [X79 : subst > term > subst > $o] : (($true = (sP20 @ X79)) <=> ? [X85 : subst,X86 : subst,X87 : term,X88 : subst] : (($true = (X79 @ X85 @ X87 @ (comp @ X86 @ X88))) & ((X79 @ (comp @ X85 @ X86) @ (sub @ X87 @ X86) @ X88) != $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f36,plain,(
% 2.47/1.94    ! [X79 : subst > term > subst > $o] : (($true = (sP21 @ X79)) <=> ? [X90 : subst,X91 : subst,X92 : subst,X93 : term] : (($true != (X79 @ X91 @ X93 @ (comp @ X92 @ X90))) & ($true = (X79 @ (comp @ X91 @ X92) @ (sub @ X93 @ X92) @ X90))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f37,plain,(
% 2.47/1.94    ($true = sP22) <=> ! [X78 : term,X79 : subst > term > subst > $o] : (? [X89 : term] : (($true != (X79 @ id @ X89 @ id)) & ($true = (var @ (sub @ X89 @ id)))) | ($true = (sP19 @ X79)) | ($true = (sP21 @ X79)) | ($true = (sP20 @ X79)) | ($true = (X79 @ id @ X78 @ id)) | ($true = (sP18 @ X79)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f38,plain,(
% 2.47/1.94    ! [X498 : subst > term > subst > $o] : (((sP23 @ X498) = $true) <=> ? [X499 : subst > term > term] : (! [X500 : term,X501 : subst,X502 : subst] : ((X499 @ (comp @ X502 @ X501) @ (sub @ X500 @ X501)) = (sub @ (X499 @ X502 @ X500) @ X501)) & ($true != (X498 @ id @ (lam @ (X499 @ sh @ one)) @ id)) & ! [X503 : term] : (($true != (X498 @ id @ X503 @ id)) | ($true = (X498 @ id @ (X499 @ id @ X503) @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f39,plain,(
% 2.47/1.94    ! [X498 : subst > term > subst > $o] : (($true = (sP24 @ X498)) <=> ? [X504 : term,X505 : term] : (($true = (X498 @ id @ X504 @ id)) & ($true = (X498 @ id @ X505 @ id)) & ($true != (X498 @ id @ (ap @ (sub @ X504 @ id) @ X505) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f40,plain,(
% 2.47/1.94    ! [X498 : subst > term > subst > $o] : (($true = (sP25 @ X498)) <=> ? [X514 : term] : (($true != (X498 @ id @ X514 @ id)) & ($true = (var @ (sub @ X514 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f41,plain,(
% 2.47/1.94    ! [X498 : subst > term > subst > $o] : (($true = (sP26 @ X498)) <=> ? [X506 : subst,X507 : subst,X508 : term,X509 : subst] : (($true != (X498 @ (comp @ X509 @ X507) @ (sub @ X508 @ X507) @ X506)) & ($true = (X498 @ X509 @ X508 @ (comp @ X507 @ X506)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f42,plain,(
% 2.47/1.94    ! [X479 : term > $o] : (($true = (sP27 @ X479)) <=> ! [X484 : term,X485 : term] : (($true != (X479 @ X485)) | ($true = (X479 @ (ap @ X485 @ X484))) | ((X479 @ X484) != $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f43,plain,(
% 2.47/1.94    ! [X479 : term > $o] : (($true = (sP28 @ X479)) <=> ! [X481 : term] : (($true = (X479 @ (lam @ X481))) | ? [X482 : term] : (($true != (X479 @ (sub @ X481 @ (push @ X482 @ id)))) & ($true = (X479 @ X482)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f44,plain,(
% 2.47/1.94    ! [X488 : subst > term > subst > $o] : (($true = (sP29 @ X488)) <=> ! [X491 : subst > term > term] : (($true = (X488 @ id @ (lam @ (X491 @ sh @ one)) @ id)) | ? [X492 : term] : (($true != (X488 @ id @ (X491 @ id @ X492) @ id)) & ($true = (X488 @ id @ X492 @ id))) | ? [X493 : term,X494 : subst,X495 : subst] : ((X491 @ (comp @ X495 @ X494) @ (sub @ X493 @ X494)) != (sub @ (X491 @ X495 @ X493) @ X494))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f45,plain,(
% 2.47/1.94    ($true = sP30) <=> ! [X497 : term,X498 : subst > term > subst > $o] : (? [X510 : subst,X511 : term,X512 : subst,X513 : subst] : (($true != (X498 @ X513 @ X511 @ (comp @ X512 @ X510))) & ($true = (X498 @ (comp @ X513 @ X512) @ (sub @ X511 @ X512) @ X510))) | ($true = (X498 @ id @ X497 @ id)) | ($true = (sP26 @ X498)) | ($true = (sP25 @ X498)) | ((sP23 @ X498) = $true) | ($true = (sP24 @ X498)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f46,plain,(
% 2.47/1.94    ($true = sP31) <=> ? [X479 : term > $o,X480 : term] : (! [X483 : term] : (((var @ X483) != $true) | ($true = (X479 @ X483))) & ($true != (X479 @ X480)) & ($true = (sP27 @ X479)) & ($true = (sP28 @ X479)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f47,plain,(
% 2.47/1.94    ($true = sP32) <=> ? [X487 : term,X488 : subst > term > subst > $o,X489 : term > $o] : (($true = (sP29 @ X488)) & ((X489 @ (lam @ X487)) != $true) & ! [X490 : term] : (($true != (X489 @ X490)) | ($true = (X489 @ (sub @ X487 @ (push @ X490 @ id))))) & ! [X496 : term] : ((X488 @ id @ X496 @ id) = (X489 @ X496)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f48,plain,(
% 2.47/1.94    ! [X162 : subst > term > subst > $o] : (($true = (sP33 @ X162)) <=> ? [X164 : subst > term > term,X165 : term] : (! [X166 : subst,X167 : term,X168 : subst] : ((sub @ (X164 @ X168 @ X167) @ X166) = (sub @ (sub @ X165 @ (push @ X167 @ X168)) @ X166)) & ((X162 @ id @ (lam @ (X164 @ sh @ one)) @ id) != $true) & ! [X169 : subst,X170 : term,X171 : subst] : ((sub @ X165 @ (push @ (sub @ X170 @ X169) @ (comp @ X171 @ X169))) = (X164 @ (comp @ X171 @ X169) @ (sub @ X170 @ X169))) & ! [X172 : term] : (($true = (X162 @ id @ (X164 @ id @ X172) @ id)) | ($true != (X162 @ id @ X172 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f49,plain,(
% 2.47/1.94    ($true = sP34) <=> ! [X162 : subst > term > subst > $o,X163 : term] : (? [X173 : term] : (($true != (X162 @ id @ (sub @ X163 @ (push @ X173 @ id)) @ id)) & ((X162 @ id @ X173 @ id) = $true)) | ($true = (sP33 @ X162)) | ($true = (X162 @ id @ (lam @ (sub @ X163 @ (push @ one @ sh))) @ id)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f50,plain,(
% 2.47/1.94    ! [X309 : term > $o] : (($true = (sP35 @ X309)) <=> ? [X310 : term,X311 : term] : (($true != (X309 @ (ap @ X311 @ X310))) & ($true = (X309 @ X311)) & ($true = (X309 @ X310))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f51,plain,(
% 2.47/1.94    ! [X309 : term > $o] : (($true = (sP36 @ X309)) <=> ? [X312 : term] : (($true != (X309 @ X312)) & ($true = (var @ X312))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f52,plain,(
% 2.47/1.94    ($true = sP37) <=> ! [X308 : term,X309 : term > $o] : (? [X313 : term] : (($true != (X309 @ (lam @ X313))) & ($true = (X309 @ X313))) | ($true = (sP36 @ X309)) | ($true = (X309 @ X308)) | ($true = (sP35 @ X309)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f53,plain,(
% 2.47/1.94    ! [X425 : subst > term > subst > $o] : (($true = (sP38 @ X425)) <=> ? [X432 : term,X433 : term] : (($true = (X425 @ id @ X432 @ id)) & ($true != (X425 @ id @ (ap @ (sub @ X432 @ id) @ X433) @ id)) & ($true = (X425 @ id @ X433 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f54,plain,(
% 2.47/1.94    ! [X425 : subst > term > subst > $o] : (($true = (sP39 @ X425)) <=> ? [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (($true = (X425 @ X431 @ X429 @ (comp @ X428 @ X430))) & ($true != (X425 @ (comp @ X431 @ X428) @ (sub @ X429 @ X428) @ X430))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f55,plain,(
% 2.47/1.94    ($true = sP40) <=> ! [X425 : subst > term > subst > $o,X426 : term,X427 : term] : (($true = (X425 @ id @ (ap @ X427 @ X426) @ id)) | ($true = (sP38 @ X425)) | ? [X434 : term,X435 : subst,X436 : subst,X437 : subst] : (($true = (X425 @ (comp @ X435 @ X437) @ (sub @ X434 @ X437) @ X436)) & ($true != (X425 @ X435 @ X434 @ (comp @ X437 @ X436)))) | ($true != (X425 @ id @ X427 @ id)) | ($true = (sP39 @ X425)) | ((X425 @ id @ X426 @ id) != $true))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f56,plain,(
% 2.47/1.94    ($true = sP41) <=> ((! [X304 : subst] : ((comp @ X304 @ id) = X304) & ! [X303 : subst] : ((comp @ id @ X303) = X303)) | ? [X302 : subst] : ((comp @ X302 @ id) != X302) | ? [X301 : subst] : ((comp @ id @ X301) != X301))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f57,plain,(
% 2.47/1.94    ! [X293 : term > $o] : (($true = (sP42 @ X293)) <=> ? [X298 : term] : (! [X299 : term] : (((X293 @ (sub @ X298 @ (push @ X299 @ id))) = $true) | ($true != (X293 @ X299))) & ($true != (X293 @ (lam @ X298)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f58,plain,(
% 2.47/1.94    ! [X293 : term > $o] : (($true = (sP43 @ X293)) <=> ? [X296 : term,X297 : term] : (($true = (X293 @ X296)) & ((X293 @ X297) = $true) & ($true != (X293 @ (ap @ X297 @ X296)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f59,plain,(
% 2.47/1.94    ($true = sP44) <=> ! [X293 : term > $o,X294 : subst,X295 : term] : (($true = (sP43 @ X293)) | ? [X300 : term] : (($true != (X293 @ (sub @ X300 @ X294))) & ($true = (var @ X300))) | ($true = (sP42 @ X293)) | ($true = (X293 @ (sub @ X295 @ X294))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f60,plain,(
% 2.47/1.94    ! [X282 : subst > term > subst > $o] : (($true = (sP45 @ X282)) <=> ? [X284 : subst > term > term] : (($true != (X282 @ id @ (lam @ (X284 @ sh @ one)) @ id)) & ! [X285 : term] : (($true = (X282 @ id @ (X284 @ id @ X285) @ id)) | ($true != (X282 @ id @ X285 @ id))) & ! [X286 : term,X287 : subst,X288 : subst] : ((sub @ (X284 @ X287 @ X286) @ X288) = (X284 @ (comp @ X287 @ X288) @ (sub @ X286 @ X288)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f61,plain,(
% 2.47/1.94    ! [X282 : subst > term > subst > $o] : (($true = (sP46 @ X282)) <=> ? [X289 : term,X290 : term] : (($true = (X282 @ id @ X289 @ id)) & ($true = (X282 @ id @ X290 @ id)) & ($true != (X282 @ id @ (ap @ (sub @ X289 @ id) @ X290) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f62,plain,(
% 2.47/1.94    ! [X228 : subst > term > subst > $o] : (($true = (sP47 @ X228)) <=> ? [X234 : subst > term > term] : (! [X235 : term] : (($true != (X228 @ id @ X235 @ id)) | ($true = (X228 @ id @ (X234 @ id @ X235) @ id))) & ! [X236 : subst,X237 : subst,X238 : term] : ((sub @ (X234 @ X237 @ X238) @ X236) = (X234 @ (comp @ X237 @ X236) @ (sub @ X238 @ X236))) & ($true != (X228 @ id @ (lam @ (X234 @ sh @ one)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f63,plain,(
% 2.47/1.94    ! [X228 : subst > term > subst > $o] : (($true = (sP48 @ X228)) <=> ? [X239 : subst,X240 : term,X241 : subst,X242 : subst] : (($true != (X228 @ X239 @ X240 @ (comp @ X242 @ X241))) & ($true = (X228 @ (comp @ X239 @ X242) @ (sub @ X240 @ X242) @ X241))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f64,plain,(
% 2.47/1.94    ! [X228 : subst > term > subst > $o] : (($true = (sP49 @ X228)) <=> ? [X229 : term,X230 : subst,X231 : subst,X232 : subst] : (($true = (X228 @ X230 @ X229 @ (comp @ X231 @ X232))) & ($true != (X228 @ (comp @ X230 @ X231) @ (sub @ X229 @ X231) @ X232))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f65,plain,(
% 2.47/1.94    (sP50 = $true) <=> ! [X227 : term,X228 : subst > term > subst > $o] : (? [X233 : term] : (($true != (X228 @ id @ (sub @ X227 @ (push @ X233 @ id)) @ id)) & ($true = (X228 @ id @ X233 @ id))) | ($true = (sP49 @ X228)) | ($true = (sP48 @ X228)) | ($true = (sP47 @ X228)) | ($true = (X228 @ id @ (lam @ X227) @ id)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f66,plain,(
% 2.47/1.94    ($true = sP51) <=> ! [X272 : term,X273 : term,X274 : term,X275 : term] : ((X272 = X273) | ((ap @ (sub @ X274 @ id) @ X272) != (ap @ (sub @ X275 @ id) @ X273)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f67,plain,(
% 2.47/1.94    ($true = sP52) <=> (? [X268 : term,X269 : term,X270 : term,X271 : term] : (((ap @ X268 @ X269) = (ap @ X271 @ X270)) & (X269 != X270)) | ($true = sP51))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f68,plain,(
% 2.47/1.94    ! [X350 : subst > term > subst > $o] : (($true = (sP53 @ X350)) <=> ! [X355 : term,X356 : term] : (($true != (X350 @ id @ X355 @ id)) | ($true = (X350 @ id @ (ap @ (sub @ X356 @ id) @ X355) @ id)) | ($true != (X350 @ id @ X356 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f69,plain,(
% 2.47/1.94    ! [X350 : subst > term > subst > $o] : (($true = (sP54 @ X350)) <=> ! [X351 : term,X352 : subst,X353 : subst,X354 : subst] : (($true = (X350 @ X353 @ X351 @ (comp @ X352 @ X354))) | ($true != (X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352) @ X354))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f70,plain,(
% 2.47/1.94    ! [X342 : term > $o] : (($true = (sP55 @ X342)) <=> ! [X346 : term,X347 : term] : (($true = (X342 @ (ap @ X347 @ X346))) | ($true != (X342 @ X346)) | ($true != (X342 @ X347))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f71,plain,(
% 2.47/1.94    ! [X342 : term > $o] : (($true = (sP56 @ X342)) <=> ! [X343 : term] : (((var @ X343) != $true) | ($true = (X342 @ X343))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f72,plain,(
% 2.47/1.94    ! [X342 : term > $o] : (($true = (sP57 @ X342)) <=> ! [X344 : term] : (? [X345 : term] : (($true != (X342 @ (sub @ X344 @ (push @ X345 @ id)))) & ($true = (X342 @ X345))) | ((X342 @ (lam @ X344)) = $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f73,plain,(
% 2.47/1.94    ! [X361 : subst > term > subst > $o] : (($true = (sP58 @ X361)) <=> ! [X372 : subst > term > term] : (((X361 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ? [X373 : term] : (($true != (X361 @ id @ (X372 @ id @ X373) @ id)) & ($true = (X361 @ id @ X373 @ id))) | ? [X374 : subst,X375 : term,X376 : subst] : ((X372 @ (comp @ X374 @ X376) @ (sub @ X375 @ X376)) != (sub @ (X372 @ X374 @ X375) @ X376))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f74,plain,(
% 2.47/1.94    ! [X361 : subst > term > subst > $o] : (((sP59 @ X361) = $true) <=> ! [X363 : subst,X364 : term,X365 : subst,X366 : subst] : (($true = (X361 @ (comp @ X366 @ X363) @ (sub @ X364 @ X363) @ X365)) | ((X361 @ X366 @ X364 @ (comp @ X363 @ X365)) != $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f75,plain,(
% 2.47/1.94    ! [X361 : subst > term > subst > $o] : (($true = (sP60 @ X361)) <=> ! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (($true = (X361 @ X370 @ X369 @ (comp @ X367 @ X368))) | ($true != (X361 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f76,plain,(
% 2.47/1.94    ! [X377 : subst > term > subst > $o] : (($true = (sP61 @ X377)) <=> ? [X379 : subst > term > term] : (($true != (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id)) & ! [X383 : term] : (($true != (X377 @ id @ X383 @ id)) | ($true = (X377 @ id @ (X379 @ id @ X383) @ id))) & ! [X380 : term,X381 : subst,X382 : subst] : ((sub @ (X379 @ X381 @ X380) @ X382) = (X379 @ (comp @ X381 @ X382) @ (sub @ X380 @ X382)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f77,plain,(
% 2.47/1.94    ! [X377 : subst > term > subst > $o] : (($true = (sP62 @ X377)) <=> ? [X393 : term,X394 : term] : (($true = (X377 @ id @ X394 @ id)) & ($true != (X377 @ id @ (ap @ (sub @ X394 @ id) @ X393) @ id)) & ($true = (X377 @ id @ X393 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f78,plain,(
% 2.47/1.94    ! [X377 : subst > term > subst > $o] : (($true = (sP63 @ X377)) <=> ? [X388 : term] : (($true = (var @ (sub @ X388 @ id))) & ($true != (X377 @ id @ X388 @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f79,plain,(
% 2.47/1.94    ! [X377 : subst > term > subst > $o] : (($true = (sP64 @ X377)) <=> ? [X384 : subst,X385 : subst,X386 : term,X387 : subst] : (($true != (X377 @ (comp @ X384 @ X387) @ (sub @ X386 @ X387) @ X385)) & ($true = (X377 @ X384 @ X386 @ (comp @ X387 @ X385)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f80,plain,(
% 2.47/1.94    (sP65 = $true) <=> ! [X377 : subst > term > subst > $o,X378 : term] : (? [X389 : subst,X390 : term,X391 : subst,X392 : subst] : (($true != (X377 @ X389 @ X390 @ (comp @ X392 @ X391))) & ($true = (X377 @ (comp @ X389 @ X392) @ (sub @ X390 @ X392) @ X391))) | ($true = (sP62 @ X377)) | ($true = (X377 @ id @ X378 @ id)) | ($true = (sP64 @ X377)) | ($true = (sP61 @ X377)) | ($true = (sP63 @ X377)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f81,plain,(
% 2.47/1.94    ($true = sP66) <=> ? [X348 : term,X349 : term,X350 : subst > term > subst > $o] : (($true = (sP53 @ X350)) & ($true = (X350 @ id @ X348 @ id)) & ($true = (X350 @ id @ X349 @ id)) & ($true != (X350 @ id @ (ap @ X348 @ X349) @ id)) & ! [X357 : subst,X358 : subst,X359 : subst,X360 : term] : (($true = (X350 @ (comp @ X357 @ X358) @ (sub @ X360 @ X358) @ X359)) | ((X350 @ X357 @ X360 @ (comp @ X358 @ X359)) != $true)) & ($true = (sP54 @ X350)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f82,plain,(
% 2.47/1.94    ($true = sP67) <=> ? [X361 : subst > term > subst > $o,X362 : term] : (($true = (sP58 @ X361)) & ($true != (X361 @ id @ (lam @ X362) @ id)) & ! [X371 : term] : (((X361 @ id @ (sub @ X362 @ (push @ X371 @ id)) @ id) = $true) | ($true != (X361 @ id @ X371 @ id))) & ($true = (sP60 @ X361)) & ((sP59 @ X361) = $true))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f83,plain,(
% 2.47/1.94    ($true = sP68) <=> ? [X341 : term,X342 : term > $o] : (($true != (X342 @ X341)) & ($true = (sP57 @ X342)) & ($true = (sP56 @ X342)) & ($true = (sP55 @ X342)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f84,plain,(
% 2.47/1.94    ! [X466 : term > $o] : (($true = (sP69 @ X466)) <=> ? [X470 : term] : (! [X471 : term] : (((X466 @ X471) != $true) | ($true = (X466 @ (sub @ X470 @ (push @ X471 @ id))))) & ($true != (X466 @ (lam @ X470)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f85,plain,(
% 2.47/1.94    ! [X466 : term > $o] : (($true = (sP70 @ X466)) <=> ? [X467 : term,X468 : term] : (($true = (X466 @ X467)) & ((X466 @ (ap @ X467 @ X468)) != $true) & ($true = (X466 @ X468))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f86,plain,(
% 2.47/1.94    ! [X457 : term > $o] : (($true = (sP71 @ X457)) <=> ! [X463 : term,X464 : term] : (($true != (X457 @ X463)) | ($true != (X457 @ X464)) | ($true = (X457 @ (ap @ X464 @ X463)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f87,plain,(
% 2.47/1.94    ! [X457 : term > $o] : (($true = (sP72 @ X457)) <=> ! [X461 : term] : (($true = (X457 @ (lam @ X461))) | ? [X462 : term] : (($true != (X457 @ (sub @ X461 @ (push @ X462 @ id)))) & ($true = (X457 @ X462)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f88,plain,(
% 2.47/1.94    (sP73 = $true) <=> ! [X465 : term,X466 : term > $o] : (? [X469 : term] : (($true = (var @ X469)) & ($true != (X466 @ X469))) | ($true = (X466 @ X465)) | ($true = (sP70 @ X466)) | ($true = (sP69 @ X466)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f89,plain,(
% 2.47/1.94    ($true = sP74) <=> ? [X457 : term > $o,X458 : term,X459 : subst] : (! [X460 : term] : (($true = (X457 @ (sub @ X460 @ X459))) | ($true != (var @ X460))) & ($true = (sP72 @ X457)) & ($true != (X457 @ (sub @ X458 @ X459))) & ($true = (sP71 @ X457)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f90,plain,(
% 2.47/1.94    ! [X447 : subst > term > subst > $o] : (($true = (sP75 @ X447)) <=> ? [X451 : subst > term > term] : (! [X452 : term] : (($true = (X447 @ id @ (X451 @ id @ X452) @ id)) | ($true != (X447 @ id @ X452 @ id))) & ! [X453 : subst,X454 : subst,X455 : term] : ((sub @ (X451 @ X453 @ X455) @ X454) = (X451 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))) & ($true != (X447 @ id @ (lam @ (X451 @ sh @ one)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f91,plain,(
% 2.47/1.94    ($true = sP76) <=> ! [X446 : term,X447 : subst > term > subst > $o,X448 : term > $o] : (? [X450 : term] : (($true != (X448 @ (sub @ X446 @ (push @ X450 @ id)))) & ($true = (X448 @ X450))) | ($true = (X448 @ (lam @ X446))) | ? [X449 : term] : ((X447 @ id @ X449 @ id) != (X448 @ X449)) | ($true = (sP75 @ X447)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f92,plain,(
% 2.47/1.94    ! [X215 : subst > term > subst > $o] : (($true = (sP77 @ X215)) <=> ? [X217 : subst > term > term] : (! [X219 : term,X220 : subst,X221 : subst] : ((sub @ (X217 @ X220 @ X219) @ X221) = (X217 @ (comp @ X220 @ X221) @ (sub @ X219 @ X221))) & ((X215 @ id @ (lam @ (X217 @ sh @ one)) @ id) != $true) & ! [X218 : term] : (($true = (X215 @ id @ (X217 @ id @ X218) @ id)) | ($true != (X215 @ id @ X218 @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f93,plain,(
% 2.47/1.94    ($true = sP78) <=> ! [X215 : subst > term > subst > $o,X216 : term] : (? [X222 : term] : (($true = (X215 @ id @ X222 @ id)) & ($true != (X215 @ id @ (sub @ X216 @ (push @ X222 @ id)) @ id))) | ($true = (X215 @ id @ (lam @ (sub @ X216 @ (push @ one @ sh))) @ id)) | ($true = (sP77 @ X215)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f94,plain,(
% 2.47/1.94    ! [X335 : term > $o] : (($true = (sP79 @ X335)) <=> ? [X339 : term] : (! [X340 : term] : (($true = (X335 @ (sub @ X339 @ (push @ X340 @ id)))) | ((X335 @ X340) != $true)) & ($true != (X335 @ (lam @ X339)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f95,plain,(
% 2.47/1.94    ! [X335 : term > $o] : (($true = (sP80 @ X335)) <=> ? [X337 : term,X338 : term] : (($true = (X335 @ X337)) & ($true = (X335 @ X338)) & ($true != (X335 @ (ap @ X338 @ X337)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f96,plain,(
% 2.47/1.94    ! [X327 : term > $o] : (($true = (sP81 @ X327)) <=> ! [X330 : term,X331 : term] : (($true != (X327 @ X331)) | ($true != (X327 @ X330)) | ($true = (X327 @ (ap @ X331 @ X330)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f97,plain,(
% 2.47/1.94    ! [X327 : term > $o] : (($true = (sP82 @ X327)) <=> ! [X332 : term] : (($true = (X327 @ (lam @ X332))) | ($true != (X327 @ X332))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f98,plain,(
% 2.47/1.94    ($true = sP83) <=> ! [X333 : subst,X334 : term,X335 : term > $o] : (($true = (sP79 @ X335)) | ($true = (X335 @ (sub @ X334 @ X333))) | ($true = (sP80 @ X335)) | ? [X336 : term] : (($true != (X335 @ (sub @ X336 @ X333))) & ($true = (var @ X336))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f99,plain,(
% 2.47/1.94    ($true = sP84) <=> ? [X327 : term > $o,X328 : term] : (($true != (X327 @ X328)) & ! [X329 : term] : (($true != (var @ X329)) | ($true = (X327 @ X329))) & ($true = (sP82 @ X327)) & ($true = (sP81 @ X327)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f100,plain,(
% 2.47/1.94    ! [X21 : subst > term > subst > $o] : (($true = (sP85 @ X21)) <=> ? [X23 : subst > term > term] : (! [X24 : term] : (((X21 @ id @ (X23 @ id @ X24) @ id) = $true) | ($true != (X21 @ id @ X24 @ id))) & ! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) & ((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) != $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f101,plain,(
% 2.47/1.94    ! [X21 : subst > term > subst > $o] : (($true = (sP86 @ X21)) <=> ? [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true = (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29)) & ($true != (X21 @ X30 @ X32 @ (comp @ X31 @ X29)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f102,plain,(
% 2.47/1.94    ! [X21 : subst > term > subst > $o] : (($true = (sP87 @ X21)) <=> ? [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (($true = (X21 @ X35 @ X33 @ (comp @ X36 @ X34))) & ($true != (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f103,plain,(
% 2.47/1.94    ($true = sP88) <=> ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (($true = (X20 @ (lam @ X22))) | ($true = (sP85 @ X21)) | ? [X28 : term] : (($true != (X20 @ (sub @ X22 @ (push @ X28 @ id)))) & ($true = (X20 @ X28))) | ($true = (sP87 @ X21)) | ($true = (sP86 @ X21)) | ? [X37 : term] : ((X20 @ X37) != (X21 @ id @ X37 @ id)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f104,plain,(
% 2.47/1.94    ($true = sP89) <=> ! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ (sub @ X536 @ id) @ X539) != (ap @ (sub @ X537 @ id) @ X538)) | (X536 = X537))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f105,plain,(
% 2.47/1.94    ($true = sP90) <=> (($true = sP89) | ? [X531 : term] : ((sub @ X531 @ id) != X531) | ? [X532 : term,X533 : term,X534 : term,X535 : term] : ((X533 != X534) & ((ap @ X534 @ X535) = (ap @ X533 @ X532))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f106,plain,(
% 2.47/1.94    ! [X139 : subst > term > subst > $o] : (((sP91 @ X139) = $true) <=> ? [X140 : term,X141 : term] : (($true = (X139 @ id @ X141 @ id)) & ($true = (X139 @ id @ X140 @ id)) & ($true != (X139 @ id @ (ap @ (sub @ X141 @ id) @ X140) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f107,plain,(
% 2.47/1.94    ! [X139 : subst > term > subst > $o] : (($true = (sP92 @ X139)) <=> ? [X143 : subst,X144 : subst,X145 : term,X146 : subst] : (($true = (X139 @ X143 @ X145 @ (comp @ X146 @ X144))) & ($true != (X139 @ (comp @ X143 @ X146) @ (sub @ X145 @ X146) @ X144))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f108,plain,(
% 2.47/1.94    ($true = sP93) <=> ! [X136 : term > $o,X137 : term,X138 : term,X139 : subst > term > subst > $o] : (($true != (X136 @ X138)) | ($true = (X136 @ (ap @ X137 @ X138))) | ((sP91 @ X139) = $true) | ? [X147 : subst,X148 : subst,X149 : subst,X150 : term] : (($true != (X139 @ X147 @ X150 @ (comp @ X149 @ X148))) & ($true = (X139 @ (comp @ X147 @ X149) @ (sub @ X150 @ X149) @ X148))) | ($true = (sP92 @ X139)) | ? [X142 : term] : ((X136 @ X142) != (X139 @ id @ X142 @ id)) | ($true != (X136 @ X137)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f109,plain,(
% 2.47/1.94    ! [X8 : subst > term > subst > $o] : (($true = (sP94 @ X8)) <=> ? [X10 : subst > term > term] : (($true != (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id)) & ! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) & ! [X14 : term] : (($true != (X8 @ id @ X14 @ id)) | ($true = (X8 @ id @ (X10 @ id @ X14) @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f110,plain,(
% 2.47/1.94    (sP95 = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (($true = (sP94 @ X8)) | ($true = (X8 @ id @ (lam @ X7) @ id)) | ? [X9 : term] : (($true = (X8 @ id @ X9 @ id)) & ($true != (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f111,plain,(
% 2.47/1.94    ! [X46 : term > $o] : (($true = (sP96 @ X46)) <=> ? [X47 : term] : (! [X48 : term] : (($true != (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id))))) & ($true != (X46 @ (lam @ X47)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f112,plain,(
% 2.47/1.94    ! [X46 : term > $o] : (($true = (sP97 @ X46)) <=> ? [X49 : term,X50 : term] : (($true != (X46 @ (ap @ X49 @ X50))) & ($true = (X46 @ X50)) & ($true = (X46 @ X49))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f113,plain,(
% 2.47/1.94    ($true = sP98) <=> ! [X45 : term,X46 : term > $o] : (($true = (sP97 @ X46)) | ? [X51 : term] : (($true != (X46 @ X51)) & ($true = (var @ X51))) | ($true = (sP96 @ X46)) | ($true = (X46 @ X45)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f114,plain,(
% 2.47/1.94    ! [X253 : subst > term > subst > $o] : (($true = (sP99 @ X253)) <=> ? [X263 : subst > term > term] : (! [X265 : subst,X266 : term,X267 : subst] : ((sub @ (X263 @ X267 @ X266) @ X265) = (X263 @ (comp @ X267 @ X265) @ (sub @ X266 @ X265))) & ! [X264 : term] : (($true = (X253 @ id @ (X263 @ id @ X264) @ id)) | ($true != (X253 @ id @ X264 @ id))) & ($true != (X253 @ id @ (lam @ (X263 @ sh @ one)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f115,plain,(
% 2.47/1.94    ! [X253 : subst > term > subst > $o] : (($true = (sP100 @ X253)) <=> ? [X254 : term,X255 : subst,X256 : subst,X257 : subst] : (($true != (X253 @ X256 @ X254 @ (comp @ X257 @ X255))) & ($true = (X253 @ (comp @ X256 @ X257) @ (sub @ X254 @ X257) @ X255))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f116,plain,(
% 2.47/1.94    ! [X253 : subst > term > subst > $o,X252 : term] : (($true = (sP101 @ X252 @ X253)) <=> ? [X262 : term] : (($true = (X253 @ id @ X262 @ id)) & ($true != (X253 @ id @ (sub @ X252 @ (push @ X262 @ id)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f117,plain,(
% 2.47/1.94    ! [X244 : subst > term > subst > $o] : (($true = (sP102 @ X244)) <=> ! [X247 : subst > term > term] : (? [X248 : subst,X249 : term,X250 : subst] : ((sub @ (X247 @ X248 @ X249) @ X250) != (X247 @ (comp @ X248 @ X250) @ (sub @ X249 @ X250))) | ? [X251 : term] : (($true = (X244 @ id @ X251 @ id)) & ($true != (X244 @ id @ (X247 @ id @ X251) @ id))) | ((X244 @ id @ (lam @ (X247 @ sh @ one)) @ id) = $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f118,plain,(
% 2.47/1.94    ($true = sP103) <=> ! [X252 : term,X253 : subst > term > subst > $o] : (($true = (X253 @ id @ (lam @ X252) @ id)) | ? [X258 : subst,X259 : subst,X260 : subst,X261 : term] : (($true != (X253 @ (comp @ X260 @ X258) @ (sub @ X261 @ X258) @ X259)) & ($true = (X253 @ X260 @ X261 @ (comp @ X258 @ X259)))) | ($true = (sP101 @ X252 @ X253)) | ($true = (sP99 @ X253)) | ($true = (sP100 @ X253)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f119,plain,(
% 2.47/1.94    ($true = sP104) <=> ? [X244 : subst > term > subst > $o,X245 : term] : (((X244 @ id @ (lam @ (sub @ X245 @ (push @ one @ sh))) @ id) != $true) & ($true = (sP102 @ X244)) & ! [X246 : term] : (($true != (X244 @ id @ X246 @ id)) | ($true = (X244 @ id @ (sub @ X245 @ (push @ X246 @ id)) @ id))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f120,plain,(
% 2.47/1.94    ! [X397 : subst > term > subst > $o] : (($true = (sP105 @ X397)) <=> ? [X403 : subst > term > term] : (! [X404 : subst,X405 : term,X406 : subst] : ((X403 @ (comp @ X404 @ X406) @ (sub @ X405 @ X406)) = (sub @ (X403 @ X404 @ X405) @ X406)) & ($true != (X397 @ id @ (lam @ (X403 @ sh @ one)) @ id)) & ! [X407 : term] : (($true != (X397 @ id @ X407 @ id)) | ($true = (X397 @ id @ (X403 @ id @ X407) @ id)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f121,plain,(
% 2.47/1.94    ! [X397 : subst > term > subst > $o] : (($true = (sP106 @ X397)) <=> ? [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (($true != (X397 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410)) & ($true = (X397 @ X409 @ X412 @ (comp @ X411 @ X410)))))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f122,plain,(
% 2.47/1.94    ! [X397 : subst > term > subst > $o] : (($true = (sP107 @ X397)) <=> ? [X398 : subst,X399 : subst,X400 : term,X401 : subst] : (($true != (X397 @ X401 @ X400 @ (comp @ X398 @ X399))) & ((X397 @ (comp @ X401 @ X398) @ (sub @ X400 @ X398) @ X399) = $true)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f123,plain,(
% 2.47/1.94    ($true = sP108) <=> ! [X395 : term > $o,X396 : term,X397 : subst > term > subst > $o] : (? [X402 : term] : (($true != (X395 @ (sub @ X396 @ (push @ X402 @ id)))) & ($true = (X395 @ X402))) | ? [X408 : term] : ((X397 @ id @ X408 @ id) != (X395 @ X408)) | ($true = (sP107 @ X397)) | ($true = (X395 @ (lam @ X396))) | ($true = (sP106 @ X397)) | ($true = (sP105 @ X397)))),
% 2.47/1.94    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 2.47/1.94  thf(f14,plain,(
% 2.47/1.94    (! [X395 : term > $o,X396 : term,X397 : subst > term > subst > $o] : (? [X402 : term] : (($true != (X395 @ (sub @ X396 @ (push @ X402 @ id)))) & ($true = (X395 @ X402))) | ? [X408 : term] : ((X397 @ id @ X408 @ id) != (X395 @ X408)) | ? [X398 : subst,X399 : subst,X400 : term,X401 : subst] : (($true != (X397 @ X401 @ X400 @ (comp @ X398 @ X399))) & ((X397 @ (comp @ X401 @ X398) @ (sub @ X400 @ X398) @ X399) = $true)) | ($true = (X395 @ (lam @ X396))) | ? [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (($true != (X397 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410)) & ($true = (X397 @ X409 @ X412 @ (comp @ X411 @ X410)))) | ? [X403 : subst > term > term] : (! [X404 : subst,X405 : term,X406 : subst] : ((X403 @ (comp @ X404 @ X406) @ (sub @ X405 @ X406)) = (sub @ (X403 @ X404 @ X405) @ X406)) & ($true != (X397 @ id @ (lam @ (X403 @ sh @ one)) @ id)) & ! [X407 : term] : (($true != (X397 @ id @ X407 @ id)) | ($true = (X397 @ id @ (X403 @ id @ X407) @ id))))) <=> (hoasinduction_lem3v2 = $true)) & (hoasinduction_lem3a_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_lem1v2 = $true) & ((? [X243 : term] : ((sub @ X243 @ id) != X243) | ? [X244 : subst > term > subst > $o,X245 : term] : (((X244 @ id @ (lam @ (sub @ X245 @ (push @ one @ sh))) @ id) != $true) & ! [X247 : subst > term > term] : (? [X248 : subst,X249 : term,X250 : subst] : ((sub @ (X247 @ X248 @ X249) @ X250) != (X247 @ (comp @ X248 @ X250) @ (sub @ X249 @ X250))) | ? [X251 : term] : (($true = (X244 @ id @ X251 @ id)) & ($true != (X244 @ id @ (X247 @ id @ X251) @ id))) | ((X244 @ id @ (lam @ (X247 @ sh @ one)) @ id) = $true)) & ! [X246 : term] : (($true != (X244 @ id @ X246 @ id)) | ($true = (X244 @ id @ (sub @ X245 @ (push @ X246 @ id)) @ id)))) | ! [X252 : term,X253 : subst > term > subst > $o] : (($true = (X253 @ id @ (lam @ X252) @ id)) | ? [X258 : subst,X259 : subst,X260 : subst,X261 : term] : (($true != (X253 @ (comp @ X260 @ X258) @ (sub @ X261 @ X258) @ X259)) & ($true = (X253 @ X260 @ X261 @ (comp @ X258 @ X259)))) | ? [X262 : term] : (($true = (X253 @ id @ X262 @ id)) & ($true != (X253 @ id @ (sub @ X252 @ (push @ X262 @ id)) @ id))) | ? [X263 : subst > term > term] : (! [X265 : subst,X266 : term,X267 : subst] : ((sub @ (X263 @ X267 @ X266) @ X265) = (X263 @ (comp @ X267 @ X265) @ (sub @ X266 @ X265))) & ! [X264 : term] : (($true = (X253 @ id @ (X263 @ id @ X264) @ id)) | ($true != (X253 @ id @ X264 @ id))) & ($true != (X253 @ id @ (lam @ (X263 @ sh @ one)) @ id))) | ? [X254 : term,X255 : subst,X256 : subst,X257 : subst] : (($true != (X253 @ X256 @ X254 @ (comp @ X257 @ X255))) & ($true = (X253 @ (comp @ X256 @ X257) @ (sub @ X254 @ X257) @ X255))))) <=> (hoasinduction_lem3_lthm = $true)) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & ((induction2 = $true) <=> ! [X45 : term,X46 : term > $o] : (? [X49 : term,X50 : term] : (($true != (X46 @ (ap @ X49 @ X50))) & ($true = (X46 @ X50)) & ($true = (X46 @ X49))) | ? [X51 : term] : (($true != (X46 @ X51)) & ($true = (var @ X51))) | ? [X47 : term] : (! [X48 : term] : (($true != (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id))))) & ($true != (X46 @ (lam @ X47)))) | ($true = (X46 @ X45)))) & ((hoasinduction_lem3a = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (? [X10 : subst > term > term] : (($true != (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id)) & ! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) & ! [X14 : term] : (($true != (X8 @ id @ X14 @ id)) | ($true = (X8 @ id @ (X10 @ id @ X14) @ id)))) | ($true = (X8 @ id @ (lam @ X7) @ id)) | ? [X9 : term] : (($true = (X8 @ id @ X9 @ id)) & ($true != (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))))) & (! [X136 : term > $o,X137 : term,X138 : term,X139 : subst > term > subst > $o] : (($true != (X136 @ X138)) | ($true = (X136 @ (ap @ X137 @ X138))) | ? [X140 : term,X141 : term] : (($true = (X139 @ id @ X141 @ id)) & ($true = (X139 @ id @ X140 @ id)) & ($true != (X139 @ id @ (ap @ (sub @ X141 @ id) @ X140) @ id))) | ? [X147 : subst,X148 : subst,X149 : subst,X150 : term] : (($true != (X139 @ X147 @ X150 @ (comp @ X149 @ X148))) & ($true = (X139 @ (comp @ X147 @ X149) @ (sub @ X150 @ X149) @ X148))) | ? [X143 : subst,X144 : subst,X145 : term,X146 : subst] : (($true = (X139 @ X143 @ X145 @ (comp @ X146 @ X144))) & ($true != (X139 @ (comp @ X143 @ X146) @ (sub @ X145 @ X146) @ X144))) | ? [X142 : term] : ((X136 @ X142) != (X139 @ id @ X142 @ id)) | ($true != (X136 @ X137))) <=> (hoasinduction_lem2v2 = $true)) & (axclos = $true) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & ((hoasapinj1_lthm = $true) <=> (! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ (sub @ X536 @ id) @ X539) != (ap @ (sub @ X537 @ id) @ X538)) | (X536 = X537)) | ? [X531 : term] : ((sub @ X531 @ id) != X531) | ? [X532 : term,X533 : term,X534 : term,X535 : term] : ((X533 != X534) & ((ap @ X534 @ X535) = (ap @ X533 @ X532))))) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & ((? [X19 : term] : ((sub @ X19 @ id) != X19) | ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (($true = (X20 @ (lam @ X22))) | ? [X23 : subst > term > term] : (! [X24 : term] : (((X21 @ id @ (X23 @ id @ X24) @ id) = $true) | ($true != (X21 @ id @ X24 @ id))) & ! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) & ((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) != $true)) | ? [X28 : term] : (($true != (X20 @ (sub @ X22 @ (push @ X28 @ id)))) & ($true = (X20 @ X28))) | ? [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (($true = (X21 @ X35 @ X33 @ (comp @ X36 @ X34))) & ($true != (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34))) | ? [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true = (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29)) & ($true != (X21 @ X30 @ X32 @ (comp @ X31 @ X29)))) | ? [X37 : term] : ((X20 @ X37) != (X21 @ id @ X37 @ id)))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((induction2lem_lthm = $true) <=> (? [X327 : term > $o,X328 : term] : (($true != (X327 @ X328)) & ! [X329 : term] : (($true != (var @ X329)) | ($true = (X327 @ X329))) & ! [X332 : term] : (($true = (X327 @ (lam @ X332))) | ($true != (X327 @ X332))) & ! [X330 : term,X331 : term] : (($true != (X327 @ X331)) | ($true != (X327 @ X330)) | ($true = (X327 @ (ap @ X331 @ X330))))) | ? [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) != X324) | ? [X326 : subst] : ((comp @ X326 @ id) != X326) | ? [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) != X323) | ! [X333 : subst,X334 : term,X335 : term > $o] : (? [X339 : term] : (! [X340 : term] : (($true = (X335 @ (sub @ X339 @ (push @ X340 @ id)))) | ((X335 @ X340) != $true)) & ($true != (X335 @ (lam @ X339)))) | ($true = (X335 @ (sub @ X334 @ X333))) | ? [X337 : term,X338 : term] : (($true = (X335 @ X337)) & ($true = (X335 @ X338)) & ($true != (X335 @ (ap @ X338 @ X337)))) | ? [X336 : term] : (($true != (X335 @ (sub @ X336 @ X333))) & ($true = (var @ X336)))))) & (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)))))))))))) & (! [X215 : subst > term > subst > $o,X216 : term] : (? [X222 : term] : (($true = (X215 @ id @ X222 @ id)) & ($true != (X215 @ id @ (sub @ X216 @ (push @ X222 @ id)) @ id))) | ($true = (X215 @ id @ (lam @ (sub @ X216 @ (push @ one @ sh))) @ id)) | ? [X217 : subst > term > term] : (! [X219 : term,X220 : subst,X221 : subst] : ((sub @ (X217 @ X220 @ X219) @ X221) = (X217 @ (comp @ X220 @ X221) @ (sub @ X219 @ X221))) & ((X215 @ id @ (lam @ (X217 @ sh @ one)) @ id) != $true) & ! [X218 : term] : (($true = (X215 @ id @ (X217 @ id @ X218) @ id)) | ($true != (X215 @ id @ X218 @ id))))) <=> (hoasinduction_lem3aa = $true)) & ((? [X445 : term] : ((sub @ X445 @ id) != X445) | ? [X441 : term] : ! [X442 : subst > term > term] : ? [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) != (sub @ X441 @ (push @ X444 @ X443))) | ! [X446 : term,X447 : subst > term > subst > $o,X448 : term > $o] : (? [X450 : term] : (($true != (X448 @ (sub @ X446 @ (push @ X450 @ id)))) & ($true = (X448 @ X450))) | ($true = (X448 @ (lam @ X446))) | ? [X449 : term] : ((X447 @ id @ X449 @ id) != (X448 @ X449)) | ? [X451 : subst > term > term] : (! [X452 : term] : (($true = (X447 @ id @ (X451 @ id @ X452) @ id)) | ($true != (X447 @ id @ X452 @ id))) & ! [X453 : subst,X454 : subst,X455 : term] : ((sub @ (X451 @ X453 @ X455) @ X454) = (X451 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))) & ($true != (X447 @ id @ (lam @ (X451 @ sh @ one)) @ id))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (termmset_gthm = $true) & ((termmset_lthm = $true) <=> (? [X54 : term] : ((sub @ X54 @ id) != X54) | ! [X55 : term] : ((sub @ X55 @ id) = X55))) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasapnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X223 : term] : ? [X224 : subst > term > term] : ! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226)))) & ((termmset = $true) <=> ! [X77 : term] : ((sub @ X77 @ id) = X77)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X414 : term] : ? [X415 : subst > term > term] : ! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417)))) & ((induction2_lthm = $true) <=> (? [X457 : term > $o,X458 : term,X459 : subst] : (! [X460 : term] : (($true = (X457 @ (sub @ X460 @ X459))) | ($true != (var @ X460))) & ! [X461 : term] : (($true = (X457 @ (lam @ X461))) | ? [X462 : term] : (($true != (X457 @ (sub @ X461 @ (push @ X462 @ id)))) & ($true = (X457 @ X462)))) & ($true != (X457 @ (sub @ X458 @ X459))) & ! [X463 : term,X464 : term] : (($true != (X457 @ X463)) | ($true != (X457 @ X464)) | ($true = (X457 @ (ap @ X464 @ X463))))) | ? [X456 : term] : ((sub @ X456 @ id) != X456) | ! [X465 : term,X466 : term > $o] : (? [X469 : term] : (($true = (var @ X469)) & ($true != (X466 @ X469))) | ($true = (X466 @ X465)) | ? [X467 : term,X468 : term] : (($true = (X466 @ X467)) & ((X466 @ (ap @ X467 @ X468)) != $true) & ($true = (X466 @ X468))) | ? [X470 : term] : (! [X471 : term] : (((X466 @ X471) != $true) | ($true = (X466 @ (sub @ X470 @ (push @ X471 @ id))))) & ($true != (X466 @ (lam @ X470))))))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X151 : subst > term > subst > $o] : ? [X152 : term > $o] : ! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((! [X377 : subst > term > subst > $o,X378 : term] : (? [X389 : subst,X390 : term,X391 : subst,X392 : subst] : (($true != (X377 @ X389 @ X390 @ (comp @ X392 @ X391))) & ($true = (X377 @ (comp @ X389 @ X392) @ (sub @ X390 @ X392) @ X391))) | ? [X393 : term,X394 : term] : (($true = (X377 @ id @ X394 @ id)) & ($true != (X377 @ id @ (ap @ (sub @ X394 @ id) @ X393) @ id)) & ($true = (X377 @ id @ X393 @ id))) | ($true = (X377 @ id @ X378 @ id)) | ? [X384 : subst,X385 : subst,X386 : term,X387 : subst] : (($true != (X377 @ (comp @ X384 @ X387) @ (sub @ X386 @ X387) @ X385)) & ($true = (X377 @ X384 @ X386 @ (comp @ X387 @ X385)))) | ? [X379 : subst > term > term] : (($true != (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id)) & ! [X383 : term] : (($true != (X377 @ id @ X383 @ id)) | ($true = (X377 @ id @ (X379 @ id @ X383) @ id))) & ! [X380 : term,X381 : subst,X382 : subst] : ((sub @ (X379 @ X381 @ X380) @ X382) = (X379 @ (comp @ X381 @ X382) @ (sub @ X380 @ X382)))) | ? [X388 : term] : (($true = (var @ (sub @ X388 @ id))) & ($true != (X377 @ id @ X388 @ id)))) | ? [X361 : subst > term > subst > $o,X362 : term] : (! [X372 : subst > term > term] : (((X361 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ? [X373 : term] : (($true != (X361 @ id @ (X372 @ id @ X373) @ id)) & ($true = (X361 @ id @ X373 @ id))) | ? [X374 : subst,X375 : term,X376 : subst] : ((X372 @ (comp @ X374 @ X376) @ (sub @ X375 @ X376)) != (sub @ (X372 @ X374 @ X375) @ X376))) & ($true != (X361 @ id @ (lam @ X362) @ id)) & ! [X371 : term] : (((X361 @ id @ (sub @ X362 @ (push @ X371 @ id)) @ id) = $true) | ($true != (X361 @ id @ X371 @ id))) & ! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (($true = (X361 @ X370 @ X369 @ (comp @ X367 @ X368))) | ($true != (X361 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368))) & ! [X363 : subst,X364 : term,X365 : subst,X366 : subst] : (($true = (X361 @ (comp @ X366 @ X363) @ (sub @ X364 @ X363) @ X365)) | ((X361 @ X366 @ X364 @ (comp @ X363 @ X365)) != $true))) | ? [X341 : term,X342 : term > $o] : (($true != (X342 @ X341)) & ! [X344 : term] : (? [X345 : term] : (($true != (X342 @ (sub @ X344 @ (push @ X345 @ id)))) & ($true = (X342 @ X345))) | ((X342 @ (lam @ X344)) = $true)) & ! [X343 : term] : (((var @ X343) != $true) | ($true = (X342 @ X343))) & ! [X346 : term,X347 : term] : (($true = (X342 @ (ap @ X347 @ X346))) | ($true != (X342 @ X346)) | ($true != (X342 @ X347)))) | ? [X348 : term,X349 : term,X350 : subst > term > subst > $o] : (! [X355 : term,X356 : term] : (($true != (X350 @ id @ X355 @ id)) | ($true = (X350 @ id @ (ap @ (sub @ X356 @ id) @ X355) @ id)) | ($true != (X350 @ id @ X356 @ id))) & ($true = (X350 @ id @ X348 @ id)) & ($true = (X350 @ id @ X349 @ id)) & ($true != (X350 @ id @ (ap @ X348 @ X349) @ id)) & ! [X357 : subst,X358 : subst,X359 : subst,X360 : term] : (($true = (X350 @ (comp @ X357 @ X358) @ (sub @ X360 @ X358) @ X359)) | ((X350 @ X357 @ X360 @ (comp @ X358 @ X359)) != $true)) & ! [X351 : term,X352 : subst,X353 : subst,X354 : subst] : (($true = (X350 @ X353 @ X351 @ (comp @ X352 @ X354))) | ($true != (X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352) @ X354))))) <=> (hoasinduction_lthm = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((? [X268 : term,X269 : term,X270 : term,X271 : term] : (((ap @ X268 @ X269) = (ap @ X271 @ X270)) & (X269 != X270)) | ! [X272 : term,X273 : term,X274 : term,X275 : term] : ((X272 = X273) | ((ap @ (sub @ X274 @ id) @ X272) != (ap @ (sub @ X275 @ id) @ X273)))) <=> (hoasapinj2_lthm = $true)) & (hoasinduction_lem3_gthm = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true != (X420 @ X422)) | ($true = (X421 @ one)) | ? [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) != (X421 @ X424))) | ? [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) != X418))) & ((hoasinduction_lem3 = $true) <=> ! [X227 : term,X228 : subst > term > subst > $o] : (? [X233 : term] : (($true != (X228 @ id @ (sub @ X227 @ (push @ X233 @ id)) @ id)) & ($true = (X228 @ id @ X233 @ id))) | ? [X229 : term,X230 : subst,X231 : subst,X232 : subst] : (($true = (X228 @ X230 @ X229 @ (comp @ X231 @ X232))) & ($true != (X228 @ (comp @ X230 @ X231) @ (sub @ X229 @ X231) @ X232))) | ? [X239 : subst,X240 : term,X241 : subst,X242 : subst] : (($true != (X228 @ X239 @ X240 @ (comp @ X242 @ X241))) & ($true = (X228 @ (comp @ X239 @ X242) @ (sub @ X240 @ X242) @ X241))) | ? [X234 : subst > term > term] : (! [X235 : term] : (($true != (X228 @ id @ X235 @ id)) | ($true = (X228 @ id @ (X234 @ id @ X235) @ id))) & ! [X236 : subst,X237 : subst,X238 : term] : ((sub @ (X234 @ X237 @ X238) @ X236) = (X234 @ (comp @ X237 @ X236) @ (sub @ X238 @ X236))) & ($true != (X228 @ id @ (lam @ (X234 @ sh @ one)) @ id))) | ($true = (X228 @ id @ (lam @ X227) @ id)))) & (hoasinduction_lem1 = $true) & (induction2lem_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X282 : subst > term > subst > $o,X283 : term] : (($true = (X282 @ id @ X283 @ id)) | ? [X289 : term,X290 : term] : (($true = (X282 @ id @ X289 @ id)) & ($true = (X282 @ id @ X290 @ id)) & ($true != (X282 @ id @ (ap @ (sub @ X289 @ id) @ X290) @ id))) | ? [X284 : subst > term > term] : (($true != (X282 @ id @ (lam @ (X284 @ sh @ one)) @ id)) & ! [X285 : term] : (($true = (X282 @ id @ (X284 @ id @ X285) @ id)) | ($true != (X282 @ id @ X285 @ id))) & ! [X286 : term,X287 : subst,X288 : subst] : ((sub @ (X284 @ X287 @ X286) @ X288) = (X284 @ (comp @ X287 @ X288) @ (sub @ X286 @ X288))))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasapinj1_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X293 : term > $o,X294 : subst,X295 : term] : (? [X296 : term,X297 : term] : (($true = (X293 @ X296)) & ((X293 @ X297) = $true) & ($true != (X293 @ (ap @ X297 @ X296)))) | ? [X300 : term] : (($true != (X293 @ (sub @ X300 @ X294))) & ($true = (var @ X300))) | ? [X298 : term] : (! [X299 : term] : (((X293 @ (sub @ X298 @ (push @ X299 @ id))) = $true) | ($true != (X293 @ X299))) & ($true != (X293 @ (lam @ X298)))) | ($true = (X293 @ (sub @ X295 @ X294)))) <=> (induction2lem = $true)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & ! [X6 : d_term] : (d_one = X6) & (pushprop_lem3v2 = $true) & (((! [X304 : subst] : ((comp @ X304 @ id) = X304) & ! [X303 : subst] : ((comp @ id @ X303) = X303)) | ? [X302 : subst] : ((comp @ X302 @ id) != X302) | ? [X301 : subst] : ((comp @ id @ X301) != X301)) <=> (substmonoid_lthm = $true)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) <=> ! [X425 : subst > term > subst > $o,X426 : term,X427 : term] : (($true = (X425 @ id @ (ap @ X427 @ X426) @ id)) | ? [X432 : term,X433 : term] : (($true = (X425 @ id @ X432 @ id)) & ($true != (X425 @ id @ (ap @ (sub @ X432 @ id) @ X433) @ id)) & ($true = (X425 @ id @ X433 @ id))) | ? [X434 : term,X435 : subst,X436 : subst,X437 : subst] : (($true = (X425 @ (comp @ X435 @ X437) @ (sub @ X434 @ X437) @ X436)) & ($true != (X425 @ X435 @ X434 @ (comp @ X437 @ X436)))) | ($true != (X425 @ id @ X427 @ id)) | ? [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (($true = (X425 @ X431 @ X429 @ (comp @ X428 @ X430))) & ($true != (X425 @ (comp @ X431 @ X428) @ (sub @ X429 @ X428) @ X430))) | ((X425 @ id @ X426 @ id) != $true))) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (! [X308 : term,X309 : term > $o] : (? [X313 : term] : (($true != (X309 @ (lam @ X313))) & ($true = (X309 @ X313))) | ? [X312 : term] : (($true != (X309 @ X312)) & ($true = (var @ X312))) | ($true = (X309 @ X308)) | ? [X310 : term,X311 : term] : (($true != (X309 @ (ap @ X311 @ X310))) & ($true = (X309 @ X311)) & ($true = (X309 @ X310)))) <=> (induction = $true)) & (apnotvar = $true) & (! [X52 : term] : ? [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) = (X53 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (ulamvarsh = $true) & (! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ? [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) != (sub @ (X113 @ X121 @ X120) @ X119)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ? [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) != (sub @ (X112 @ X116 @ X117) @ X118))) <=> (hoaslaminj = $true)) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)) | ? [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) != (sub @ (X1 @ X4 @ X3) @ X5))) <=> (hoaslamnotap = $true)) & (pushprop_lem1v2_gthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((apinj2 = $true) <=> ! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((d2subst @ d_id) = sh) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X122 : term,X123 : term > $o,X124 : subst] : ? [X125 : term > $o] : ! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126))) & (pushprop_lem1_gthm = $true) & ((d2subst @ d_id) = id) & (pushprop_lthm_orig = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) <=> (axscons = $true)) & (pushprop_lem2v2 = $true) & (pushprop = $true) & (hoasapnotvar_gthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) != (d2subst @ X75)) | (X75 = X76)) & (axabs = $true) & ! [X321 : d_subst] : (d_id = X321) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotvar_lthm = $true) & (! [X162 : subst > term > subst > $o,X163 : term] : (? [X173 : term] : (($true != (X162 @ id @ (sub @ X163 @ (push @ X173 @ id)) @ id)) & ((X162 @ id @ X173 @ id) = $true)) | ? [X164 : subst > term > term,X165 : term] : (! [X166 : subst,X167 : term,X168 : subst] : ((sub @ (X164 @ X168 @ X167) @ X166) = (sub @ (sub @ X165 @ (push @ X167 @ X168)) @ X166)) & ((X162 @ id @ (lam @ (X164 @ sh @ one)) @ id) != $true) & ! [X169 : subst,X170 : term,X171 : subst] : ((sub @ X165 @ (push @ (sub @ X170 @ X169) @ (comp @ X171 @ X169))) = (X164 @ (comp @ X171 @ X169) @ (sub @ X170 @ X169))) & ! [X172 : term] : (($true = (X162 @ id @ (X164 @ id @ X172) @ id)) | ($true != (X162 @ id @ X172 @ id)))) | ($true = (X162 @ id @ (lam @ (sub @ X163 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) <=> (substmonoid = $true)) & (ulamvarind = $true) & (lamnotvar = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) != (d2term @ X280)) | (X280 = X281)) & ((? [X487 : term,X488 : subst > term > subst > $o,X489 : term > $o] : (! [X491 : subst > term > term] : (($true = (X488 @ id @ (lam @ (X491 @ sh @ one)) @ id)) | ? [X492 : term] : (($true != (X488 @ id @ (X491 @ id @ X492) @ id)) & ($true = (X488 @ id @ X492 @ id))) | ? [X493 : term,X494 : subst,X495 : subst] : ((X491 @ (comp @ X495 @ X494) @ (sub @ X493 @ X494)) != (sub @ (X491 @ X495 @ X493) @ X494))) & ((X489 @ (lam @ X487)) != $true) & ! [X490 : term] : (($true != (X489 @ X490)) | ($true = (X489 @ (sub @ X487 @ (push @ X490 @ id))))) & ! [X496 : term] : ((X488 @ id @ X496 @ id) = (X489 @ X496))) | ? [X479 : term > $o,X480 : term] : (! [X483 : term] : (((var @ X483) != $true) | ($true = (X479 @ X483))) & ($true != (X479 @ X480)) & ! [X484 : term,X485 : term] : (($true != (X479 @ X485)) | ($true = (X479 @ (ap @ X485 @ X484))) | ((X479 @ X484) != $true)) & ! [X481 : term] : (($true = (X479 @ (lam @ X481))) | ? [X482 : term] : (($true != (X479 @ (sub @ X481 @ (push @ X482 @ id)))) & ($true = (X479 @ X482))))) | ? [X476 : subst > term > subst > $o] : ! [X477 : term > $o] : ? [X478 : term] : ((X476 @ id @ X478 @ id) != (X477 @ X478)) | ! [X497 : term,X498 : subst > term > subst > $o] : (? [X510 : subst,X511 : term,X512 : subst,X513 : subst] : (($true != (X498 @ X513 @ X511 @ (comp @ X512 @ X510))) & ($true = (X498 @ (comp @ X513 @ X512) @ (sub @ X511 @ X512) @ X510))) | ($true = (X498 @ id @ X497 @ id)) | ? [X506 : subst,X507 : subst,X508 : term,X509 : subst] : (($true != (X498 @ (comp @ X509 @ X507) @ (sub @ X508 @ X507) @ X506)) & ($true = (X498 @ X509 @ X508 @ (comp @ X507 @ X506)))) | ? [X514 : term] : (($true != (X498 @ id @ X514 @ id)) & ($true = (var @ (sub @ X514 @ id)))) | ? [X499 : subst > term > term] : (! [X500 : term,X501 : subst,X502 : subst] : ((X499 @ (comp @ X502 @ X501) @ (sub @ X500 @ X501)) = (sub @ (X499 @ X502 @ X500) @ X501)) & ($true != (X498 @ id @ (lam @ (X499 @ sh @ one)) @ id)) & ! [X503 : term] : (($true != (X498 @ id @ X503 @ id)) | ($true = (X498 @ id @ (X499 @ id @ X503) @ id)))) | ? [X504 : term,X505 : term] : (($true = (X498 @ id @ X504 @ id)) & ($true = (X498 @ id @ X505 @ id)) & ($true != (X498 @ id @ (ap @ (sub @ X504 @ id) @ X505) @ id)))) | ? [X486 : term] : ((sub @ X486 @ id) != X486)) <=> (hoasinduction_lthm_3 = $true)) & (hoaslamnotap_gthm = $true) & (axapp = $true) & (pushprop_lem2v2_lthm = $true) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & ((hoasinduction_lem3b = $true) <=> ! [X438 : term] : ? [X439 : subst > term > term] : ((X439 @ sh @ one) = (sub @ X438 @ (push @ one @ sh)))) & ((axidl = $true) <=> ! [X440 : subst] : ((comp @ id @ X440) = X440)) & ((pushprop_lem1 = $true) <=> ! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & ((pushprop_lem1_lthm = $true) <=> (? [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) != X128) | ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) | ? [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) != X129))) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) <=> (apinj1 = $true)) & (hoasinduction_lem3b_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ? [X41 : term > $o] : ! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & (hoaslamnotvar_gthm = $true) & ((axvarid = $true) <=> ! [X214 : term] : ((sub @ X214 @ id) = X214)) & (axmap = $true) & (! [X78 : term,X79 : subst > term > subst > $o] : (? [X89 : term] : (($true != (X79 @ id @ X89 @ id)) & ($true = (var @ (sub @ X89 @ id)))) | ? [X94 : term,X95 : term] : (($true = (X79 @ id @ X95 @ id)) & ($true != (X79 @ id @ (ap @ (sub @ X94 @ id) @ X95) @ id)) & ($true = (X79 @ id @ X94 @ id))) | ? [X90 : subst,X91 : subst,X92 : subst,X93 : term] : (($true != (X79 @ X91 @ X93 @ (comp @ X92 @ X90))) & ($true = (X79 @ (comp @ X91 @ X92) @ (sub @ X93 @ X92) @ X90))) | ? [X85 : subst,X86 : subst,X87 : term,X88 : subst] : (($true = (X79 @ X85 @ X87 @ (comp @ X86 @ X88))) & ((X79 @ (comp @ X85 @ X86) @ (sub @ X87 @ X86) @ X88) != $true)) | ($true = (X79 @ id @ X78 @ id)) | ? [X80 : subst > term > term] : (! [X84 : term] : (((X79 @ id @ (X80 @ id @ X84) @ id) = $true) | ($true != (X79 @ id @ X84 @ id))) & ($true != (X79 @ id @ (lam @ (X80 @ sh @ one)) @ id)) & ! [X81 : subst,X82 : term,X83 : subst] : ((X80 @ (comp @ X81 @ X83) @ (sub @ X82 @ X83)) = (sub @ (X80 @ X81 @ X82) @ X83)))) <=> (hoasinduction = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X102 : subst > term > subst > $o,X103 : term > $o,X104 : term] : (($true = (X103 @ (lam @ X104))) | ? [X111 : term] : ((X102 @ id @ X111 @ id) != (X103 @ X111)) | ? [X106 : subst > term > term] : (! [X110 : term] : (($true != (X102 @ id @ X110 @ id)) | ($true = (X102 @ id @ (X106 @ id @ X110) @ id))) & ! [X107 : term,X108 : subst,X109 : subst] : ((X106 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)) = (sub @ (X106 @ X109 @ X107) @ X108)) & ($true != (X102 @ id @ (lam @ (X106 @ sh @ one)) @ id))) | ? [X105 : term] : (($true != (X103 @ (sub @ X104 @ (push @ X105 @ id)))) & ($true = (X103 @ X105))))) & (hoasapinj2_gthm = $true) & (lamnotap != $true) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) <=> (axshiftcons = $true)) & (hoasinduction_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (induction2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (! [X154 : subst > term > subst > $o,X155 : term] : (? [X156 : subst > term > term] : (! [X157 : term] : (($true != (X154 @ id @ X157 @ id)) | ($true = (X154 @ id @ (X156 @ id @ X157) @ id))) & ! [X158 : term,X159 : subst,X160 : subst] : ((X156 @ (comp @ X159 @ X160) @ (sub @ X158 @ X160)) = (sub @ (X156 @ X159 @ X158) @ X160)) & ($true != (X154 @ id @ (lam @ (X156 @ sh @ one)) @ id))) | ? [X161 : term] : (((X154 @ id @ (sub @ X155 @ (push @ X161 @ id)) @ id) != $true) & ($true = (X154 @ id @ X161 @ id))) | ($true = (X154 @ id @ (lam @ (sub @ X155 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa_lthm = $true)) & (axvarshift = $true) & ((hoasapinj1 = $true) <=> ! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474)))) & (pushprop_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X305 : subst > term > subst > $o] : ? [X306 : term > $o] : ! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307)) <=> (hoasinduction_lem0 = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true = (X316 @ one)) | ? [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) != (X316 @ X320)) | ($true != (X317 @ X318)))) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) <=> (axidr = $true)) & (pushprop_gthm = $true) & ((hoaslaminj_lthm = $true) <=> (? [X517 : subst,X518 : term] : ((comp @ sh @ (push @ X518 @ X517)) != X517) | ! [X521 : subst > term > term,X522 : subst,X523 : subst > term > term,X524 : term] : (? [X525 : subst,X526 : term,X527 : subst] : ((X523 @ (comp @ X527 @ X525) @ (sub @ X526 @ X525)) != (sub @ (X523 @ X527 @ X526) @ X525)) | ((X521 @ X522 @ X524) = (X523 @ X522 @ X524)) | ? [X528 : term,X529 : subst,X530 : subst] : ((sub @ (X521 @ X529 @ X528) @ X530) != (X521 @ (comp @ X529 @ X530) @ (sub @ X528 @ X530))) | ((lam @ (X523 @ sh @ one)) != (lam @ (X521 @ sh @ one)))) | ? [X519 : term,X520 : term] : (((lam @ X520) = (lam @ X519)) & (X519 != X520)) | ? [X515 : term,X516 : subst] : ((sub @ one @ (push @ X515 @ X516)) != X515))) & (hoaslamnotvar = $true) & (hoaslaminj_gthm = $true) & ((hoasapinj2 = $true) <=> ! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (? [X184 : term] : ((sub @ X184 @ id) != X184) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176)) | ! [X195 : term,X196 : subst > term > subst > $o] : (? [X199 : subst > term > term] : (! [X201 : term,X202 : subst,X203 : subst] : ((X199 @ (comp @ X202 @ X203) @ (sub @ X201 @ X203)) = (sub @ (X199 @ X202 @ X201) @ X203)) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X200 : term] : (($true = (X196 @ id @ (X199 @ id @ X200) @ id)) | ($true != (X196 @ id @ X200 @ id)))) | ($true = (X196 @ id @ X195 @ id)) | ? [X197 : term,X198 : term] : (($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ($true = (X196 @ id @ X198 @ id)) & ($true = (X196 @ id @ X197 @ id)))) | ? [X185 : subst > term > subst > $o,X186 : term,X187 : term > $o] : (! [X189 : term] : (($true != (X187 @ X189)) | ($true = (X187 @ (sub @ X186 @ (push @ X189 @ id))))) & ! [X188 : term] : ((X185 @ id @ X188 @ id) = (X187 @ X188)) & ! [X190 : subst > term > term] : (($true = (X185 @ id @ (lam @ (X190 @ sh @ one)) @ id)) | ? [X194 : term] : (($true != (X185 @ id @ (X190 @ id @ X194) @ id)) & ($true = (X185 @ id @ X194 @ id))) | ? [X191 : term,X192 : subst,X193 : subst] : ((X190 @ (comp @ X193 @ X192) @ (sub @ X191 @ X192)) != (sub @ (X190 @ X193 @ X191) @ X192))) & ($true != (X187 @ (lam @ X186)))) | ? [X177 : term,X178 : term > $o] : (! [X181 : term] : (($true != (var @ X181)) | ($true = (X178 @ X181))) & ! [X182 : term] : (? [X183 : term] : (($true != (X178 @ (sub @ X182 @ (push @ X183 @ id)))) & ($true = (X178 @ X183))) | ($true = (X178 @ (lam @ X182)))) & ! [X179 : term,X180 : term] : (($true != (X178 @ X179)) | ($true != (X178 @ X180)) | ($true = (X178 @ (ap @ X179 @ X180)))) & ($true != (X178 @ X177))))) & ((! [X67 : subst > term > subst > $o,X68 : term] : (($true = (X67 @ id @ (lam @ X68) @ id)) | ? [X70 : subst > term > term] : (! [X72 : subst,X73 : subst,X74 : term] : ((sub @ (X70 @ X73 @ X74) @ X72) = (X70 @ (comp @ X73 @ X72) @ (sub @ X74 @ X72))) & ($true != (X67 @ id @ (lam @ (X70 @ sh @ one)) @ id)) & ! [X71 : term] : (($true = (X67 @ id @ (X70 @ id @ X71) @ id)) | ($true != (X67 @ id @ X71 @ id)))) | ? [X69 : term] : (($true != (X67 @ id @ (sub @ X68 @ (push @ X69 @ id)) @ id)) & ($true = (X67 @ id @ X69 @ id)))) | ? [X59 : term,X60 : subst > term > subst > $o] : (! [X61 : subst > term > term] : (($true = (X60 @ id @ (lam @ (X61 @ sh @ one)) @ id)) | ? [X63 : term,X64 : subst,X65 : subst] : ((sub @ (X61 @ X65 @ X63) @ X64) != (X61 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64))) | ? [X62 : term] : (($true != (X60 @ id @ (X61 @ id @ X62) @ id)) & ($true = (X60 @ id @ X62 @ id)))) & ! [X66 : term] : (($true != (X60 @ id @ X66 @ id)) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X66 @ id)) @ id))) & ($true != (X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id))) | ? [X58 : term] : ((sub @ X58 @ id) != X58)) <=> (hoasinduction_lem3a_lthm = $true)) & (hoasinduction_lem1_lthm = $true)),
% 2.47/1.94    inference(flattening,[status(thm)],[f13])).
% 2.47/1.94  thf(f13,plain,(
% 2.47/1.94    ((pushprop_lem1_lthm = $true) <=> ((! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131))))) | ? [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) != X129)) | ? [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) != X128))) & (hoasinduction_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ? [X41 : term > $o] : ! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & ((induction2 = $true) <=> ! [X45 : term,X46 : term > $o] : (? [X49 : term,X50 : term] : (($true != (X46 @ (ap @ X49 @ X50))) & ($true = (X46 @ X50)) & ($true = (X46 @ X49))) | ? [X51 : term] : (($true != (X46 @ X51)) & ($true = (var @ X51))) | ? [X47 : term] : (! [X48 : term] : (($true != (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id))))) & ($true != (X46 @ (lam @ X47)))) | ($true = (X46 @ X45)))) & ((axvarid = $true) <=> ! [X214 : term] : ((sub @ X214 @ id) = X214)) & (! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ? [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) != (sub @ (X113 @ X121 @ X120) @ X119)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ? [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) != (sub @ (X112 @ X116 @ X117) @ X118))) <=> (hoaslaminj = $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (ulamvar1 != $true) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) <=> (axshiftcons = $true)) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasapnotvar = $true) & ((d2subst @ d_id) = sh) & (((((! [X195 : term,X196 : subst > term > subst > $o] : (? [X199 : subst > term > term] : (! [X201 : term,X202 : subst,X203 : subst] : ((X199 @ (comp @ X202 @ X203) @ (sub @ X201 @ X203)) = (sub @ (X199 @ X202 @ X201) @ X203)) & ($true != (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) & ! [X200 : term] : (($true = (X196 @ id @ (X199 @ id @ X200) @ id)) | ($true != (X196 @ id @ X200 @ id)))) | ($true = (X196 @ id @ X195 @ id)) | ? [X197 : term,X198 : term] : (($true != (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) & ($true = (X196 @ id @ X198 @ id)) & ($true = (X196 @ id @ X197 @ id)))) | ? [X185 : subst > term > subst > $o,X186 : term,X187 : term > $o] : (! [X189 : term] : (($true != (X187 @ X189)) | ($true = (X187 @ (sub @ X186 @ (push @ X189 @ id))))) & ! [X188 : term] : ((X185 @ id @ X188 @ id) = (X187 @ X188)) & ! [X190 : subst > term > term] : (($true = (X185 @ id @ (lam @ (X190 @ sh @ one)) @ id)) | ? [X194 : term] : (($true != (X185 @ id @ (X190 @ id @ X194) @ id)) & ($true = (X185 @ id @ X194 @ id))) | ? [X191 : term,X192 : subst,X193 : subst] : ((X190 @ (comp @ X193 @ X192) @ (sub @ X191 @ X192)) != (sub @ (X190 @ X193 @ X191) @ X192))) & ($true != (X187 @ (lam @ X186))))) | ? [X184 : term] : ((sub @ X184 @ id) != X184)) | ? [X177 : term,X178 : term > $o] : (! [X181 : term] : (($true != (var @ X181)) | ($true = (X178 @ X181))) & ! [X182 : term] : (? [X183 : term] : (($true != (X178 @ (sub @ X182 @ (push @ X183 @ id)))) & ($true = (X178 @ X183))) | ($true = (X178 @ (lam @ X182)))) & ! [X179 : term,X180 : term] : (($true != (X178 @ X179)) | ($true != (X178 @ X180)) | ($true = (X178 @ (ap @ X179 @ X180)))) & ($true != (X178 @ X177)))) | ? [X174 : subst > term > subst > $o] : ! [X175 : term > $o] : ? [X176 : term] : ((X174 @ id @ X176 @ id) != (X175 @ X176))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) <=> (axscons = $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) <=> (apinj1 = $true)) & (((! [X67 : subst > term > subst > $o,X68 : term] : (($true = (X67 @ id @ (lam @ X68) @ id)) | ? [X70 : subst > term > term] : (! [X72 : subst,X73 : subst,X74 : term] : ((sub @ (X70 @ X73 @ X74) @ X72) = (X70 @ (comp @ X73 @ X72) @ (sub @ X74 @ X72))) & ($true != (X67 @ id @ (lam @ (X70 @ sh @ one)) @ id)) & ! [X71 : term] : (($true = (X67 @ id @ (X70 @ id @ X71) @ id)) | ($true != (X67 @ id @ X71 @ id)))) | ? [X69 : term] : (($true != (X67 @ id @ (sub @ X68 @ (push @ X69 @ id)) @ id)) & ($true = (X67 @ id @ X69 @ id)))) | ? [X59 : term,X60 : subst > term > subst > $o] : (! [X61 : subst > term > term] : (($true = (X60 @ id @ (lam @ (X61 @ sh @ one)) @ id)) | ? [X63 : term,X64 : subst,X65 : subst] : ((sub @ (X61 @ X65 @ X63) @ X64) != (X61 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64))) | ? [X62 : term] : (($true != (X60 @ id @ (X61 @ id @ X62) @ id)) & ($true = (X60 @ id @ X62 @ id)))) & ! [X66 : term] : (($true != (X60 @ id @ X66 @ id)) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X66 @ id)) @ id))) & ($true != (X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id)))) | ? [X58 : term] : ((sub @ X58 @ id) != X58)) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X136 : term > $o,X137 : term,X138 : term,X139 : subst > term > subst > $o] : (($true != (X136 @ X138)) | ($true = (X136 @ (ap @ X137 @ X138))) | ? [X140 : term,X141 : term] : (($true = (X139 @ id @ X141 @ id)) & ($true = (X139 @ id @ X140 @ id)) & ($true != (X139 @ id @ (ap @ (sub @ X141 @ id) @ X140) @ id))) | ? [X147 : subst,X148 : subst,X149 : subst,X150 : term] : (($true != (X139 @ X147 @ X150 @ (comp @ X149 @ X148))) & ($true = (X139 @ (comp @ X147 @ X149) @ (sub @ X150 @ X149) @ X148))) | ? [X143 : subst,X144 : subst,X145 : term,X146 : subst] : (($true = (X139 @ X143 @ X145 @ (comp @ X146 @ X144))) & ($true != (X139 @ (comp @ X143 @ X146) @ (sub @ X145 @ X146) @ X144))) | ? [X142 : term] : ((X136 @ X142) != (X139 @ id @ X142 @ id)) | ($true != (X136 @ X137))) <=> (hoasinduction_lem2v2 = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X293 : term > $o,X294 : subst,X295 : term] : (? [X296 : term,X297 : term] : (($true = (X293 @ X296)) & ((X293 @ X297) = $true) & ($true != (X293 @ (ap @ X297 @ X296)))) | ? [X300 : term] : (($true != (X293 @ (sub @ X300 @ X294))) & ($true = (var @ X300))) | ? [X298 : term] : (! [X299 : term] : (((X293 @ (sub @ X298 @ (push @ X299 @ id))) = $true) | ($true != (X293 @ X299))) & ($true != (X293 @ (lam @ X298)))) | ($true = (X293 @ (sub @ X295 @ X294)))) <=> (induction2lem = $true)) & ((d2subst @ d_id) = id) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasapinj1_lthm = $true) <=> ((! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ (sub @ X536 @ id) @ X539) != (ap @ (sub @ X537 @ id) @ X538)) | (X536 = X537)) | ? [X532 : term,X533 : term,X534 : term,X535 : term] : ((X533 != X534) & ((ap @ X534 @ X535) = (ap @ X533 @ X532)))) | ? [X531 : term] : ((sub @ X531 @ id) != X531))) & (((! [X252 : term,X253 : subst > term > subst > $o] : (($true = (X253 @ id @ (lam @ X252) @ id)) | ? [X258 : subst,X259 : subst,X260 : subst,X261 : term] : (($true != (X253 @ (comp @ X260 @ X258) @ (sub @ X261 @ X258) @ X259)) & ($true = (X253 @ X260 @ X261 @ (comp @ X258 @ X259)))) | ? [X262 : term] : (($true = (X253 @ id @ X262 @ id)) & ($true != (X253 @ id @ (sub @ X252 @ (push @ X262 @ id)) @ id))) | ? [X263 : subst > term > term] : (! [X265 : subst,X266 : term,X267 : subst] : ((sub @ (X263 @ X267 @ X266) @ X265) = (X263 @ (comp @ X267 @ X265) @ (sub @ X266 @ X265))) & ! [X264 : term] : (($true = (X253 @ id @ (X263 @ id @ X264) @ id)) | ($true != (X253 @ id @ X264 @ id))) & ($true != (X253 @ id @ (lam @ (X263 @ sh @ one)) @ id))) | ? [X254 : term,X255 : subst,X256 : subst,X257 : subst] : (($true != (X253 @ X256 @ X254 @ (comp @ X257 @ X255))) & ($true = (X253 @ (comp @ X256 @ X257) @ (sub @ X254 @ X257) @ X255)))) | ? [X244 : subst > term > subst > $o,X245 : term] : (((X244 @ id @ (lam @ (sub @ X245 @ (push @ one @ sh))) @ id) != $true) & ! [X247 : subst > term > term] : (? [X248 : subst,X249 : term,X250 : subst] : ((sub @ (X247 @ X248 @ X249) @ X250) != (X247 @ (comp @ X248 @ X250) @ (sub @ X249 @ X250))) | ? [X251 : term] : (($true = (X244 @ id @ X251 @ id)) & ($true != (X244 @ id @ (X247 @ id @ X251) @ id))) | ((X244 @ id @ (lam @ (X247 @ sh @ one)) @ id) = $true)) & ! [X246 : term] : (($true != (X244 @ id @ X246 @ id)) | ($true = (X244 @ id @ (sub @ X245 @ (push @ X246 @ id)) @ id))))) | ? [X243 : term] : ((sub @ X243 @ id) != X243)) <=> (hoasinduction_lem3_lthm = $true)) & (axassoc = $true) & (hoasapnotvar_gthm = $true) & (one = (d2term @ d_one)) & (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)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axvarshift = $true) & (hoasapinj1_gthm = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) != (d2term @ X280)) | (X280 = X281)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X414 : term] : ? [X415 : subst > term > term] : ! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417)))) & ((((! [X304 : subst] : ((comp @ X304 @ id) = X304) & ! [X303 : subst] : ((comp @ id @ X303) = X303)) | ? [X302 : subst] : ((comp @ X302 @ id) != X302)) | ? [X301 : subst] : ((comp @ id @ X301) != X301)) <=> (substmonoid_lthm = $true)) & (hoasinduction_lem1_lthm = $true) & ((hoasinduction_lthm = $true) <=> (((! [X377 : subst > term > subst > $o,X378 : term] : (? [X389 : subst,X390 : term,X391 : subst,X392 : subst] : (($true != (X377 @ X389 @ X390 @ (comp @ X392 @ X391))) & ($true = (X377 @ (comp @ X389 @ X392) @ (sub @ X390 @ X392) @ X391))) | ? [X393 : term,X394 : term] : (($true = (X377 @ id @ X394 @ id)) & ($true != (X377 @ id @ (ap @ (sub @ X394 @ id) @ X393) @ id)) & ($true = (X377 @ id @ X393 @ id))) | ($true = (X377 @ id @ X378 @ id)) | ? [X384 : subst,X385 : subst,X386 : term,X387 : subst] : (($true != (X377 @ (comp @ X384 @ X387) @ (sub @ X386 @ X387) @ X385)) & ($true = (X377 @ X384 @ X386 @ (comp @ X387 @ X385)))) | ? [X379 : subst > term > term] : (($true != (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id)) & ! [X383 : term] : (($true != (X377 @ id @ X383 @ id)) | ($true = (X377 @ id @ (X379 @ id @ X383) @ id))) & ! [X380 : term,X381 : subst,X382 : subst] : ((sub @ (X379 @ X381 @ X380) @ X382) = (X379 @ (comp @ X381 @ X382) @ (sub @ X380 @ X382)))) | ? [X388 : term] : (($true = (var @ (sub @ X388 @ id))) & ($true != (X377 @ id @ X388 @ id)))) | ? [X361 : subst > term > subst > $o,X362 : term] : (! [X372 : subst > term > term] : (((X361 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ? [X373 : term] : (($true != (X361 @ id @ (X372 @ id @ X373) @ id)) & ($true = (X361 @ id @ X373 @ id))) | ? [X374 : subst,X375 : term,X376 : subst] : ((X372 @ (comp @ X374 @ X376) @ (sub @ X375 @ X376)) != (sub @ (X372 @ X374 @ X375) @ X376))) & ($true != (X361 @ id @ (lam @ X362) @ id)) & ! [X371 : term] : (((X361 @ id @ (sub @ X362 @ (push @ X371 @ id)) @ id) = $true) | ($true != (X361 @ id @ X371 @ id))) & ! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (($true = (X361 @ X370 @ X369 @ (comp @ X367 @ X368))) | ($true != (X361 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368))) & ! [X363 : subst,X364 : term,X365 : subst,X366 : subst] : (($true = (X361 @ (comp @ X366 @ X363) @ (sub @ X364 @ X363) @ X365)) | ((X361 @ X366 @ X364 @ (comp @ X363 @ X365)) != $true)))) | ? [X348 : term,X349 : term,X350 : subst > term > subst > $o] : (! [X355 : term,X356 : term] : (($true != (X350 @ id @ X355 @ id)) | ($true = (X350 @ id @ (ap @ (sub @ X356 @ id) @ X355) @ id)) | ($true != (X350 @ id @ X356 @ id))) & ($true = (X350 @ id @ X348 @ id)) & ($true = (X350 @ id @ X349 @ id)) & ($true != (X350 @ id @ (ap @ X348 @ X349) @ id)) & ! [X357 : subst,X358 : subst,X359 : subst,X360 : term] : (($true = (X350 @ (comp @ X357 @ X358) @ (sub @ X360 @ X358) @ X359)) | ((X350 @ X357 @ X360 @ (comp @ X358 @ X359)) != $true)) & ! [X351 : term,X352 : subst,X353 : subst,X354 : subst] : (($true = (X350 @ X353 @ X351 @ (comp @ X352 @ X354))) | ($true != (X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352) @ X354))))) | ? [X341 : term,X342 : term > $o] : (($true != (X342 @ X341)) & ! [X344 : term] : (? [X345 : term] : (($true != (X342 @ (sub @ X344 @ (push @ X345 @ id)))) & ($true = (X342 @ X345))) | ((X342 @ (lam @ X344)) = $true)) & ! [X343 : term] : (((var @ X343) != $true) | ($true = (X342 @ X343))) & ! [X346 : term,X347 : term] : (($true = (X342 @ (ap @ X347 @ X346))) | ($true != (X342 @ X346)) | ($true != (X342 @ X347)))))) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) <=> (substmonoid = $true)) & (hoaslamnotvar_gthm = $true) & (hoasinduction_lem1v2_gthm = $true) & ((pushprop_lem0 = $true) <=> ! [X122 : term,X123 : term > $o,X124 : subst] : ? [X125 : term > $o] : ! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126))) & (pushprop_lem1v2_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X425 : subst > term > subst > $o,X426 : term,X427 : term] : (($true = (X425 @ id @ (ap @ X427 @ X426) @ id)) | ? [X432 : term,X433 : term] : (($true = (X425 @ id @ X432 @ id)) & ($true != (X425 @ id @ (ap @ (sub @ X432 @ id) @ X433) @ id)) & ($true = (X425 @ id @ X433 @ id))) | ? [X434 : term,X435 : subst,X436 : subst,X437 : subst] : (($true = (X425 @ (comp @ X435 @ X437) @ (sub @ X434 @ X437) @ X436)) & ($true != (X425 @ X435 @ X434 @ (comp @ X437 @ X436)))) | ($true != (X425 @ id @ X427 @ id)) | ? [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (($true = (X425 @ X431 @ X429 @ (comp @ X428 @ X430))) & ($true != (X425 @ (comp @ X431 @ X428) @ (sub @ X429 @ X428) @ X430))) | ((X425 @ id @ X426 @ id) != $true))) & (axmap = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X151 : subst > term > subst > $o] : ? [X152 : term > $o] : ! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction_lem3a = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (? [X10 : subst > term > term] : (($true != (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id)) & ! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) & ! [X14 : term] : (($true != (X8 @ id @ X14 @ id)) | ($true = (X8 @ id @ (X10 @ id @ X14) @ id)))) | ($true = (X8 @ id @ (lam @ X7) @ id)) | ? [X9 : term] : (($true = (X8 @ id @ X9 @ id)) & ($true != (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))))) & ((hoasapinj2 = $true) <=> ! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209))) & (apnotvar = $true) & (hoaslamnotap_lthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) != (d2subst @ X75)) | (X75 = X76)) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) <=> (axidr = $true)) & ((hoasapinj1 = $true) <=> ! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474)))) & ((termmset = $true) <=> ! [X77 : term] : ((sub @ X77 @ id) = X77)) & (! [X52 : term] : ? [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) = (X53 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (((((! [X333 : subst,X334 : term,X335 : term > $o] : (? [X339 : term] : (! [X340 : term] : (($true = (X335 @ (sub @ X339 @ (push @ X340 @ id)))) | ((X335 @ X340) != $true)) & ($true != (X335 @ (lam @ X339)))) | ($true = (X335 @ (sub @ X334 @ X333))) | ? [X337 : term,X338 : term] : (($true = (X335 @ X337)) & ($true = (X335 @ X338)) & ($true != (X335 @ (ap @ X338 @ X337)))) | ? [X336 : term] : (($true != (X335 @ (sub @ X336 @ X333))) & ($true = (var @ X336)))) | ? [X327 : term > $o,X328 : term] : (($true != (X327 @ X328)) & ! [X329 : term] : (($true != (var @ X329)) | ($true = (X327 @ X329))) & ! [X332 : term] : (($true = (X327 @ (lam @ X332))) | ($true != (X327 @ X332))) & ! [X330 : term,X331 : term] : (($true != (X327 @ X331)) | ($true != (X327 @ X330)) | ($true = (X327 @ (ap @ X331 @ X330)))))) | ? [X326 : subst] : ((comp @ X326 @ id) != X326)) | ? [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) != X324)) | ? [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) != X323)) <=> (induction2lem_lthm = $true)) & ((hoasinduction_lem3 = $true) <=> ! [X227 : term,X228 : subst > term > subst > $o] : (? [X233 : term] : (($true != (X228 @ id @ (sub @ X227 @ (push @ X233 @ id)) @ id)) & ($true = (X228 @ id @ X233 @ id))) | ? [X229 : term,X230 : subst,X231 : subst,X232 : subst] : (($true = (X228 @ X230 @ X229 @ (comp @ X231 @ X232))) & ($true != (X228 @ (comp @ X230 @ X231) @ (sub @ X229 @ X231) @ X232))) | ? [X239 : subst,X240 : term,X241 : subst,X242 : subst] : (($true != (X228 @ X239 @ X240 @ (comp @ X242 @ X241))) & ($true = (X228 @ (comp @ X239 @ X242) @ (sub @ X240 @ X242) @ X241))) | ? [X234 : subst > term > term] : (! [X235 : term] : (($true != (X228 @ id @ X235 @ id)) | ($true = (X228 @ id @ (X234 @ id @ X235) @ id))) & ! [X236 : subst,X237 : subst,X238 : term] : ((sub @ (X234 @ X237 @ X238) @ X236) = (X234 @ (comp @ X237 @ X236) @ (sub @ X238 @ X236))) & ($true != (X228 @ id @ (lam @ (X234 @ sh @ one)) @ id))) | ($true = (X228 @ id @ (lam @ X227) @ id)))) & ((hoasinduction_lem3v2a = $true) <=> ! [X102 : subst > term > subst > $o,X103 : term > $o,X104 : term] : (($true = (X103 @ (lam @ X104))) | ? [X111 : term] : ((X102 @ id @ X111 @ id) != (X103 @ X111)) | ? [X106 : subst > term > term] : (! [X110 : term] : (($true != (X102 @ id @ X110 @ id)) | ($true = (X102 @ id @ (X106 @ id @ X110) @ id))) & ! [X107 : term,X108 : subst,X109 : subst] : ((X106 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)) = (sub @ (X106 @ X109 @ X107) @ X108)) & ($true != (X102 @ id @ (lam @ (X106 @ sh @ one)) @ id))) | ? [X105 : term] : (($true != (X103 @ (sub @ X104 @ (push @ X105 @ id)))) & ($true = (X103 @ X105))))) & ((termmset_lthm = $true) <=> (? [X54 : term] : ((sub @ X54 @ id) != X54) | ! [X55 : term] : ((sub @ X55 @ id) = X55))) & (pushprop_lem2v2 = $true) & (! [X305 : subst > term > subst > $o] : ? [X306 : term > $o] : ! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307)) <=> (hoasinduction_lem0 = $true)) & (pushprop_lem2v2_gthm = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1 = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X223 : term] : ? [X224 : subst > term > term] : ! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true != (X420 @ X422)) | ($true = (X421 @ one)) | ? [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) != (X421 @ X424))) | ? [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) != X418))) & (pushprop = $true) & (hoasapinj2_gthm = $true) & (ulamvarsh = $true) & ((hoasinduction_lem3b = $true) <=> ! [X438 : term] : ? [X439 : subst > term > term] : ((X439 @ sh @ one) = (sub @ X438 @ (push @ one @ sh)))) & (! [X282 : subst > term > subst > $o,X283 : term] : (($true = (X282 @ id @ X283 @ id)) | ? [X289 : term,X290 : term] : (($true = (X282 @ id @ X289 @ id)) & ($true = (X282 @ id @ X290 @ id)) & ($true != (X282 @ id @ (ap @ (sub @ X289 @ id) @ X290) @ id))) | ? [X284 : subst > term > term] : (($true != (X282 @ id @ (lam @ (X284 @ sh @ one)) @ id)) & ! [X285 : term] : (($true = (X282 @ id @ (X284 @ id @ X285) @ id)) | ($true != (X282 @ id @ X285 @ id))) & ! [X286 : term,X287 : subst,X288 : subst] : ((sub @ (X284 @ X287 @ X286) @ X288) = (X284 @ (comp @ X287 @ X288) @ (sub @ X286 @ X288))))) <=> (hoasinduction_no_psi_cond = $true)) & (pushprop_lem1_gthm = $true) & (((! [X446 : term,X447 : subst > term > subst > $o,X448 : term > $o] : (? [X450 : term] : (($true != (X448 @ (sub @ X446 @ (push @ X450 @ id)))) & ($true = (X448 @ X450))) | ($true = (X448 @ (lam @ X446))) | ? [X449 : term] : ((X447 @ id @ X449 @ id) != (X448 @ X449)) | ? [X451 : subst > term > term] : (! [X452 : term] : (($true = (X447 @ id @ (X451 @ id @ X452) @ id)) | ($true != (X447 @ id @ X452 @ id))) & ! [X453 : subst,X454 : subst,X455 : term] : ((sub @ (X451 @ X453 @ X455) @ X454) = (X451 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))) & ($true != (X447 @ id @ (lam @ (X451 @ sh @ one)) @ id)))) | ? [X445 : term] : ((sub @ X445 @ id) != X445)) | ? [X441 : term] : ! [X442 : subst > term > term] : ? [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) != (sub @ X441 @ (push @ X444 @ X443)))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X154 : subst > term > subst > $o,X155 : term] : (? [X156 : subst > term > term] : (! [X157 : term] : (($true != (X154 @ id @ X157 @ id)) | ($true = (X154 @ id @ (X156 @ id @ X157) @ id))) & ! [X158 : term,X159 : subst,X160 : subst] : ((X156 @ (comp @ X159 @ X160) @ (sub @ X158 @ X160)) = (sub @ (X156 @ X159 @ X158) @ X160)) & ($true != (X154 @ id @ (lam @ (X156 @ sh @ one)) @ id))) | ? [X161 : term] : (((X154 @ id @ (sub @ X155 @ (push @ X161 @ id)) @ id) != $true) & ($true = (X154 @ id @ X161 @ id))) | ($true = (X154 @ id @ (lam @ (sub @ X155 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoaslaminj_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (lamnotvar = $true) & (hoasinduction_lem1_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (axapp = $true) & (axabs = $true) & ((apinj2 = $true) <=> ! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211))) & (hoasinduction_lem3b_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ((? [X268 : term,X269 : term,X270 : term,X271 : term] : (((ap @ X268 @ X269) = (ap @ X271 @ X270)) & (X269 != X270)) | ! [X272 : term,X273 : term,X274 : term,X275 : term] : ((X272 = X273) | ((ap @ (sub @ X274 @ id) @ X272) != (ap @ (sub @ X275 @ id) @ X273)))) <=> (hoasapinj2_lthm = $true)) & ! [X321 : d_subst] : (d_id = X321) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (ulamvarind = $true) & (pushprop_lthm = $true) & ((? [X19 : term] : ((sub @ X19 @ id) != X19) | ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (($true = (X20 @ (lam @ X22))) | ? [X23 : subst > term > term] : (! [X24 : term] : (((X21 @ id @ (X23 @ id @ X24) @ id) = $true) | ($true != (X21 @ id @ X24 @ id))) & ! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) & ((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) != $true)) | ? [X28 : term] : (($true != (X20 @ (sub @ X22 @ (push @ X28 @ id)))) & ($true = (X20 @ X28))) | ? [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (($true = (X21 @ X35 @ X33 @ (comp @ X36 @ X34))) & ($true != (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34))) | ? [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true = (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29)) & ($true != (X21 @ X30 @ X32 @ (comp @ X31 @ X29)))) | ? [X37 : term] : ((X20 @ X37) != (X21 @ id @ X37 @ id)))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true = (X316 @ one)) | ? [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) != (X316 @ X320)) | ($true != (X317 @ X318)))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (pushprop_lthm_orig = $true) & (hoasapnotvar_lthm = $true) & (hoaslamnotap_gthm = $true) & (lamnotap != $true) & (termmset_gthm = $true) & (pushprop_lem3v2 = $true) & (pushprop_lem0_gthm = $true) & ((hoaslaminj_lthm = $true) <=> (((! [X521 : subst > term > term,X522 : subst,X523 : subst > term > term,X524 : term] : (? [X525 : subst,X526 : term,X527 : subst] : ((X523 @ (comp @ X527 @ X525) @ (sub @ X526 @ X525)) != (sub @ (X523 @ X527 @ X526) @ X525)) | ((X521 @ X522 @ X524) = (X523 @ X522 @ X524)) | ? [X528 : term,X529 : subst,X530 : subst] : ((sub @ (X521 @ X529 @ X528) @ X530) != (X521 @ (comp @ X529 @ X530) @ (sub @ X528 @ X530))) | ((lam @ (X523 @ sh @ one)) != (lam @ (X521 @ sh @ one)))) | ? [X519 : term,X520 : term] : (((lam @ X520) = (lam @ X519)) & (X519 != X520))) | ? [X517 : subst,X518 : term] : ((comp @ sh @ (push @ X518 @ X517)) != X517)) | ? [X515 : term,X516 : subst] : ((sub @ one @ (push @ X515 @ X516)) != X515))) & (induction2lem_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & (! [X215 : subst > term > subst > $o,X216 : term] : (? [X222 : term] : (($true = (X215 @ id @ X222 @ id)) & ($true != (X215 @ id @ (sub @ X216 @ (push @ X222 @ id)) @ id))) | ($true = (X215 @ id @ (lam @ (sub @ X216 @ (push @ one @ sh))) @ id)) | ? [X217 : subst > term > term] : (! [X219 : term,X220 : subst,X221 : subst] : ((sub @ (X217 @ X220 @ X219) @ X221) = (X217 @ (comp @ X220 @ X221) @ (sub @ X219 @ X221))) & ((X215 @ id @ (lam @ (X217 @ sh @ one)) @ id) != $true) & ! [X218 : term] : (($true = (X215 @ id @ (X217 @ id @ X218) @ id)) | ($true != (X215 @ id @ X218 @ id))))) <=> (hoasinduction_lem3aa = $true)) & (hoasinduction_lem3_gthm = $true) & ((axidl = $true) <=> ! [X440 : subst] : ((comp @ id @ X440) = X440)) & (hoaslamnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ! [X6 : d_term] : (d_one = X6) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)) | ? [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) != (sub @ (X1 @ X4 @ X3) @ X5))) <=> (hoaslamnotap = $true)) & (((((! [X497 : term,X498 : subst > term > subst > $o] : (? [X510 : subst,X511 : term,X512 : subst,X513 : subst] : (($true != (X498 @ X513 @ X511 @ (comp @ X512 @ X510))) & ($true = (X498 @ (comp @ X513 @ X512) @ (sub @ X511 @ X512) @ X510))) | ($true = (X498 @ id @ X497 @ id)) | ? [X506 : subst,X507 : subst,X508 : term,X509 : subst] : (($true != (X498 @ (comp @ X509 @ X507) @ (sub @ X508 @ X507) @ X506)) & ($true = (X498 @ X509 @ X508 @ (comp @ X507 @ X506)))) | ? [X514 : term] : (($true != (X498 @ id @ X514 @ id)) & ($true = (var @ (sub @ X514 @ id)))) | ? [X499 : subst > term > term] : (! [X500 : term,X501 : subst,X502 : subst] : ((X499 @ (comp @ X502 @ X501) @ (sub @ X500 @ X501)) = (sub @ (X499 @ X502 @ X500) @ X501)) & ($true != (X498 @ id @ (lam @ (X499 @ sh @ one)) @ id)) & ! [X503 : term] : (($true != (X498 @ id @ X503 @ id)) | ($true = (X498 @ id @ (X499 @ id @ X503) @ id)))) | ? [X504 : term,X505 : term] : (($true = (X498 @ id @ X504 @ id)) & ($true = (X498 @ id @ X505 @ id)) & ($true != (X498 @ id @ (ap @ (sub @ X504 @ id) @ X505) @ id)))) | ? [X487 : term,X488 : subst > term > subst > $o,X489 : term > $o] : (! [X491 : subst > term > term] : (($true = (X488 @ id @ (lam @ (X491 @ sh @ one)) @ id)) | ? [X492 : term] : (($true != (X488 @ id @ (X491 @ id @ X492) @ id)) & ($true = (X488 @ id @ X492 @ id))) | ? [X493 : term,X494 : subst,X495 : subst] : ((X491 @ (comp @ X495 @ X494) @ (sub @ X493 @ X494)) != (sub @ (X491 @ X495 @ X493) @ X494))) & ((X489 @ (lam @ X487)) != $true) & ! [X490 : term] : (($true != (X489 @ X490)) | ($true = (X489 @ (sub @ X487 @ (push @ X490 @ id))))) & ! [X496 : term] : ((X488 @ id @ X496 @ id) = (X489 @ X496)))) | ? [X486 : term] : ((sub @ X486 @ id) != X486)) | ? [X479 : term > $o,X480 : term] : (! [X483 : term] : (((var @ X483) != $true) | ($true = (X479 @ X483))) & ($true != (X479 @ X480)) & ! [X484 : term,X485 : term] : (($true != (X479 @ X485)) | ($true = (X479 @ (ap @ X485 @ X484))) | ((X479 @ X484) != $true)) & ! [X481 : term] : (($true = (X479 @ (lam @ X481))) | ? [X482 : term] : (($true != (X479 @ (sub @ X481 @ (push @ X482 @ id)))) & ($true = (X479 @ X482)))))) | ? [X476 : subst > term > subst > $o] : ! [X477 : term > $o] : ? [X478 : term] : ((X476 @ id @ X478 @ id) != (X477 @ X478))) <=> (hoasinduction_lthm_3 = $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X395 : term > $o,X396 : term,X397 : subst > term > subst > $o] : (? [X402 : term] : (($true != (X395 @ (sub @ X396 @ (push @ X402 @ id)))) & ($true = (X395 @ X402))) | ? [X408 : term] : ((X397 @ id @ X408 @ id) != (X395 @ X408)) | ? [X398 : subst,X399 : subst,X400 : term,X401 : subst] : (($true != (X397 @ X401 @ X400 @ (comp @ X398 @ X399))) & ((X397 @ (comp @ X401 @ X398) @ (sub @ X400 @ X398) @ X399) = $true)) | ($true = (X395 @ (lam @ X396))) | ? [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (($true != (X397 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410)) & ($true = (X397 @ X409 @ X412 @ (comp @ X411 @ X410)))) | ? [X403 : subst > term > term] : (! [X404 : subst,X405 : term,X406 : subst] : ((X403 @ (comp @ X404 @ X406) @ (sub @ X405 @ X406)) = (sub @ (X403 @ X404 @ X405) @ X406)) & ($true != (X397 @ id @ (lam @ (X403 @ sh @ one)) @ id)) & ! [X407 : term] : (($true != (X397 @ id @ X407 @ id)) | ($true = (X397 @ id @ (X403 @ id @ X407) @ id))))) <=> (hoasinduction_lem3v2 = $true)) & (! [X78 : term,X79 : subst > term > subst > $o] : (? [X89 : term] : (($true != (X79 @ id @ X89 @ id)) & ($true = (var @ (sub @ X89 @ id)))) | ? [X94 : term,X95 : term] : (($true = (X79 @ id @ X95 @ id)) & ($true != (X79 @ id @ (ap @ (sub @ X94 @ id) @ X95) @ id)) & ($true = (X79 @ id @ X94 @ id))) | ? [X90 : subst,X91 : subst,X92 : subst,X93 : term] : (($true != (X79 @ X91 @ X93 @ (comp @ X92 @ X90))) & ($true = (X79 @ (comp @ X91 @ X92) @ (sub @ X93 @ X92) @ X90))) | ? [X85 : subst,X86 : subst,X87 : term,X88 : subst] : (($true = (X79 @ X85 @ X87 @ (comp @ X86 @ X88))) & ((X79 @ (comp @ X85 @ X86) @ (sub @ X87 @ X86) @ X88) != $true)) | ($true = (X79 @ id @ X78 @ id)) | ? [X80 : subst > term > term] : (! [X84 : term] : (((X79 @ id @ (X80 @ id @ X84) @ id) = $true) | ($true != (X79 @ id @ X84 @ id))) & ($true != (X79 @ id @ (lam @ (X80 @ sh @ one)) @ id)) & ! [X81 : subst,X82 : term,X83 : subst] : ((X80 @ (comp @ X81 @ X83) @ (sub @ X82 @ X83)) = (sub @ (X80 @ X81 @ X82) @ X83)))) <=> (hoasinduction = $true)) & (! [X308 : term,X309 : term > $o] : (? [X313 : term] : (($true != (X309 @ (lam @ X313))) & ($true = (X309 @ X313))) | ? [X312 : term] : (($true != (X309 @ X312)) & ($true = (var @ X312))) | ($true = (X309 @ X308)) | ? [X310 : term,X311 : term] : (($true != (X309 @ (ap @ X311 @ X310))) & ($true = (X309 @ X311)) & ($true = (X309 @ X310)))) <=> (induction = $true)) & (! [X162 : subst > term > subst > $o,X163 : term] : (? [X173 : term] : (($true != (X162 @ id @ (sub @ X163 @ (push @ X173 @ id)) @ id)) & ((X162 @ id @ X173 @ id) = $true)) | ? [X164 : subst > term > term,X165 : term] : (! [X166 : subst,X167 : term,X168 : subst] : ((sub @ (X164 @ X168 @ X167) @ X166) = (sub @ (sub @ X165 @ (push @ X167 @ X168)) @ X166)) & ((X162 @ id @ (lam @ (X164 @ sh @ one)) @ id) != $true) & ! [X169 : subst,X170 : term,X171 : subst] : ((sub @ X165 @ (push @ (sub @ X170 @ X169) @ (comp @ X171 @ X169))) = (X164 @ (comp @ X171 @ X169) @ (sub @ X170 @ X169))) & ! [X172 : term] : (($true = (X162 @ id @ (X164 @ id @ X172) @ id)) | ($true != (X162 @ id @ X172 @ id)))) | ($true = (X162 @ id @ (lam @ (sub @ X163 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & (((! [X465 : term,X466 : term > $o] : (? [X469 : term] : (($true = (var @ X469)) & ($true != (X466 @ X469))) | ($true = (X466 @ X465)) | ? [X467 : term,X468 : term] : (($true = (X466 @ X467)) & ((X466 @ (ap @ X467 @ X468)) != $true) & ($true = (X466 @ X468))) | ? [X470 : term] : (! [X471 : term] : (((X466 @ X471) != $true) | ($true = (X466 @ (sub @ X470 @ (push @ X471 @ id))))) & ($true != (X466 @ (lam @ X470))))) | ? [X457 : term > $o,X458 : term,X459 : subst] : (! [X460 : term] : (($true = (X457 @ (sub @ X460 @ X459))) | ($true != (var @ X460))) & ! [X461 : term] : (($true = (X457 @ (lam @ X461))) | ? [X462 : term] : (($true != (X457 @ (sub @ X461 @ (push @ X462 @ id)))) & ($true = (X457 @ X462)))) & ($true != (X457 @ (sub @ X458 @ X459))) & ! [X463 : term,X464 : term] : (($true != (X457 @ X463)) | ($true != (X457 @ X464)) | ($true = (X457 @ (ap @ X464 @ X463)))))) | ? [X456 : term] : ((sub @ X456 @ id) != X456)) <=> (induction2_lthm = $true)) & (axclos = $true) & (substmonoid_gthm = $true) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & (induction2_gthm = $true) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & (pushprop_gthm = $true) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & (hoasinduction_lem2_lthm = $true)),
% 2.47/1.94    inference(ennf_transformation,[status(thm)],[f11])).
% 2.47/1.94  thf(f11,plain,(
% 2.47/1.94    ((pushprop_lem1_lthm = $true) <=> (! [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) = X128) => (! [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) = X129) => ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (((X135 @ X134) != $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131)))))))) & (hoasinduction_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ~! [X41 : term > $o] : ~! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & ((induction2 = $true) <=> ! [X45 : term,X46 : term > $o] : (~! [X51 : term] : (($true != (var @ X51)) | ($true = (X46 @ X51))) | ~! [X47 : term] : (~! [X48 : term] : (($true != (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id))))) | ($true = (X46 @ (lam @ X47)))) | ($true = (X46 @ X45)) | ~! [X49 : term,X50 : term] : (($true != (X46 @ X49)) | ($true = (X46 @ (ap @ X49 @ X50))) | ($true != (X46 @ X50))))) & ((axvarid = $true) <=> ! [X214 : term] : ((sub @ X214 @ id) = X214)) & ((hoaslaminj = $true) <=> ! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (~! [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) = (sub @ (X112 @ X116 @ X117) @ X118)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ~! [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) = (sub @ (X113 @ X121 @ X120) @ X119)))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (ulamvar1 != $true) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) <=> (axshiftcons = $true)) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasapnotvar = $true) & ((d2subst @ d_id) = sh) & ((! [X174 : subst > term > subst > $o] : ~! [X175 : term > $o] : ~! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) => (! [X177 : term,X178 : term > $o] : (~! [X179 : term,X180 : term] : (($true != (X178 @ X179)) | ($true != (X178 @ X180)) | ($true = (X178 @ (ap @ X179 @ X180)))) | ~! [X182 : term] : (($true = (X178 @ (lam @ X182))) | ~! [X183 : term] : (($true = (X178 @ (sub @ X182 @ (push @ X183 @ id)))) | ($true != (X178 @ X183)))) | ($true = (X178 @ X177)) | ~! [X181 : term] : (($true != (var @ X181)) | ($true = (X178 @ X181)))) => (! [X184 : term] : ((sub @ X184 @ id) = X184) => (! [X185 : subst > term > subst > $o,X186 : term,X187 : term > $o] : (~! [X188 : term] : ((X185 @ id @ X188 @ id) = (X187 @ X188)) | ($true = (X187 @ (lam @ X186))) | ~! [X190 : subst > term > term] : (~! [X191 : term,X192 : subst,X193 : subst] : ((X190 @ (comp @ X193 @ X192) @ (sub @ X191 @ X192)) = (sub @ (X190 @ X193 @ X191) @ X192)) | ($true = (X185 @ id @ (lam @ (X190 @ sh @ one)) @ id)) | ~! [X194 : term] : (($true != (X185 @ id @ X194 @ id)) | ($true = (X185 @ id @ (X190 @ id @ X194) @ id)))) | ~! [X189 : term] : (($true != (X187 @ X189)) | ($true = (X187 @ (sub @ X186 @ (push @ X189 @ id)))))) => ! [X195 : term,X196 : subst > term > subst > $o] : (~! [X199 : subst > term > term] : (~! [X200 : term] : (($true = (X196 @ id @ (X199 @ id @ X200) @ id)) | ($true != (X196 @ id @ X200 @ id))) | ~! [X201 : term,X202 : subst,X203 : subst] : ((X199 @ (comp @ X202 @ X203) @ (sub @ X201 @ X203)) = (sub @ (X199 @ X202 @ X201) @ X203)) | ($true = (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id))) | ($true = (X196 @ id @ X195 @ id)) | ~! [X197 : term,X198 : term] : (($true = (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id)) | ($true != (X196 @ id @ X197 @ id)) | ($true != (X196 @ id @ X198 @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) <=> (axscons = $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) <=> (apinj1 = $true)) & ((! [X58 : term] : ((sub @ X58 @ id) = X58) => (! [X59 : term,X60 : subst > term > subst > $o] : (~! [X66 : term] : (($true != (X60 @ id @ X66 @ id)) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X66 @ id)) @ id))) | ($true = (X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id)) | ~! [X61 : subst > term > term] : (($true = (X60 @ id @ (lam @ (X61 @ sh @ one)) @ id)) | ~! [X63 : term,X64 : subst,X65 : subst] : ((sub @ (X61 @ X65 @ X63) @ X64) = (X61 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64))) | ~! [X62 : term] : (($true = (X60 @ id @ (X61 @ id @ X62) @ id)) | ($true != (X60 @ id @ X62 @ id))))) => ! [X67 : subst > term > subst > $o,X68 : term] : (($true = (X67 @ id @ (lam @ X68) @ id)) | ~! [X70 : subst > term > term] : (~! [X72 : subst,X73 : subst,X74 : term] : ((sub @ (X70 @ X73 @ X74) @ X72) = (X70 @ (comp @ X73 @ X72) @ (sub @ X74 @ X72))) | ~! [X71 : term] : (($true = (X67 @ id @ (X70 @ id @ X71) @ id)) | ($true != (X67 @ id @ X71 @ id))) | ($true = (X67 @ id @ (lam @ (X70 @ sh @ one)) @ id))) | ~! [X69 : term] : (($true != (X67 @ id @ X69 @ id)) | ($true = (X67 @ id @ (sub @ X68 @ (push @ X69 @ id)) @ id)))))) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X136 : term > $o,X137 : term,X138 : term,X139 : subst > term > subst > $o] : (~! [X140 : term,X141 : term] : (($true = (X139 @ id @ (ap @ (sub @ X141 @ id) @ X140) @ id)) | ($true != (X139 @ id @ X140 @ id)) | ($true != (X139 @ id @ X141 @ id))) | ~! [X142 : term] : ((X136 @ X142) = (X139 @ id @ X142 @ id)) | ~! [X143 : subst,X144 : subst,X145 : term,X146 : subst] : (($true = (X139 @ (comp @ X143 @ X146) @ (sub @ X145 @ X146) @ X144)) | ($true != (X139 @ X143 @ X145 @ (comp @ X146 @ X144)))) | ~! [X147 : subst,X148 : subst,X149 : subst,X150 : term] : (($true = (X139 @ X147 @ X150 @ (comp @ X149 @ X148))) | ($true != (X139 @ (comp @ X147 @ X149) @ (sub @ X150 @ X149) @ X148))) | ($true = (X136 @ (ap @ X137 @ X138))) | ($true != (X136 @ X137)) | ($true != (X136 @ X138))) <=> (hoasinduction_lem2v2 = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((induction2lem = $true) <=> ! [X293 : term > $o,X294 : subst,X295 : term] : (~! [X300 : term] : (($true = (X293 @ (sub @ X300 @ X294))) | ($true != (var @ X300))) | ~! [X296 : term,X297 : term] : (((X293 @ X297) != $true) | ($true != (X293 @ X296)) | ($true = (X293 @ (ap @ X297 @ X296)))) | ~! [X298 : term] : (~! [X299 : term] : (((X293 @ (sub @ X298 @ (push @ X299 @ id))) = $true) | ($true != (X293 @ X299))) | ($true = (X293 @ (lam @ X298)))) | ($true = (X293 @ (sub @ X295 @ X294))))) & ((d2subst @ d_id) = id) & ((var @ (d2term @ d_one)) != $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((hoasapinj1_lthm = $true) <=> (! [X531 : term] : ((sub @ X531 @ id) = X531) => (! [X532 : term,X533 : term,X534 : term,X535 : term] : ((X533 = X534) | ((ap @ X534 @ X535) != (ap @ X533 @ X532))) => ! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ (sub @ X536 @ id) @ X539) != (ap @ (sub @ X537 @ id) @ X538)) | (X536 = X537))))) & ((! [X243 : term] : ((sub @ X243 @ id) = X243) => (! [X244 : subst > term > subst > $o,X245 : term] : (~! [X246 : term] : (($true != (X244 @ id @ X246 @ id)) | ($true = (X244 @ id @ (sub @ X245 @ (push @ X246 @ id)) @ id))) | ((X244 @ id @ (lam @ (sub @ X245 @ (push @ one @ sh))) @ id) = $true) | ~! [X247 : subst > term > term] : (((X244 @ id @ (lam @ (X247 @ sh @ one)) @ id) = $true) | ~! [X251 : term] : (($true = (X244 @ id @ (X247 @ id @ X251) @ id)) | ($true != (X244 @ id @ X251 @ id))) | ~! [X248 : subst,X249 : term,X250 : subst] : ((sub @ (X247 @ X248 @ X249) @ X250) = (X247 @ (comp @ X248 @ X250) @ (sub @ X249 @ X250))))) => ! [X252 : term,X253 : subst > term > subst > $o] : (~! [X254 : term,X255 : subst,X256 : subst,X257 : subst] : (($true != (X253 @ (comp @ X256 @ X257) @ (sub @ X254 @ X257) @ X255)) | ($true = (X253 @ X256 @ X254 @ (comp @ X257 @ X255)))) | ~! [X258 : subst,X259 : subst,X260 : subst,X261 : term] : (($true != (X253 @ X260 @ X261 @ (comp @ X258 @ X259))) | ($true = (X253 @ (comp @ X260 @ X258) @ (sub @ X261 @ X258) @ X259))) | ~! [X263 : subst > term > term] : (~! [X264 : term] : (($true = (X253 @ id @ (X263 @ id @ X264) @ id)) | ($true != (X253 @ id @ X264 @ id))) | ($true = (X253 @ id @ (lam @ (X263 @ sh @ one)) @ id)) | ~! [X265 : subst,X266 : term,X267 : subst] : ((sub @ (X263 @ X267 @ X266) @ X265) = (X263 @ (comp @ X267 @ X265) @ (sub @ X266 @ X265)))) | ($true = (X253 @ id @ (lam @ X252) @ id)) | ~! [X262 : term] : (($true = (X253 @ id @ (sub @ X252 @ (push @ X262 @ id)) @ id)) | ($true != (X253 @ id @ X262 @ id)))))) <=> (hoasinduction_lem3_lthm = $true)) & (axassoc = $true) & (hoasapnotvar_gthm = $true) & (one = (d2term @ d_one)) & (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)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axvarshift = $true) & (hoasapinj1_gthm = $true) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) = (d2term @ X280)) => (X280 = X281)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X414 : term] : ~! [X415 : subst > term > term] : ~! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417)))) & ((! [X301 : subst] : ((comp @ id @ X301) = X301) => (! [X302 : subst] : ((comp @ X302 @ id) = X302) => (! [X304 : subst] : ((comp @ X304 @ id) = X304) & ! [X303 : subst] : ((comp @ id @ X303) = X303)))) <=> (substmonoid_lthm = $true)) & (hoasinduction_lem1_lthm = $true) & ((hoasinduction_lthm = $true) <=> (! [X341 : term,X342 : term > $o] : (($true = (X342 @ X341)) | ~! [X346 : term,X347 : term] : (($true = (X342 @ (ap @ X347 @ X346))) | ($true != (X342 @ X346)) | ($true != (X342 @ X347))) | ~! [X344 : term] : (((X342 @ (lam @ X344)) = $true) | ~! [X345 : term] : (($true = (X342 @ (sub @ X344 @ (push @ X345 @ id)))) | ($true != (X342 @ X345)))) | ~! [X343 : term] : (((var @ X343) != $true) | ($true = (X342 @ X343)))) => (! [X348 : term,X349 : term,X350 : subst > term > subst > $o] : (($true != (X350 @ id @ X348 @ id)) | ~! [X357 : subst,X358 : subst,X359 : subst,X360 : term] : (($true = (X350 @ (comp @ X357 @ X358) @ (sub @ X360 @ X358) @ X359)) | ((X350 @ X357 @ X360 @ (comp @ X358 @ X359)) != $true)) | ($true = (X350 @ id @ (ap @ X348 @ X349) @ id)) | ~! [X355 : term,X356 : term] : (($true != (X350 @ id @ X355 @ id)) | ($true = (X350 @ id @ (ap @ (sub @ X356 @ id) @ X355) @ id)) | ($true != (X350 @ id @ X356 @ id))) | ~! [X351 : term,X352 : subst,X353 : subst,X354 : subst] : (($true = (X350 @ X353 @ X351 @ (comp @ X352 @ X354))) | ($true != (X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352) @ X354))) | ($true != (X350 @ id @ X349 @ id))) => (! [X361 : subst > term > subst > $o,X362 : term] : (~! [X363 : subst,X364 : term,X365 : subst,X366 : subst] : (($true = (X361 @ (comp @ X366 @ X363) @ (sub @ X364 @ X363) @ X365)) | ((X361 @ X366 @ X364 @ (comp @ X363 @ X365)) != $true)) | ~! [X371 : term] : (((X361 @ id @ (sub @ X362 @ (push @ X371 @ id)) @ id) = $true) | ($true != (X361 @ id @ X371 @ id))) | ~! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (($true = (X361 @ X370 @ X369 @ (comp @ X367 @ X368))) | ($true != (X361 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368))) | ($true = (X361 @ id @ (lam @ X362) @ id)) | ~! [X372 : subst > term > term] : (((X361 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ~! [X373 : term] : (($true != (X361 @ id @ X373 @ id)) | ($true = (X361 @ id @ (X372 @ id @ X373) @ id))) | ~! [X374 : subst,X375 : term,X376 : subst] : ((X372 @ (comp @ X374 @ X376) @ (sub @ X375 @ X376)) = (sub @ (X372 @ X374 @ X375) @ X376)))) => ! [X377 : subst > term > subst > $o,X378 : term] : (($true = (X377 @ id @ X378 @ id)) | ~! [X384 : subst,X385 : subst,X386 : term,X387 : subst] : (($true != (X377 @ X384 @ X386 @ (comp @ X387 @ X385))) | ($true = (X377 @ (comp @ X384 @ X387) @ (sub @ X386 @ X387) @ X385))) | ~! [X388 : term] : (($true != (var @ (sub @ X388 @ id))) | ($true = (X377 @ id @ X388 @ id))) | ~! [X393 : term,X394 : term] : (($true != (X377 @ id @ X394 @ id)) | ($true != (X377 @ id @ X393 @ id)) | ($true = (X377 @ id @ (ap @ (sub @ X394 @ id) @ X393) @ id))) | ~! [X379 : subst > term > term] : (~! [X383 : term] : (($true != (X377 @ id @ X383 @ id)) | ($true = (X377 @ id @ (X379 @ id @ X383) @ id))) | ~! [X380 : term,X381 : subst,X382 : subst] : ((sub @ (X379 @ X381 @ X380) @ X382) = (X379 @ (comp @ X381 @ X382) @ (sub @ X380 @ X382))) | ($true = (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id))) | ~! [X389 : subst,X390 : term,X391 : subst,X392 : subst] : (($true != (X377 @ (comp @ X389 @ X392) @ (sub @ X390 @ X392) @ X391)) | ($true = (X377 @ X389 @ X390 @ (comp @ X392 @ X391))))))))) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) <=> (substmonoid = $true)) & (hoaslamnotvar_gthm = $true) & (hoasinduction_lem1v2_gthm = $true) & ((pushprop_lem0 = $true) <=> ! [X122 : term,X123 : term > $o,X124 : subst] : ~! [X125 : term > $o] : ~! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126))) & (pushprop_lem1v2_gthm = $true) & (! [X425 : subst > term > subst > $o,X426 : term,X427 : term] : (($true = (X425 @ id @ (ap @ X427 @ X426) @ id)) | ($true != (X425 @ id @ X427 @ id)) | ~! [X432 : term,X433 : term] : (($true != (X425 @ id @ X432 @ id)) | ($true != (X425 @ id @ X433 @ id)) | ($true = (X425 @ id @ (ap @ (sub @ X432 @ id) @ X433) @ id))) | ((X425 @ id @ X426 @ id) != $true) | ~! [X434 : term,X435 : subst,X436 : subst,X437 : subst] : (($true = (X425 @ X435 @ X434 @ (comp @ X437 @ X436))) | ($true != (X425 @ (comp @ X435 @ X437) @ (sub @ X434 @ X437) @ X436))) | ~! [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (($true != (X425 @ X431 @ X429 @ (comp @ X428 @ X430))) | ($true = (X425 @ (comp @ X431 @ X428) @ (sub @ X429 @ X428) @ X430)))) <=> (hoasinduction_lem2 = $true)) & (axmap = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X151 : subst > term > subst > $o] : ~! [X152 : term > $o] : ~! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction_lem3a = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (~! [X10 : subst > term > term] : (~! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) | ~! [X14 : term] : (($true != (X8 @ id @ X14 @ id)) | ($true = (X8 @ id @ (X10 @ id @ X14) @ id))) | ($true = (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id))) | ~! [X9 : term] : (($true != (X8 @ id @ X9 @ id)) | ($true = (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))) | ($true = (X8 @ id @ (lam @ X7) @ id)))) & ((hoasapinj2 = $true) <=> ! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209))) & (apnotvar = $true) & (hoaslamnotap_lthm = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) = (d2subst @ X75)) => (X75 = X76)) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) <=> (axidr = $true)) & ((hoasapinj1 = $true) <=> ! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474)))) & ((termmset = $true) <=> ! [X77 : term] : ((sub @ X77 @ id) = X77)) & (! [X52 : term] : ~! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & ((! [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) = X323) => (! [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) = X324) => (! [X326 : subst] : ((comp @ X326 @ id) = X326) => (! [X327 : term > $o,X328 : term] : (($true = (X327 @ X328)) | ~! [X329 : term] : (($true != (var @ X329)) | ($true = (X327 @ X329))) | ~! [X332 : term] : (($true = (X327 @ (lam @ X332))) | ($true != (X327 @ X332))) | ~! [X330 : term,X331 : term] : (($true != (X327 @ X331)) | ($true != (X327 @ X330)) | ($true = (X327 @ (ap @ X331 @ X330))))) => ! [X333 : subst,X334 : term,X335 : term > $o] : (~! [X339 : term] : (($true = (X335 @ (lam @ X339))) | ~! [X340 : term] : (($true = (X335 @ (sub @ X339 @ (push @ X340 @ id)))) | ((X335 @ X340) != $true))) | ~! [X337 : term,X338 : term] : (($true = (X335 @ (ap @ X338 @ X337))) | ($true != (X335 @ X337)) | ($true != (X335 @ X338))) | ~! [X336 : term] : (($true = (X335 @ (sub @ X336 @ X333))) | ($true != (var @ X336))) | ($true = (X335 @ (sub @ X334 @ X333)))))))) <=> (induction2lem_lthm = $true)) & ((hoasinduction_lem3 = $true) <=> ! [X227 : term,X228 : subst > term > subst > $o] : (~! [X229 : term,X230 : subst,X231 : subst,X232 : subst] : (($true != (X228 @ X230 @ X229 @ (comp @ X231 @ X232))) | ($true = (X228 @ (comp @ X230 @ X231) @ (sub @ X229 @ X231) @ X232))) | ~! [X234 : subst > term > term] : (~! [X236 : subst,X237 : subst,X238 : term] : ((sub @ (X234 @ X237 @ X238) @ X236) = (X234 @ (comp @ X237 @ X236) @ (sub @ X238 @ X236))) | ($true = (X228 @ id @ (lam @ (X234 @ sh @ one)) @ id)) | ~! [X235 : term] : (($true != (X228 @ id @ X235 @ id)) | ($true = (X228 @ id @ (X234 @ id @ X235) @ id)))) | ~! [X233 : term] : (($true != (X228 @ id @ X233 @ id)) | ($true = (X228 @ id @ (sub @ X227 @ (push @ X233 @ id)) @ id))) | ~! [X239 : subst,X240 : term,X241 : subst,X242 : subst] : (($true != (X228 @ (comp @ X239 @ X242) @ (sub @ X240 @ X242) @ X241)) | ($true = (X228 @ X239 @ X240 @ (comp @ X242 @ X241)))) | ($true = (X228 @ id @ (lam @ X227) @ id)))) & (! [X102 : subst > term > subst > $o,X103 : term > $o,X104 : term] : (~! [X111 : term] : ((X102 @ id @ X111 @ id) = (X103 @ X111)) | ($true = (X103 @ (lam @ X104))) | ~! [X105 : term] : (($true = (X103 @ (sub @ X104 @ (push @ X105 @ id)))) | ($true != (X103 @ X105))) | ~! [X106 : subst > term > term] : (($true = (X102 @ id @ (lam @ (X106 @ sh @ one)) @ id)) | ~! [X107 : term,X108 : subst,X109 : subst] : ((X106 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)) = (sub @ (X106 @ X109 @ X107) @ X108)) | ~! [X110 : term] : (($true != (X102 @ id @ X110 @ id)) | ($true = (X102 @ id @ (X106 @ id @ X110) @ id))))) <=> (hoasinduction_lem3v2a = $true)) & ((! [X54 : term] : ((sub @ X54 @ id) = X54) => ! [X55 : term] : ((sub @ X55 @ id) = X55)) <=> (termmset_lthm = $true)) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem0 = $true) <=> ! [X305 : subst > term > subst > $o] : ~! [X306 : term > $o] : ~! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307))) & (pushprop_lem2v2_gthm = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1 = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X223 : term] : ~! [X224 : subst > term > term] : ~! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226)))) & ((! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418) => ! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (~! [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) = (X421 @ X424)) | ($true != (X420 @ X422)) | ($true = (X421 @ one)))) <=> (pushprop_lem1v2_lthm = $true)) & (pushprop = $true) & (hoasapinj2_gthm = $true) & (ulamvarsh = $true) & (! [X438 : term] : ~! [X439 : subst > term > term] : ((X439 @ sh @ one) != (sub @ X438 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X282 : subst > term > subst > $o,X283 : term] : (~! [X289 : term,X290 : term] : (($true != (X282 @ id @ X290 @ id)) | ($true != (X282 @ id @ X289 @ id)) | ($true = (X282 @ id @ (ap @ (sub @ X289 @ id) @ X290) @ id))) | ($true = (X282 @ id @ X283 @ id)) | ~! [X284 : subst > term > term] : (($true = (X282 @ id @ (lam @ (X284 @ sh @ one)) @ id)) | ~! [X285 : term] : (($true = (X282 @ id @ (X284 @ id @ X285) @ id)) | ($true != (X282 @ id @ X285 @ id))) | ~! [X286 : term,X287 : subst,X288 : subst] : ((sub @ (X284 @ X287 @ X286) @ X288) = (X284 @ (comp @ X287 @ X288) @ (sub @ X286 @ X288)))))) & (pushprop_lem1_gthm = $true) & ((! [X441 : term] : ~! [X442 : subst > term > term] : ~! [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) = (sub @ X441 @ (push @ X444 @ X443))) => (! [X445 : term] : ((sub @ X445 @ id) = X445) => ! [X446 : term,X447 : subst > term > subst > $o,X448 : term > $o] : (~! [X451 : subst > term > term] : (($true = (X447 @ id @ (lam @ (X451 @ sh @ one)) @ id)) | ~! [X452 : term] : (($true = (X447 @ id @ (X451 @ id @ X452) @ id)) | ($true != (X447 @ id @ X452 @ id))) | ~! [X453 : subst,X454 : subst,X455 : term] : ((sub @ (X451 @ X453 @ X455) @ X454) = (X451 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454)))) | ~! [X450 : term] : (($true != (X448 @ X450)) | ($true = (X448 @ (sub @ X446 @ (push @ X450 @ id))))) | ($true = (X448 @ (lam @ X446))) | ~! [X449 : term] : ((X447 @ id @ X449 @ id) = (X448 @ X449))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X154 : subst > term > subst > $o,X155 : term] : (($true = (X154 @ id @ (lam @ (sub @ X155 @ (push @ one @ sh))) @ id)) | ~! [X161 : term] : (($true != (X154 @ id @ X161 @ id)) | ((X154 @ id @ (sub @ X155 @ (push @ X161 @ id)) @ id) = $true)) | ~! [X156 : subst > term > term] : (~! [X157 : term] : (($true != (X154 @ id @ X157 @ id)) | ($true = (X154 @ id @ (X156 @ id @ X157) @ id))) | ~! [X158 : term,X159 : subst,X160 : subst] : ((X156 @ (comp @ X159 @ X160) @ (sub @ X158 @ X160)) = (sub @ (X156 @ X159 @ X158) @ X160)) | ($true = (X154 @ id @ (lam @ (X156 @ sh @ one)) @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & (hoaslaminj_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (lamnotvar = $true) & (hoasinduction_lem1_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (axapp = $true) & (axabs = $true) & ((apinj2 = $true) <=> ! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211))) & (hoasinduction_lem3b_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (! [X268 : term,X269 : term,X270 : term,X271 : term] : ((X269 = X270) | ((ap @ X268 @ X269) != (ap @ X271 @ X270))) => ! [X272 : term,X273 : term,X274 : term,X275 : term] : ((X272 = X273) | ((ap @ (sub @ X274 @ id) @ X272) != (ap @ (sub @ X275 @ id) @ X273))))) & ! [X321 : d_subst] : (d_id = X321) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (ulamvarind = $true) & (pushprop_lthm = $true) & ((! [X19 : term] : ((sub @ X19 @ id) = X19) => ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (~! [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true != (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29)) | ($true = (X21 @ X30 @ X32 @ (comp @ X31 @ X29)))) | ~! [X37 : term] : ((X20 @ X37) = (X21 @ id @ X37 @ id)) | ($true = (X20 @ (lam @ X22))) | ~! [X28 : term] : (($true = (X20 @ (sub @ X22 @ (push @ X28 @ id)))) | ($true != (X20 @ X28))) | ~! [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (($true = (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34)) | ($true != (X21 @ X35 @ X33 @ (comp @ X36 @ X34)))) | ~! [X23 : subst > term > term] : (((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) = $true) | ~! [X24 : term] : (((X21 @ id @ (X23 @ id @ X24) @ id) = $true) | ($true != (X21 @ id @ X24 @ id))) | ~! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27))))) <=> (hoasinduction_lem3v2_lthm = $true)) & (! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (($true != (X317 @ X318)) | ~! [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) = (X316 @ X320)) | ($true = (X316 @ one))) <=> (pushprop_lem1v2 = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (pushprop_lthm_orig = $true) & (hoasapnotvar_lthm = $true) & (hoaslamnotap_gthm = $true) & (lamnotap != $true) & (termmset_gthm = $true) & (pushprop_lem3v2 = $true) & (pushprop_lem0_gthm = $true) & ((hoaslaminj_lthm = $true) <=> (! [X515 : term,X516 : subst] : ((sub @ one @ (push @ X515 @ X516)) = X515) => (! [X517 : subst,X518 : term] : ((comp @ sh @ (push @ X518 @ X517)) = X517) => (! [X519 : term,X520 : term] : ((X519 = X520) | ((lam @ X520) != (lam @ X519))) => ! [X521 : subst > term > term,X522 : subst,X523 : subst > term > term,X524 : term] : (((X521 @ X522 @ X524) = (X523 @ X522 @ X524)) | ~! [X528 : term,X529 : subst,X530 : subst] : ((sub @ (X521 @ X529 @ X528) @ X530) = (X521 @ (comp @ X529 @ X530) @ (sub @ X528 @ X530))) | ~! [X525 : subst,X526 : term,X527 : subst] : ((X523 @ (comp @ X527 @ X525) @ (sub @ X526 @ X525)) = (sub @ (X523 @ X527 @ X526) @ X525)) | ((lam @ (X523 @ sh @ one)) != (lam @ (X521 @ sh @ one)))))))) & (induction2lem_gthm = $true) & ((pushprop_lem1 = $true) <=> ! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (($true != (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99)))))) & (! [X215 : subst > term > subst > $o,X216 : term] : (~! [X217 : subst > term > term] : (~! [X219 : term,X220 : subst,X221 : subst] : ((sub @ (X217 @ X220 @ X219) @ X221) = (X217 @ (comp @ X220 @ X221) @ (sub @ X219 @ X221))) | ~! [X218 : term] : (($true = (X215 @ id @ (X217 @ id @ X218) @ id)) | ($true != (X215 @ id @ X218 @ id))) | ((X215 @ id @ (lam @ (X217 @ sh @ one)) @ id) = $true)) | ($true = (X215 @ id @ (lam @ (sub @ X216 @ (push @ one @ sh))) @ id)) | ~! [X222 : term] : (($true != (X215 @ id @ X222 @ id)) | ($true = (X215 @ id @ (sub @ X216 @ (push @ X222 @ id)) @ id)))) <=> (hoasinduction_lem3aa = $true)) & (hoasinduction_lem3_gthm = $true) & ((axidl = $true) <=> ! [X440 : subst] : ((comp @ id @ X440) = X440)) & (hoaslamnotvar = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ! [X6 : d_term] : (d_one = X6) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (~! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5)) | ((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0))) <=> (hoaslamnotap = $true)) & ((! [X476 : subst > term > subst > $o] : ~! [X477 : term > $o] : ~! [X478 : term] : ((X476 @ id @ X478 @ id) = (X477 @ X478)) => (! [X479 : term > $o,X480 : term] : (~! [X483 : term] : (((var @ X483) != $true) | ($true = (X479 @ X483))) | ~! [X481 : term] : (~! [X482 : term] : (($true = (X479 @ (sub @ X481 @ (push @ X482 @ id)))) | ($true != (X479 @ X482))) | ($true = (X479 @ (lam @ X481)))) | ($true = (X479 @ X480)) | ~! [X484 : term,X485 : term] : (($true != (X479 @ X485)) | ($true = (X479 @ (ap @ X485 @ X484))) | ((X479 @ X484) != $true))) => (! [X486 : term] : ((sub @ X486 @ id) = X486) => (! [X487 : term,X488 : subst > term > subst > $o,X489 : term > $o] : (((X489 @ (lam @ X487)) = $true) | ~! [X490 : term] : (($true != (X489 @ X490)) | ($true = (X489 @ (sub @ X487 @ (push @ X490 @ id))))) | ~! [X496 : term] : ((X488 @ id @ X496 @ id) = (X489 @ X496)) | ~! [X491 : subst > term > term] : (($true = (X488 @ id @ (lam @ (X491 @ sh @ one)) @ id)) | ~! [X492 : term] : (($true != (X488 @ id @ X492 @ id)) | ($true = (X488 @ id @ (X491 @ id @ X492) @ id))) | ~! [X493 : term,X494 : subst,X495 : subst] : ((X491 @ (comp @ X495 @ X494) @ (sub @ X493 @ X494)) = (sub @ (X491 @ X495 @ X493) @ X494)))) => ! [X497 : term,X498 : subst > term > subst > $o] : (~! [X504 : term,X505 : term] : (($true = (X498 @ id @ (ap @ (sub @ X504 @ id) @ X505) @ id)) | ($true != (X498 @ id @ X505 @ id)) | ($true != (X498 @ id @ X504 @ id))) | ($true = (X498 @ id @ X497 @ id)) | ~! [X514 : term] : (($true != (var @ (sub @ X514 @ id))) | ($true = (X498 @ id @ X514 @ id))) | ~! [X499 : subst > term > term] : (~! [X503 : term] : (($true != (X498 @ id @ X503 @ id)) | ($true = (X498 @ id @ (X499 @ id @ X503) @ id))) | ($true = (X498 @ id @ (lam @ (X499 @ sh @ one)) @ id)) | ~! [X500 : term,X501 : subst,X502 : subst] : ((X499 @ (comp @ X502 @ X501) @ (sub @ X500 @ X501)) = (sub @ (X499 @ X502 @ X500) @ X501))) | ~! [X506 : subst,X507 : subst,X508 : term,X509 : subst] : (($true != (X498 @ X509 @ X508 @ (comp @ X507 @ X506))) | ($true = (X498 @ (comp @ X509 @ X507) @ (sub @ X508 @ X507) @ X506))) | ~! [X510 : subst,X511 : term,X512 : subst,X513 : subst] : (($true = (X498 @ X513 @ X511 @ (comp @ X512 @ X510))) | ($true != (X498 @ (comp @ X513 @ X512) @ (sub @ X511 @ X512) @ X510)))))))) <=> (hoasinduction_lthm_3 = $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X395 : term > $o,X396 : term,X397 : subst > term > subst > $o] : (~! [X402 : term] : (($true = (X395 @ (sub @ X396 @ (push @ X402 @ id)))) | ($true != (X395 @ X402))) | ($true = (X395 @ (lam @ X396))) | ~! [X398 : subst,X399 : subst,X400 : term,X401 : subst] : (((X397 @ (comp @ X401 @ X398) @ (sub @ X400 @ X398) @ X399) != $true) | ($true = (X397 @ X401 @ X400 @ (comp @ X398 @ X399)))) | ~! [X403 : subst > term > term] : (($true = (X397 @ id @ (lam @ (X403 @ sh @ one)) @ id)) | ~! [X404 : subst,X405 : term,X406 : subst] : ((X403 @ (comp @ X404 @ X406) @ (sub @ X405 @ X406)) = (sub @ (X403 @ X404 @ X405) @ X406)) | ~! [X407 : term] : (($true != (X397 @ id @ X407 @ id)) | ($true = (X397 @ id @ (X403 @ id @ X407) @ id)))) | ~! [X408 : term] : ((X397 @ id @ X408 @ id) = (X395 @ X408)) | ~! [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (($true = (X397 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410)) | ($true != (X397 @ X409 @ X412 @ (comp @ X411 @ X410))))) <=> (hoasinduction_lem3v2 = $true)) & (! [X78 : term,X79 : subst > term > subst > $o] : (~! [X90 : subst,X91 : subst,X92 : subst,X93 : term] : (($true = (X79 @ X91 @ X93 @ (comp @ X92 @ X90))) | ($true != (X79 @ (comp @ X91 @ X92) @ (sub @ X93 @ X92) @ X90))) | ~! [X80 : subst > term > term] : (~! [X81 : subst,X82 : term,X83 : subst] : ((X80 @ (comp @ X81 @ X83) @ (sub @ X82 @ X83)) = (sub @ (X80 @ X81 @ X82) @ X83)) | ($true = (X79 @ id @ (lam @ (X80 @ sh @ one)) @ id)) | ~! [X84 : term] : (((X79 @ id @ (X80 @ id @ X84) @ id) = $true) | ($true != (X79 @ id @ X84 @ id)))) | ~! [X94 : term,X95 : term] : (($true != (X79 @ id @ X95 @ id)) | ($true = (X79 @ id @ (ap @ (sub @ X94 @ id) @ X95) @ id)) | ($true != (X79 @ id @ X94 @ id))) | ($true = (X79 @ id @ X78 @ id)) | ~! [X85 : subst,X86 : subst,X87 : term,X88 : subst] : (($true != (X79 @ X85 @ X87 @ (comp @ X86 @ X88))) | ((X79 @ (comp @ X85 @ X86) @ (sub @ X87 @ X86) @ X88) = $true)) | ~! [X89 : term] : (($true != (var @ (sub @ X89 @ id))) | ($true = (X79 @ id @ X89 @ id)))) <=> (hoasinduction = $true)) & (! [X308 : term,X309 : term > $o] : (~! [X310 : term,X311 : term] : (($true != (X309 @ X311)) | ($true != (X309 @ X310)) | ($true = (X309 @ (ap @ X311 @ X310)))) | ~! [X313 : term] : (($true = (X309 @ (lam @ X313))) | ($true != (X309 @ X313))) | ~! [X312 : term] : (($true != (var @ X312)) | ($true = (X309 @ X312))) | ($true = (X309 @ X308))) <=> (induction = $true)) & (! [X162 : subst > term > subst > $o,X163 : term] : (~! [X173 : term] : (($true = (X162 @ id @ (sub @ X163 @ (push @ X173 @ id)) @ id)) | ((X162 @ id @ X173 @ id) != $true)) | ~! [X164 : subst > term > term,X165 : term] : (((X162 @ id @ (lam @ (X164 @ sh @ one)) @ id) = $true) | ~! [X172 : term] : (($true = (X162 @ id @ (X164 @ id @ X172) @ id)) | ($true != (X162 @ id @ X172 @ id))) | ~! [X166 : subst,X167 : term,X168 : subst] : ((sub @ (X164 @ X168 @ X167) @ X166) = (sub @ (sub @ X165 @ (push @ X167 @ X168)) @ X166)) | ~! [X169 : subst,X170 : term,X171 : subst] : ((sub @ X165 @ (push @ (sub @ X170 @ X169) @ (comp @ X171 @ X169))) = (X164 @ (comp @ X171 @ X169) @ (sub @ X170 @ X169)))) | ($true = (X162 @ id @ (lam @ (sub @ X163 @ (push @ one @ sh))) @ id))) <=> (hoasinduction_lem3aaa = $true)) & ((! [X456 : term] : ((sub @ X456 @ id) = X456) => (! [X457 : term > $o,X458 : term,X459 : subst] : (~! [X460 : term] : (($true = (X457 @ (sub @ X460 @ X459))) | ($true != (var @ X460))) | ~! [X461 : term] : (($true = (X457 @ (lam @ X461))) | ~! [X462 : term] : (($true != (X457 @ X462)) | ($true = (X457 @ (sub @ X461 @ (push @ X462 @ id)))))) | ($true = (X457 @ (sub @ X458 @ X459))) | ~! [X463 : term,X464 : term] : (($true != (X457 @ X463)) | ($true != (X457 @ X464)) | ($true = (X457 @ (ap @ X464 @ X463))))) => ! [X465 : term,X466 : term > $o] : (($true = (X466 @ X465)) | ~! [X470 : term] : (($true = (X466 @ (lam @ X470))) | ~! [X471 : term] : (((X466 @ X471) != $true) | ($true = (X466 @ (sub @ X470 @ (push @ X471 @ id)))))) | ~! [X469 : term] : (($true != (var @ X469)) | ($true = (X466 @ X469))) | ~! [X467 : term,X468 : term] : (($true != (X466 @ X468)) | ((X466 @ (ap @ X467 @ X468)) = $true) | ($true != (X466 @ X467)))))) <=> (induction2_lthm = $true)) & (axclos = $true) & (substmonoid_gthm = $true) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & (induction2_gthm = $true) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & (pushprop_gthm = $true) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & (hoasinduction_lem2_lthm = $true)),
% 2.47/1.94    inference(flattening,[status(thm)],[f10])).
% 2.47/1.94  thf(f10,plain,(
% 2.47/1.94    (hoasinduction_lem1v2_gthm = $true) & (hoasapinj2_gthm = $true) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (~! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5)) | ((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0))) <=> (hoaslamnotap = $true)) & ! [X6 : d_term] : (d_one = X6) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((hoasinduction_lem3a = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (~! [X9 : term] : (~($true = (X8 @ id @ X9 @ id)) | ($true = (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))) | ~! [X10 : subst > term > term] : (($true = (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id)) | ~! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) | ~! [X14 : term] : (($true = (X8 @ id @ (X10 @ id @ X14) @ id)) | ~($true = (X8 @ id @ X14 @ id)))) | ($true = (X8 @ id @ (lam @ X7) @ id)))) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & (pushprop_gthm = $true) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & (pushprop_lthm = $true) & (axvarshift = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X19 : term] : ((sub @ X19 @ id) = X19) => ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (~! [X23 : subst > term > term] : (~! [X24 : term] : (~($true = (X21 @ id @ X24 @ id)) | ((X21 @ id @ (X23 @ id @ X24) @ id) = $true)) | ~! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) | ((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) = $true)) | ~! [X28 : term] : (~($true = (X20 @ X28)) | ($true = (X20 @ (sub @ X22 @ (push @ X28 @ id))))) | ~! [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true = (X21 @ X30 @ X32 @ (comp @ X31 @ X29))) | ~($true = (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29))) | ($true = (X20 @ (lam @ X22))) | ~! [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (~($true = (X21 @ X35 @ X33 @ (comp @ X36 @ X34))) | ($true = (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34))) | ~! [X37 : term] : ((X20 @ X37) = (X21 @ id @ X37 @ id))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoaslamnotvar_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ~! [X41 : term > $o] : ~! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & (hoaslaminj_gthm = $true) & (! [X45 : term,X46 : term > $o] : (~! [X47 : term] : (($true = (X46 @ (lam @ X47))) | ~! [X48 : term] : (~($true = (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id)))))) | ~! [X49 : term,X50 : term] : (~($true = (X46 @ X50)) | ($true = (X46 @ (ap @ X49 @ X50))) | ~($true = (X46 @ X49))) | ~! [X51 : term] : (~($true = (var @ X51)) | ($true = (X46 @ X51))) | ($true = (X46 @ X45))) <=> (induction2 = $true)) & (ulamvarsh = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_lem1 = $true) & (! [X52 : term] : ~! [X53 : subst > term > term] : ((sub @ X52 @ (push @ one @ sh)) != (X53 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & ((! [X54 : term] : ((sub @ X54 @ id) = X54) => ! [X55 : term] : ((sub @ X55 @ id) = X55)) <=> (termmset_lthm = $true)) & ~((var @ (d2term @ d_one)) = $true) & ((! [X56 : subst] : ((comp @ X56 @ id) = X56) & ! [X57 : subst] : ((comp @ id @ X57) = X57)) <=> (substmonoid = $true)) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X58 : term] : ((sub @ X58 @ id) = X58) => (! [X59 : term,X60 : subst > term > subst > $o] : (($true = (X60 @ id @ (lam @ (sub @ X59 @ (push @ one @ sh))) @ id)) | ~! [X61 : subst > term > term] : (($true = (X60 @ id @ (lam @ (X61 @ sh @ one)) @ id)) | ~! [X62 : term] : (($true = (X60 @ id @ (X61 @ id @ X62) @ id)) | ~($true = (X60 @ id @ X62 @ id))) | ~! [X63 : term,X64 : subst,X65 : subst] : ((sub @ (X61 @ X65 @ X63) @ X64) = (X61 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64)))) | ~! [X66 : term] : (~($true = (X60 @ id @ X66 @ id)) | ($true = (X60 @ id @ (sub @ X59 @ (push @ X66 @ id)) @ id)))) => ! [X67 : subst > term > subst > $o,X68 : term] : (($true = (X67 @ id @ (lam @ X68) @ id)) | ~! [X69 : term] : (~($true = (X67 @ id @ X69 @ id)) | ($true = (X67 @ id @ (sub @ X68 @ (push @ X69 @ id)) @ id))) | ~! [X70 : subst > term > term] : (~! [X71 : term] : (~($true = (X67 @ id @ X71 @ id)) | ($true = (X67 @ id @ (X70 @ id @ X71) @ id))) | ($true = (X67 @ id @ (lam @ (X70 @ sh @ one)) @ id)) | ~! [X72 : subst,X73 : subst,X74 : term] : ((sub @ (X70 @ X73 @ X74) @ X72) = (X70 @ (comp @ X73 @ X72) @ (sub @ X74 @ X72)))))))) & (pushprop_lem2v2 = $true) & ! [X75 : d_subst,X76 : d_subst] : (((d2subst @ X76) = (d2subst @ X75)) => (X75 = X76)) & ~(ulamvar1 = $true) & (substmonoid_gthm = $true) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ((termmset = $true) <=> ! [X77 : term] : ((sub @ X77 @ id) = X77)) & (hoasinduction_lem3v2_gthm = $true) & (! [X78 : term,X79 : subst > term > subst > $o] : (($true = (X79 @ id @ X78 @ id)) | ~! [X80 : subst > term > term] : (~! [X81 : subst,X82 : term,X83 : subst] : ((X80 @ (comp @ X81 @ X83) @ (sub @ X82 @ X83)) = (sub @ (X80 @ X81 @ X82) @ X83)) | ($true = (X79 @ id @ (lam @ (X80 @ sh @ one)) @ id)) | ~! [X84 : term] : (((X79 @ id @ (X80 @ id @ X84) @ id) = $true) | ~($true = (X79 @ id @ X84 @ id)))) | ~! [X85 : subst,X86 : subst,X87 : term,X88 : subst] : (~($true = (X79 @ X85 @ X87 @ (comp @ X86 @ X88))) | ((X79 @ (comp @ X85 @ X86) @ (sub @ X87 @ X86) @ X88) = $true)) | ~! [X89 : term] : (($true = (X79 @ id @ X89 @ id)) | ~($true = (var @ (sub @ X89 @ id)))) | ~! [X90 : subst,X91 : subst,X92 : subst,X93 : term] : (~($true = (X79 @ (comp @ X91 @ X92) @ (sub @ X93 @ X92) @ X90)) | ($true = (X79 @ X91 @ X93 @ (comp @ X92 @ X90)))) | ~! [X94 : term,X95 : term] : (($true = (X79 @ id @ (ap @ (sub @ X94 @ id) @ X95) @ id)) | ~($true = (X79 @ id @ X94 @ id)) | ~($true = (X79 @ id @ X95 @ id)))) <=> (hoasinduction = $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X96 : subst] : ((push @ (sub @ one @ X96) @ (comp @ sh @ X96)) = X96) <=> (axscons = $true)) & (! [X97 : term > $o,X98 : term,X99 : subst,X100 : term > $o,X101 : term] : (~($true = (X97 @ X101)) | ($true = (X100 @ (sub @ X101 @ (push @ X98 @ X99))))) <=> (pushprop_lem1 = $true)) & (pushprop_lem3v2_lthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X102 : subst > term > subst > $o,X103 : term > $o,X104 : term] : (~! [X105 : term] : (($true = (X103 @ (sub @ X104 @ (push @ X105 @ id)))) | ~($true = (X103 @ X105))) | ~! [X106 : subst > term > term] : (~! [X107 : term,X108 : subst,X109 : subst] : ((X106 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)) = (sub @ (X106 @ X109 @ X107) @ X108)) | ($true = (X102 @ id @ (lam @ (X106 @ sh @ one)) @ id)) | ~! [X110 : term] : (($true = (X102 @ id @ (X106 @ id @ X110) @ id)) | ~($true = (X102 @ id @ X110 @ id)))) | ~! [X111 : term] : ((X102 @ id @ X111 @ id) = (X103 @ X111)) | ($true = (X103 @ (lam @ X104)))) <=> (hoasinduction_lem3v2a = $true)) & ((hoaslaminj = $true) <=> ! [X112 : subst > term > term,X113 : subst > term > term,X114 : term,X115 : subst] : (~! [X116 : subst,X117 : term,X118 : subst] : ((X112 @ (comp @ X116 @ X118) @ (sub @ X117 @ X118)) = (sub @ (X112 @ X116 @ X117) @ X118)) | ((X113 @ X115 @ X114) = (X112 @ X115 @ X114)) | ((lam @ (X113 @ sh @ one)) != (lam @ (X112 @ sh @ one))) | ~! [X119 : subst,X120 : term,X121 : subst] : ((X113 @ (comp @ X121 @ X119) @ (sub @ X120 @ X119)) = (sub @ (X113 @ X121 @ X120) @ X119)))) & ((pushprop_lem0 = $true) <=> ! [X122 : term,X123 : term > $o,X124 : subst] : ~! [X125 : term > $o] : ~! [X126 : term] : ((X123 @ (sub @ X126 @ (push @ X122 @ X124))) = (X125 @ X126))) & (hoasapnotvar_lthm = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X127 : subst,X128 : term] : ((sub @ one @ (push @ X128 @ X127)) = X128) => (! [X129 : subst,X130 : term] : ((comp @ sh @ (push @ X130 @ X129)) = X129) => ! [X131 : subst,X132 : term,X133 : term > $o,X134 : term,X135 : term > $o] : (~((X135 @ X134) = $true) | ($true = (X133 @ (sub @ X134 @ (push @ X132 @ X131)))))))) & (! [X136 : term > $o,X137 : term,X138 : term,X139 : subst > term > subst > $o] : (($true = (X136 @ (ap @ X137 @ X138))) | ~! [X140 : term,X141 : term] : (~($true = (X139 @ id @ X141 @ id)) | ($true = (X139 @ id @ (ap @ (sub @ X141 @ id) @ X140) @ id)) | ~($true = (X139 @ id @ X140 @ id))) | ~($true = (X136 @ X137)) | ~($true = (X136 @ X138)) | ~! [X142 : term] : ((X136 @ X142) = (X139 @ id @ X142 @ id)) | ~! [X143 : subst,X144 : subst,X145 : term,X146 : subst] : (($true = (X139 @ (comp @ X143 @ X146) @ (sub @ X145 @ X146) @ X144)) | ~($true = (X139 @ X143 @ X145 @ (comp @ X146 @ X144)))) | ~! [X147 : subst,X148 : subst,X149 : subst,X150 : term] : (($true = (X139 @ X147 @ X150 @ (comp @ X149 @ X148))) | ~($true = (X139 @ (comp @ X147 @ X149) @ (sub @ X150 @ X149) @ X148)))) <=> (hoasinduction_lem2v2 = $true)) & (pushprop_lem1v2_gthm = $true) & (apnotvar = $true) & (pushprop_lem2v2_lthm = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X151 : subst > term > subst > $o] : ~! [X152 : term > $o] : ~! [X153 : term] : ((X152 @ X153) = (X151 @ id @ X153 @ id))) & (hoaslamnotap_lthm = $true) & (axmap = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X154 : subst > term > subst > $o,X155 : term] : (~! [X156 : subst > term > term] : (($true = (X154 @ id @ (lam @ (X156 @ sh @ one)) @ id)) | ~! [X157 : term] : (($true = (X154 @ id @ (X156 @ id @ X157) @ id)) | ~($true = (X154 @ id @ X157 @ id))) | ~! [X158 : term,X159 : subst,X160 : subst] : ((X156 @ (comp @ X159 @ X160) @ (sub @ X158 @ X160)) = (sub @ (X156 @ X159 @ X158) @ X160))) | ~! [X161 : term] : (((X154 @ id @ (sub @ X155 @ (push @ X161 @ id)) @ id) = $true) | ~($true = (X154 @ id @ X161 @ id))) | ($true = (X154 @ id @ (lam @ (sub @ X155 @ (push @ one @ sh))) @ id)))) & (hoasinduction_lem1_lthm = $true) & ((d2subst @ d_id) = sh) & ((hoasinduction_lem3aaa = $true) <=> ! [X162 : subst > term > subst > $o,X163 : term] : (~! [X164 : subst > term > term,X165 : term] : (~! [X166 : subst,X167 : term,X168 : subst] : ((sub @ (X164 @ X168 @ X167) @ X166) = (sub @ (sub @ X165 @ (push @ X167 @ X168)) @ X166)) | ~! [X169 : subst,X170 : term,X171 : subst] : ((sub @ X165 @ (push @ (sub @ X170 @ X169) @ (comp @ X171 @ X169))) = (X164 @ (comp @ X171 @ X169) @ (sub @ X170 @ X169))) | ((X162 @ id @ (lam @ (X164 @ sh @ one)) @ id) = $true) | ~! [X172 : term] : (($true = (X162 @ id @ (X164 @ id @ X172) @ id)) | ~($true = (X162 @ id @ X172 @ id)))) | ($true = (X162 @ id @ (lam @ (sub @ X163 @ (push @ one @ sh))) @ id)) | ~! [X173 : term] : (($true = (X162 @ id @ (sub @ X163 @ (push @ X173 @ id)) @ id)) | ~((X162 @ id @ X173 @ id) = $true)))) & (one = (d2term @ d_one)) & (induction2lem_gthm = $true) & ((! [X174 : subst > term > subst > $o] : ~! [X175 : term > $o] : ~! [X176 : term] : ((X174 @ id @ X176 @ id) = (X175 @ X176)) => (! [X177 : term,X178 : term > $o] : (($true = (X178 @ X177)) | ~! [X179 : term,X180 : term] : (~($true = (X178 @ X180)) | ($true = (X178 @ (ap @ X179 @ X180))) | ~($true = (X178 @ X179))) | ~! [X181 : term] : (~($true = (var @ X181)) | ($true = (X178 @ X181))) | ~! [X182 : term] : (~! [X183 : term] : (~($true = (X178 @ X183)) | ($true = (X178 @ (sub @ X182 @ (push @ X183 @ id))))) | ($true = (X178 @ (lam @ X182))))) => (! [X184 : term] : ((sub @ X184 @ id) = X184) => (! [X185 : subst > term > subst > $o,X186 : term,X187 : term > $o] : (~! [X188 : term] : ((X185 @ id @ X188 @ id) = (X187 @ X188)) | ($true = (X187 @ (lam @ X186))) | ~! [X189 : term] : (($true = (X187 @ (sub @ X186 @ (push @ X189 @ id)))) | ~($true = (X187 @ X189))) | ~! [X190 : subst > term > term] : (~! [X191 : term,X192 : subst,X193 : subst] : ((X190 @ (comp @ X193 @ X192) @ (sub @ X191 @ X192)) = (sub @ (X190 @ X193 @ X191) @ X192)) | ~! [X194 : term] : (~($true = (X185 @ id @ X194 @ id)) | ($true = (X185 @ id @ (X190 @ id @ X194) @ id))) | ($true = (X185 @ id @ (lam @ (X190 @ sh @ one)) @ id)))) => ! [X195 : term,X196 : subst > term > subst > $o] : (($true = (X196 @ id @ X195 @ id)) | ~! [X197 : term,X198 : term] : (~($true = (X196 @ id @ X198 @ id)) | ~($true = (X196 @ id @ X197 @ id)) | ($true = (X196 @ id @ (ap @ (sub @ X197 @ id) @ X198) @ id))) | ~! [X199 : subst > term > term] : (($true = (X196 @ id @ (lam @ (X199 @ sh @ one)) @ id)) | ~! [X200 : term] : (~($true = (X196 @ id @ X200 @ id)) | ($true = (X196 @ id @ (X199 @ id @ X200) @ id))) | ~! [X201 : term,X202 : subst,X203 : subst] : ((X199 @ (comp @ X202 @ X203) @ (sub @ X201 @ X203)) = (sub @ (X199 @ X202 @ X201) @ X203)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X204 : subst] : ? [X205 : d_subst] : ((d2subst @ X205) = X204) & ((hoasapinj2 = $true) <=> ! [X206 : term,X207 : term,X208 : term,X209 : term] : (((ap @ (sub @ X206 @ id) @ X208) != (ap @ (sub @ X207 @ id) @ X209)) | (X208 = X209))) & ((apinj2 = $true) <=> ! [X210 : term,X211 : term,X212 : term,X213 : term] : (((ap @ X213 @ X211) != (ap @ X212 @ X210)) | (X210 = X211))) & (hoasinduction_lem3b_gthm = $true) & (lamnotvar = $true) & ((axvarid = $true) <=> ! [X214 : term] : ((sub @ X214 @ id) = X214)) & (pushprop_lem1_gthm = $true) & (axassoc = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3aa = $true) <=> ! [X215 : subst > term > subst > $o,X216 : term] : (($true = (X215 @ id @ (lam @ (sub @ X216 @ (push @ one @ sh))) @ id)) | ~! [X217 : subst > term > term] : (((X215 @ id @ (lam @ (X217 @ sh @ one)) @ id) = $true) | ~! [X218 : term] : (~($true = (X215 @ id @ X218 @ id)) | ($true = (X215 @ id @ (X217 @ id @ X218) @ id))) | ~! [X219 : term,X220 : subst,X221 : subst] : ((sub @ (X217 @ X220 @ X219) @ X221) = (X217 @ (comp @ X220 @ X221) @ (sub @ X219 @ X221)))) | ~! [X222 : term] : (~($true = (X215 @ id @ X222 @ id)) | ($true = (X215 @ id @ (sub @ X216 @ (push @ X222 @ id)) @ id))))) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X223 : term] : ~! [X224 : subst > term > term] : ~! [X225 : term,X226 : subst] : ((X224 @ X226 @ X225) = (sub @ X223 @ (push @ X225 @ X226)))) & ((hoasinduction_lem3 = $true) <=> ! [X227 : term,X228 : subst > term > subst > $o] : (~! [X229 : term,X230 : subst,X231 : subst,X232 : subst] : (~($true = (X228 @ X230 @ X229 @ (comp @ X231 @ X232))) | ($true = (X228 @ (comp @ X230 @ X231) @ (sub @ X229 @ X231) @ X232))) | ~! [X233 : term] : (~($true = (X228 @ id @ X233 @ id)) | ($true = (X228 @ id @ (sub @ X227 @ (push @ X233 @ id)) @ id))) | ~! [X234 : subst > term > term] : (~! [X235 : term] : (($true = (X228 @ id @ (X234 @ id @ X235) @ id)) | ~($true = (X228 @ id @ X235 @ id))) | ~! [X236 : subst,X237 : subst,X238 : term] : ((sub @ (X234 @ X237 @ X238) @ X236) = (X234 @ (comp @ X237 @ X236) @ (sub @ X238 @ X236))) | ($true = (X228 @ id @ (lam @ (X234 @ sh @ one)) @ id))) | ~! [X239 : subst,X240 : term,X241 : subst,X242 : subst] : (~($true = (X228 @ (comp @ X239 @ X242) @ (sub @ X240 @ X242) @ X241)) | ($true = (X228 @ X239 @ X240 @ (comp @ X242 @ X241)))) | ($true = (X228 @ id @ (lam @ X227) @ id)))) & ~(lamnotap = $true) & ((hoasinduction_lem3_lthm = $true) <=> (! [X243 : term] : ((sub @ X243 @ id) = X243) => (! [X244 : subst > term > subst > $o,X245 : term] : (~! [X246 : term] : (($true = (X244 @ id @ (sub @ X245 @ (push @ X246 @ id)) @ id)) | ~($true = (X244 @ id @ X246 @ id))) | ((X244 @ id @ (lam @ (sub @ X245 @ (push @ one @ sh))) @ id) = $true) | ~! [X247 : subst > term > term] : (~! [X248 : subst,X249 : term,X250 : subst] : ((sub @ (X247 @ X248 @ X249) @ X250) = (X247 @ (comp @ X248 @ X250) @ (sub @ X249 @ X250))) | ~! [X251 : term] : (~($true = (X244 @ id @ X251 @ id)) | ($true = (X244 @ id @ (X247 @ id @ X251) @ id))) | ((X244 @ id @ (lam @ (X247 @ sh @ one)) @ id) = $true))) => ! [X252 : term,X253 : subst > term > subst > $o] : (~! [X254 : term,X255 : subst,X256 : subst,X257 : subst] : (($true = (X253 @ X256 @ X254 @ (comp @ X257 @ X255))) | ~($true = (X253 @ (comp @ X256 @ X257) @ (sub @ X254 @ X257) @ X255))) | ~! [X258 : subst,X259 : subst,X260 : subst,X261 : term] : (~($true = (X253 @ X260 @ X261 @ (comp @ X258 @ X259))) | ($true = (X253 @ (comp @ X260 @ X258) @ (sub @ X261 @ X258) @ X259))) | ($true = (X253 @ id @ (lam @ X252) @ id)) | ~! [X262 : term] : (~($true = (X253 @ id @ X262 @ id)) | ($true = (X253 @ id @ (sub @ X252 @ (push @ X262 @ id)) @ id))) | ~! [X263 : subst > term > term] : (~! [X264 : term] : (($true = (X253 @ id @ (X263 @ id @ X264) @ id)) | ~($true = (X253 @ id @ X264 @ id))) | ($true = (X253 @ id @ (lam @ (X263 @ sh @ one)) @ id)) | ~! [X265 : subst,X266 : term,X267 : subst] : ((sub @ (X263 @ X267 @ X266) @ X265) = (X263 @ (comp @ X267 @ X265) @ (sub @ X266 @ X265)))))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasapinj2_lthm = $true) <=> (! [X268 : term,X269 : term,X270 : term,X271 : term] : ((X269 = X270) | ((ap @ X268 @ X269) != (ap @ X271 @ X270))) => ! [X272 : term,X273 : term,X274 : term,X275 : term] : ((X272 = X273) | ((ap @ (sub @ X274 @ id) @ X272) != (ap @ (sub @ X275 @ id) @ X273))))) & (! [X276 : term,X277 : term,X278 : term,X279 : term] : ((X276 = X279) | ((ap @ X276 @ X277) != (ap @ X279 @ X278))) <=> (apinj1 = $true)) & ! [X280 : d_term,X281 : d_term] : (((d2term @ X281) = (d2term @ X280)) => (X280 = X281)) & (hoasapnotvar = $true) & (! [X282 : subst > term > subst > $o,X283 : term] : (~! [X284 : subst > term > term] : (~! [X285 : term] : (($true = (X282 @ id @ (X284 @ id @ X285) @ id)) | ~($true = (X282 @ id @ X285 @ id))) | ($true = (X282 @ id @ (lam @ (X284 @ sh @ one)) @ id)) | ~! [X286 : term,X287 : subst,X288 : subst] : ((sub @ (X284 @ X287 @ X286) @ X288) = (X284 @ (comp @ X287 @ X288) @ (sub @ X286 @ X288)))) | ~! [X289 : term,X290 : term] : (~($true = (X282 @ id @ X289 @ id)) | ($true = (X282 @ id @ (ap @ (sub @ X289 @ id) @ X290) @ id)) | ~($true = (X282 @ id @ X290 @ id))) | ($true = (X282 @ id @ X283 @ id))) <=> (hoasinduction_no_psi_cond = $true)) & (hoaslamnotvar_lthm = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & ! [X291 : term] : ? [X292 : d_term] : ((d2term @ X292) = X291) & ((induction2lem = $true) <=> ! [X293 : term > $o,X294 : subst,X295 : term] : (~! [X296 : term,X297 : term] : (($true = (X293 @ (ap @ X297 @ X296))) | ~((X293 @ X297) = $true) | ~($true = (X293 @ X296))) | ~! [X298 : term] : (~! [X299 : term] : (((X293 @ (sub @ X298 @ (push @ X299 @ id))) = $true) | ~($true = (X293 @ X299))) | ($true = (X293 @ (lam @ X298)))) | ~! [X300 : term] : (~($true = (var @ X300)) | ($true = (X293 @ (sub @ X300 @ X294)))) | ($true = (X293 @ (sub @ X295 @ X294))))) & (hoasinduction_lem1v2 = $true) & ((! [X301 : subst] : ((comp @ id @ X301) = X301) => (! [X302 : subst] : ((comp @ X302 @ id) = X302) => (! [X304 : subst] : ((comp @ X304 @ id) = X304) & ! [X303 : subst] : ((comp @ id @ X303) = X303)))) <=> (substmonoid_lthm = $true)) & (pushprop_lthm_orig = $true) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X305 : subst > term > subst > $o] : ~! [X306 : term > $o] : ~! [X307 : term] : ((X305 @ id @ X307 @ id) = (X306 @ X307))) & (hoaslamnotap_gthm = $true) & (! [X308 : term,X309 : term > $o] : (~! [X310 : term,X311 : term] : (~($true = (X309 @ X310)) | ~($true = (X309 @ X311)) | ($true = (X309 @ (ap @ X311 @ X310)))) | ~! [X312 : term] : (~($true = (var @ X312)) | ($true = (X309 @ X312))) | ~! [X313 : term] : (~($true = (X309 @ X313)) | ($true = (X309 @ (lam @ X313)))) | ($true = (X309 @ X308))) <=> (induction = $true)) & ((d2subst @ d_id) = id) & (! [X314 : subst,X315 : term] : ((comp @ sh @ (push @ X315 @ X314)) = X314) <=> (axshiftcons = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X316 : term > $o,X317 : term > $o,X318 : term,X319 : subst] : (~($true = (X317 @ X318)) | ~! [X320 : term] : ((X317 @ (sub @ X320 @ (push @ X318 @ X319))) = (X316 @ X320)) | ($true = (X316 @ one)))) & ! [X321 : d_subst] : (d_id = X321) & ((induction2lem_lthm = $true) <=> (! [X322 : subst,X323 : term] : ((sub @ one @ (push @ X323 @ X322)) = X323) => (! [X324 : subst,X325 : term] : ((comp @ sh @ (push @ X325 @ X324)) = X324) => (! [X326 : subst] : ((comp @ X326 @ id) = X326) => (! [X327 : term > $o,X328 : term] : (~! [X329 : term] : (~($true = (var @ X329)) | ($true = (X327 @ X329))) | ~! [X330 : term,X331 : term] : (~($true = (X327 @ X330)) | ~($true = (X327 @ X331)) | ($true = (X327 @ (ap @ X331 @ X330)))) | ~! [X332 : term] : (~($true = (X327 @ X332)) | ($true = (X327 @ (lam @ X332)))) | ($true = (X327 @ X328))) => ! [X333 : subst,X334 : term,X335 : term > $o] : (~! [X336 : term] : (($true = (X335 @ (sub @ X336 @ X333))) | ~($true = (var @ X336))) | ~! [X337 : term,X338 : term] : (~($true = (X335 @ X338)) | ($true = (X335 @ (ap @ X338 @ X337))) | ~($true = (X335 @ X337))) | ~! [X339 : term] : (~! [X340 : term] : (($true = (X335 @ (sub @ X339 @ (push @ X340 @ id)))) | ~((X335 @ X340) = $true)) | ($true = (X335 @ (lam @ X339)))) | ($true = (X335 @ (sub @ X334 @ X333))))))))) & ((hoasinduction_lthm = $true) <=> (! [X341 : term,X342 : term > $o] : (~! [X343 : term] : (~((var @ X343) = $true) | ($true = (X342 @ X343))) | ~! [X344 : term] : (~! [X345 : term] : (($true = (X342 @ (sub @ X344 @ (push @ X345 @ id)))) | ~($true = (X342 @ X345))) | ((X342 @ (lam @ X344)) = $true)) | ($true = (X342 @ X341)) | ~! [X346 : term,X347 : term] : (~($true = (X342 @ X346)) | ($true = (X342 @ (ap @ X347 @ X346))) | ~($true = (X342 @ X347)))) => (! [X348 : term,X349 : term,X350 : subst > term > subst > $o] : (($true = (X350 @ id @ (ap @ X348 @ X349) @ id)) | ~($true = (X350 @ id @ X349 @ id)) | ~($true = (X350 @ id @ X348 @ id)) | ~! [X351 : term,X352 : subst,X353 : subst,X354 : subst] : (($true = (X350 @ X353 @ X351 @ (comp @ X352 @ X354))) | ~($true = (X350 @ (comp @ X353 @ X352) @ (sub @ X351 @ X352) @ X354))) | ~! [X355 : term,X356 : term] : (($true = (X350 @ id @ (ap @ (sub @ X356 @ id) @ X355) @ id)) | ~($true = (X350 @ id @ X355 @ id)) | ~($true = (X350 @ id @ X356 @ id))) | ~! [X357 : subst,X358 : subst,X359 : subst,X360 : term] : (($true = (X350 @ (comp @ X357 @ X358) @ (sub @ X360 @ X358) @ X359)) | ~((X350 @ X357 @ X360 @ (comp @ X358 @ X359)) = $true))) => (! [X361 : subst > term > subst > $o,X362 : term] : (($true = (X361 @ id @ (lam @ X362) @ id)) | ~! [X363 : subst,X364 : term,X365 : subst,X366 : subst] : (~((X361 @ X366 @ X364 @ (comp @ X363 @ X365)) = $true) | ($true = (X361 @ (comp @ X366 @ X363) @ (sub @ X364 @ X363) @ X365))) | ~! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (($true = (X361 @ X370 @ X369 @ (comp @ X367 @ X368))) | ~($true = (X361 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368))) | ~! [X371 : term] : (((X361 @ id @ (sub @ X362 @ (push @ X371 @ id)) @ id) = $true) | ~($true = (X361 @ id @ X371 @ id))) | ~! [X372 : subst > term > term] : (~! [X373 : term] : (($true = (X361 @ id @ (X372 @ id @ X373) @ id)) | ~($true = (X361 @ id @ X373 @ id))) | ((X361 @ id @ (lam @ (X372 @ sh @ one)) @ id) = $true) | ~! [X374 : subst,X375 : term,X376 : subst] : ((X372 @ (comp @ X374 @ X376) @ (sub @ X375 @ X376)) = (sub @ (X372 @ X374 @ X375) @ X376)))) => ! [X377 : subst > term > subst > $o,X378 : term] : (~! [X379 : subst > term > term] : (($true = (X377 @ id @ (lam @ (X379 @ sh @ one)) @ id)) | ~! [X380 : term,X381 : subst,X382 : subst] : ((sub @ (X379 @ X381 @ X380) @ X382) = (X379 @ (comp @ X381 @ X382) @ (sub @ X380 @ X382))) | ~! [X383 : term] : (~($true = (X377 @ id @ X383 @ id)) | ($true = (X377 @ id @ (X379 @ id @ X383) @ id)))) | ~! [X384 : subst,X385 : subst,X386 : term,X387 : subst] : (~($true = (X377 @ X384 @ X386 @ (comp @ X387 @ X385))) | ($true = (X377 @ (comp @ X384 @ X387) @ (sub @ X386 @ X387) @ X385))) | ($true = (X377 @ id @ X378 @ id)) | ~! [X388 : term] : (~($true = (var @ (sub @ X388 @ id))) | ($true = (X377 @ id @ X388 @ id))) | ~! [X389 : subst,X390 : term,X391 : subst,X392 : subst] : (~($true = (X377 @ (comp @ X389 @ X392) @ (sub @ X390 @ X392) @ X391)) | ($true = (X377 @ X389 @ X390 @ (comp @ X392 @ X391)))) | ~! [X393 : term,X394 : term] : (($true = (X377 @ id @ (ap @ (sub @ X394 @ id) @ X393) @ id)) | ~($true = (X377 @ id @ X393 @ id)) | ~($true = (X377 @ id @ X394 @ id)))))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X395 : term > $o,X396 : term,X397 : subst > term > subst > $o] : (~! [X398 : subst,X399 : subst,X400 : term,X401 : subst] : (~((X397 @ (comp @ X401 @ X398) @ (sub @ X400 @ X398) @ X399) = $true) | ($true = (X397 @ X401 @ X400 @ (comp @ X398 @ X399)))) | ($true = (X395 @ (lam @ X396))) | ~! [X402 : term] : (($true = (X395 @ (sub @ X396 @ (push @ X402 @ id)))) | ~($true = (X395 @ X402))) | ~! [X403 : subst > term > term] : (~! [X404 : subst,X405 : term,X406 : subst] : ((X403 @ (comp @ X404 @ X406) @ (sub @ X405 @ X406)) = (sub @ (X403 @ X404 @ X405) @ X406)) | ($true = (X397 @ id @ (lam @ (X403 @ sh @ one)) @ id)) | ~! [X407 : term] : (($true = (X397 @ id @ (X403 @ id @ X407) @ id)) | ~($true = (X397 @ id @ X407 @ id)))) | ~! [X408 : term] : ((X397 @ id @ X408 @ id) = (X395 @ X408)) | ~! [X409 : subst,X410 : subst,X411 : subst,X412 : term] : (~($true = (X397 @ X409 @ X412 @ (comp @ X411 @ X410))) | ($true = (X397 @ (comp @ X409 @ X411) @ (sub @ X412 @ X411) @ X410))))) & (! [X413 : subst] : ((comp @ X413 @ id) = X413) <=> (axidr = $true)) & (hoasinduction_gthm = $true) & (termmset_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasinduction_lem3_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)))))))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X414 : term] : ~! [X415 : subst > term > term] : ~! [X416 : term,X417 : subst] : ((X415 @ X417 @ X416) = (sub @ X414 @ (push @ X416 @ X417)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418) => ! [X420 : term > $o,X421 : term > $o,X422 : term,X423 : subst] : (($true = (X421 @ one)) | ~! [X424 : term] : ((X420 @ (sub @ X424 @ (push @ X422 @ X423))) = (X421 @ X424)) | ~($true = (X420 @ X422))))) & (axclos = $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X425 : subst > term > subst > $o,X426 : term,X427 : term] : (~! [X428 : subst,X429 : term,X430 : subst,X431 : subst] : (~($true = (X425 @ X431 @ X429 @ (comp @ X428 @ X430))) | ($true = (X425 @ (comp @ X431 @ X428) @ (sub @ X429 @ X428) @ X430))) | ~((X425 @ id @ X426 @ id) = $true) | ($true = (X425 @ id @ (ap @ X427 @ X426) @ id)) | ~! [X432 : term,X433 : term] : (~($true = (X425 @ id @ X433 @ id)) | ($true = (X425 @ id @ (ap @ (sub @ X432 @ id) @ X433) @ id)) | ~($true = (X425 @ id @ X432 @ id))) | ~! [X434 : term,X435 : subst,X436 : subst,X437 : subst] : (($true = (X425 @ X435 @ X434 @ (comp @ X437 @ X436))) | ~($true = (X425 @ (comp @ X435 @ X437) @ (sub @ X434 @ X437) @ X436))) | ~($true = (X425 @ id @ X427 @ id)))) & (! [X438 : term] : ~! [X439 : subst > term > term] : ((X439 @ sh @ one) != (sub @ X438 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((axidl = $true) <=> ! [X440 : subst] : ((comp @ id @ X440) = X440)) & ((! [X441 : term] : ~! [X442 : subst > term > term] : ~! [X443 : subst,X444 : term] : ((X442 @ X443 @ X444) = (sub @ X441 @ (push @ X444 @ X443))) => (! [X445 : term] : ((sub @ X445 @ id) = X445) => ! [X446 : term,X447 : subst > term > subst > $o,X448 : term > $o] : (($true = (X448 @ (lam @ X446))) | ~! [X449 : term] : ((X447 @ id @ X449 @ id) = (X448 @ X449)) | ~! [X450 : term] : (($true = (X448 @ (sub @ X446 @ (push @ X450 @ id)))) | ~($true = (X448 @ X450))) | ~! [X451 : subst > term > term] : (~! [X452 : term] : (~($true = (X447 @ id @ X452 @ id)) | ($true = (X447 @ id @ (X451 @ id @ X452) @ id))) | ~! [X453 : subst,X454 : subst,X455 : term] : ((sub @ (X451 @ X453 @ X455) @ X454) = (X451 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))) | ($true = (X447 @ id @ (lam @ (X451 @ sh @ one)) @ id)))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoasapinj1_gthm = $true) & (induction2_gthm = $true) & ((induction2_lthm = $true) <=> (! [X456 : term] : ((sub @ X456 @ id) = X456) => (! [X457 : term > $o,X458 : term,X459 : subst] : (~! [X460 : term] : (~($true = (var @ X460)) | ($true = (X457 @ (sub @ X460 @ X459)))) | ~! [X461 : term] : (~! [X462 : term] : (($true = (X457 @ (sub @ X461 @ (push @ X462 @ id)))) | ~($true = (X457 @ X462))) | ($true = (X457 @ (lam @ X461)))) | ~! [X463 : term,X464 : term] : (($true = (X457 @ (ap @ X464 @ X463))) | ~($true = (X457 @ X464)) | ~($true = (X457 @ X463))) | ($true = (X457 @ (sub @ X458 @ X459)))) => ! [X465 : term,X466 : term > $o] : (($true = (X466 @ X465)) | ~! [X467 : term,X468 : term] : (((X466 @ (ap @ X467 @ X468)) = $true) | ~($true = (X466 @ X467)) | ~($true = (X466 @ X468))) | ~! [X469 : term] : (~($true = (var @ X469)) | ($true = (X466 @ X469))) | ~! [X470 : term] : (($true = (X466 @ (lam @ X470))) | ~! [X471 : term] : (~((X466 @ X471) = $true) | ($true = (X466 @ (sub @ X470 @ (push @ X471 @ id)))))))))) & ((hoasapinj1 = $true) <=> ! [X472 : term,X473 : term,X474 : term,X475 : term] : ((X472 = X475) | ((ap @ (sub @ X472 @ id) @ X473) != (ap @ (sub @ X475 @ id) @ X474)))) & (pushprop = $true) & ((! [X476 : subst > term > subst > $o] : ~! [X477 : term > $o] : ~! [X478 : term] : ((X476 @ id @ X478 @ id) = (X477 @ X478)) => (! [X479 : term > $o,X480 : term] : (~! [X481 : term] : (($true = (X479 @ (lam @ X481))) | ~! [X482 : term] : (~($true = (X479 @ X482)) | ($true = (X479 @ (sub @ X481 @ (push @ X482 @ id)))))) | ~! [X483 : term] : (~((var @ X483) = $true) | ($true = (X479 @ X483))) | ~! [X484 : term,X485 : term] : (($true = (X479 @ (ap @ X485 @ X484))) | ~($true = (X479 @ X485)) | ~((X479 @ X484) = $true)) | ($true = (X479 @ X480))) => (! [X486 : term] : ((sub @ X486 @ id) = X486) => (! [X487 : term,X488 : subst > term > subst > $o,X489 : term > $o] : (~! [X490 : term] : (($true = (X489 @ (sub @ X487 @ (push @ X490 @ id)))) | ~($true = (X489 @ X490))) | ((X489 @ (lam @ X487)) = $true) | ~! [X491 : subst > term > term] : (($true = (X488 @ id @ (lam @ (X491 @ sh @ one)) @ id)) | ~! [X492 : term] : (($true = (X488 @ id @ (X491 @ id @ X492) @ id)) | ~($true = (X488 @ id @ X492 @ id))) | ~! [X493 : term,X494 : subst,X495 : subst] : ((X491 @ (comp @ X495 @ X494) @ (sub @ X493 @ X494)) = (sub @ (X491 @ X495 @ X493) @ X494))) | ~! [X496 : term] : ((X488 @ id @ X496 @ id) = (X489 @ X496))) => ! [X497 : term,X498 : subst > term > subst > $o] : (~! [X499 : subst > term > term] : (~! [X500 : term,X501 : subst,X502 : subst] : ((X499 @ (comp @ X502 @ X501) @ (sub @ X500 @ X501)) = (sub @ (X499 @ X502 @ X500) @ X501)) | ~! [X503 : term] : (($true = (X498 @ id @ (X499 @ id @ X503) @ id)) | ~($true = (X498 @ id @ X503 @ id))) | ($true = (X498 @ id @ (lam @ (X499 @ sh @ one)) @ id))) | ~! [X504 : term,X505 : term] : (~($true = (X498 @ id @ X504 @ id)) | ~($true = (X498 @ id @ X505 @ id)) | ($true = (X498 @ id @ (ap @ (sub @ X504 @ id) @ X505) @ id))) | ~! [X506 : subst,X507 : subst,X508 : term,X509 : subst] : (~($true = (X498 @ X509 @ X508 @ (comp @ X507 @ X506))) | ($true = (X498 @ (comp @ X509 @ X507) @ (sub @ X508 @ X507) @ X506))) | ~! [X510 : subst,X511 : term,X512 : subst,X513 : subst] : (~($true = (X498 @ (comp @ X513 @ X512) @ (sub @ X511 @ X512) @ X510)) | ($true = (X498 @ X513 @ X511 @ (comp @ X512 @ X510)))) | ($true = (X498 @ id @ X497 @ id)) | ~! [X514 : term] : (($true = (X498 @ id @ X514 @ id)) | ~($true = (var @ (sub @ X514 @ id))))))))) <=> (hoasinduction_lthm_3 = $true)) & (hoaslamnotvar = $true) & ((hoaslaminj_lthm = $true) <=> (! [X515 : term,X516 : subst] : ((sub @ one @ (push @ X515 @ X516)) = X515) => (! [X517 : subst,X518 : term] : ((comp @ sh @ (push @ X518 @ X517)) = X517) => (! [X519 : term,X520 : term] : ((X519 = X520) | ((lam @ X520) != (lam @ X519))) => ! [X521 : subst > term > term,X522 : subst,X523 : subst > term > term,X524 : term] : (((X521 @ X522 @ X524) = (X523 @ X522 @ X524)) | ~! [X528 : term,X529 : subst,X530 : subst] : ((sub @ (X521 @ X529 @ X528) @ X530) = (X521 @ (comp @ X529 @ X530) @ (sub @ X528 @ X530))) | ~! [X525 : subst,X526 : term,X527 : subst] : ((X523 @ (comp @ X527 @ X525) @ (sub @ X526 @ X525)) = (sub @ (X523 @ X527 @ X526) @ X525)) | ((lam @ (X523 @ sh @ one)) != (lam @ (X521 @ sh @ one)))))))) & ((hoasapinj1_lthm = $true) <=> (! [X531 : term] : ((sub @ X531 @ id) = X531) => (! [X532 : term,X533 : term,X534 : term,X535 : term] : ((X533 = X534) | ((ap @ X534 @ X535) != (ap @ X533 @ X532))) => ! [X536 : term,X537 : term,X538 : term,X539 : term] : (((ap @ (sub @ X536 @ id) @ X539) != (ap @ (sub @ X537 @ id) @ X538)) | (X536 = X537))))) & (axabs = $true) & (axapp = $true)),
% 2.47/1.94    inference(rectify,[status(thm)],[f6])).
% 2.47/1.94  thf(f6,plain,(
% 2.47/1.94    (hoasinduction_lem1v2_gthm = $true) & (hoasapinj2_gthm = $true) & (! [X0 : term,X1 : subst > term > term,X2 : term] : (~! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5)) | ((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0))) <=> (hoaslamnotap = $true)) & ! [X6 : d_term] : (d_one = X6) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((hoasinduction_lem3a = $true) <=> ! [X7 : term,X8 : subst > term > subst > $o] : (~! [X9 : term] : (~($true = (X8 @ id @ X9 @ id)) | ($true = (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id))) | ~! [X10 : subst > term > term] : (($true = (X8 @ id @ (lam @ (X10 @ sh @ one)) @ id)) | ~! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) | ~! [X14 : term] : (($true = (X8 @ id @ (X10 @ id @ X14) @ id)) | ~($true = (X8 @ id @ X14 @ id)))) | ($true = (X8 @ id @ (lam @ X7) @ id)))) & (! [X15 : term,X16 : term] : ((X15 = X16) | ((lam @ X15) != (lam @ X16))) <=> (laminj = $true)) & (pushprop_gthm = $true) & (! [X17 : term,X18 : term] : ((X17 = X18) | ((sub @ X17 @ sh) != (sub @ X18 @ sh))) <=> (shinj = $true)) & (pushprop_lthm = $true) & (axvarshift = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X19 : term] : ((sub @ X19 @ id) = X19) => ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (~! [X23 : subst > term > term] : (~! [X24 : term] : (~($true = (X21 @ id @ X24 @ id)) | ((X21 @ id @ (X23 @ id @ X24) @ id) = $true)) | ~! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) | ((X21 @ id @ (lam @ (X23 @ sh @ one)) @ id) = $true)) | ~! [X28 : term] : (~($true = (X20 @ X28)) | ($true = (X20 @ (sub @ X22 @ (push @ X28 @ id))))) | ~! [X29 : subst,X30 : subst,X31 : subst,X32 : term] : (($true = (X21 @ X30 @ X32 @ (comp @ X31 @ X29))) | ~($true = (X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29))) | ($true = (X20 @ (lam @ X22))) | ~! [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (~($true = (X21 @ X35 @ X33 @ (comp @ X36 @ X34))) | ($true = (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34))) | ~! [X37 : term] : ((X20 @ X37) = (X21 @ id @ X37 @ id))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoaslamnotvar_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X38 : term > $o,X39 : term,X40 : subst] : ~! [X41 : term > $o] : ~! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42))) & (! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44) <=> (axvarcons = $true)) & (hoaslaminj_gthm = $true) & (! [X45 : term,X46 : term > $o] : (~! [X47 : term] : (($true = (X46 @ (lam @ X47))) | ~! [X48 : term] : (~($true = (X46 @ X48)) | ($true = (X46 @ (sub @ X47 @ (push @ X48 @ id)))))) | ~! [X49 : term,X50 : term] : (~($true = (X46 @ X50)) | ($true = (X46 @ (ap @ X49 @ X50))) | ~($true = (X46 @ X49))) | ~! [X51 : term] : (~($true = (var @ X51)) | ($true = (X46 @ X51))) | ($true = (X46 @ X45))) <=> (induction2 = $true)) & (ulamvarsh = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_lem1 = $true) & (! [X54 : term] : ~! [X55 : subst > term > term] : ((X55 @ sh @ one) != (sub @ X54 @ (push @ one @ sh))) <=> (hoasinduction_lem3b_lthm = $true)) & ((termmset_lthm = $true) <=> (! [X56 : term] : ((sub @ X56 @ id) = X56) => ! [X57 : term] : ((sub @ X57 @ id) = X57))) & ~((var @ (d2term @ d_one)) = $true) & ((! [X58 : subst] : ((comp @ X58 @ id) = X58) & ! [X59 : subst] : ((comp @ id @ X59) = X59)) <=> (substmonoid = $true)) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X60 : term] : ((sub @ X60 @ id) = X60) => (! [X61 : term,X62 : subst > term > subst > $o] : (($true = (X62 @ id @ (lam @ (sub @ X61 @ (push @ one @ sh))) @ id)) | ~! [X63 : subst > term > term] : (($true = (X62 @ id @ (lam @ (X63 @ sh @ one)) @ id)) | ~! [X64 : term] : (($true = (X62 @ id @ (X63 @ id @ X64) @ id)) | ~($true = (X62 @ id @ X64 @ id))) | ~! [X65 : term,X66 : subst,X67 : subst] : ((sub @ (X63 @ X67 @ X65) @ X66) = (X63 @ (comp @ X67 @ X66) @ (sub @ X65 @ X66)))) | ~! [X68 : term] : (~($true = (X62 @ id @ X68 @ id)) | ($true = (X62 @ id @ (sub @ X61 @ (push @ X68 @ id)) @ id)))) => ! [X69 : subst > term > subst > $o,X70 : term] : (($true = (X69 @ id @ (lam @ X70) @ id)) | ~! [X71 : term] : (~($true = (X69 @ id @ X71 @ id)) | ($true = (X69 @ id @ (sub @ X70 @ (push @ X71 @ id)) @ id))) | ~! [X72 : subst > term > term] : (~! [X73 : term] : (~($true = (X69 @ id @ X73 @ id)) | ($true = (X69 @ id @ (X72 @ id @ X73) @ id))) | ($true = (X69 @ id @ (lam @ (X72 @ sh @ one)) @ id)) | ~! [X74 : subst,X75 : subst,X76 : term] : ((sub @ (X72 @ X75 @ X76) @ X74) = (X72 @ (comp @ X75 @ X74) @ (sub @ X76 @ X74)))))))) & (pushprop_lem2v2 = $true) & ! [X77 : d_subst,X78 : d_subst] : (((d2subst @ X78) = (d2subst @ X77)) => (X77 = X78)) & ~(ulamvar1 = $true) & (substmonoid_gthm = $true) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & (! [X79 : term] : ((sub @ X79 @ id) = X79) <=> (termmset = $true)) & (hoasinduction_lem3v2_gthm = $true) & (! [X80 : term,X81 : subst > term > subst > $o] : (($true = (X81 @ id @ X80 @ id)) | ~! [X82 : subst > term > term] : (~! [X83 : subst,X84 : term,X85 : subst] : ((sub @ (X82 @ X83 @ X84) @ X85) = (X82 @ (comp @ X83 @ X85) @ (sub @ X84 @ X85))) | ($true = (X81 @ id @ (lam @ (X82 @ sh @ one)) @ id)) | ~! [X86 : term] : (($true = (X81 @ id @ (X82 @ id @ X86) @ id)) | ~($true = (X81 @ id @ X86 @ id)))) | ~! [X87 : subst,X88 : subst,X89 : term,X90 : subst] : (~($true = (X81 @ X87 @ X89 @ (comp @ X88 @ X90))) | ($true = (X81 @ (comp @ X87 @ X88) @ (sub @ X89 @ X88) @ X90))) | ~! [X91 : term] : (($true = (X81 @ id @ X91 @ id)) | ~($true = (var @ (sub @ X91 @ id)))) | ~! [X92 : subst,X93 : subst,X94 : subst,X95 : term] : (~($true = (X81 @ (comp @ X93 @ X94) @ (sub @ X95 @ X94) @ X92)) | ($true = (X81 @ X93 @ X95 @ (comp @ X94 @ X92)))) | ~! [X96 : term,X97 : term] : (($true = (X81 @ id @ (ap @ (sub @ X96 @ id) @ X97) @ id)) | ~((X81 @ id @ X96 @ id) = $true) | ~($true = (X81 @ id @ X97 @ id)))) <=> (hoasinduction = $true)) & (hoasinduction_lem2v2_gthm = $true) & ((axscons = $true) <=> ! [X98 : subst] : ((push @ (sub @ one @ X98) @ (comp @ sh @ X98)) = X98)) & (! [X99 : term > $o,X100 : term,X101 : subst,X102 : term > $o,X103 : term] : (~($true = (X99 @ X103)) | ($true = (X102 @ (sub @ X103 @ (push @ X100 @ X101))))) <=> (pushprop_lem1 = $true)) & (pushprop_lem3v2_lthm = $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X104 : subst > term > subst > $o,X105 : term > $o,X106 : term] : (~! [X107 : term] : (($true = (X105 @ (sub @ X106 @ (push @ X107 @ id)))) | ~($true = (X105 @ X107))) | ~! [X108 : subst > term > term] : (~! [X109 : term,X110 : subst,X111 : subst] : ((X108 @ (comp @ X111 @ X110) @ (sub @ X109 @ X110)) = (sub @ (X108 @ X111 @ X109) @ X110)) | ($true = (X104 @ id @ (lam @ (X108 @ sh @ one)) @ id)) | ~! [X112 : term] : (((X104 @ id @ (X108 @ id @ X112) @ id) = $true) | ~($true = (X104 @ id @ X112 @ id)))) | ~! [X113 : term] : ((X104 @ id @ X113 @ id) = (X105 @ X113)) | ($true = (X105 @ (lam @ X106)))) <=> (hoasinduction_lem3v2a = $true)) & (! [X114 : subst > term > term,X115 : subst > term > term,X116 : term,X117 : subst] : (~! [X118 : subst,X119 : term,X120 : subst] : ((sub @ (X114 @ X118 @ X119) @ X120) = (X114 @ (comp @ X118 @ X120) @ (sub @ X119 @ X120))) | ((lam @ (X115 @ sh @ one)) != (lam @ (X114 @ sh @ one))) | ((X114 @ X117 @ X116) = (X115 @ X117 @ X116)) | ~! [X121 : subst,X122 : term,X123 : subst] : ((X115 @ (comp @ X123 @ X121) @ (sub @ X122 @ X121)) = (sub @ (X115 @ X123 @ X122) @ X121))) <=> (hoaslaminj = $true)) & (! [X124 : term,X125 : term > $o,X126 : subst] : ~! [X127 : term > $o] : ~! [X128 : term] : ((X125 @ (sub @ X128 @ (push @ X124 @ X126))) = (X127 @ X128)) <=> (pushprop_lem0 = $true)) & (hoasapnotvar_lthm = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X129 : subst,X130 : term] : ((sub @ one @ (push @ X130 @ X129)) = X130) => (! [X131 : subst,X132 : term] : ((comp @ sh @ (push @ X132 @ X131)) = X131) => ! [X133 : subst,X134 : term,X135 : term > $o,X136 : term,X137 : term > $o] : (~($true = (X137 @ X136)) | ($true = (X135 @ (sub @ X136 @ (push @ X134 @ X133)))))))) & (! [X138 : term > $o,X139 : term,X140 : term,X141 : subst > term > subst > $o] : (($true = (X138 @ (ap @ X139 @ X140))) | ~! [X142 : term,X143 : term] : (~($true = (X141 @ id @ X143 @ id)) | ($true = (X141 @ id @ (ap @ (sub @ X143 @ id) @ X142) @ id)) | ~($true = (X141 @ id @ X142 @ id))) | ~($true = (X138 @ X139)) | ~($true = (X138 @ X140)) | ~! [X144 : term] : ((X141 @ id @ X144 @ id) = (X138 @ X144)) | ~! [X145 : subst,X146 : subst,X147 : term,X148 : subst] : (($true = (X141 @ (comp @ X145 @ X148) @ (sub @ X147 @ X148) @ X146)) | ~($true = (X141 @ X145 @ X147 @ (comp @ X148 @ X146)))) | ~! [X149 : subst,X150 : subst,X151 : subst,X152 : term] : (($true = (X141 @ X149 @ X152 @ (comp @ X151 @ X150))) | ~($true = (X141 @ (comp @ X149 @ X151) @ (sub @ X152 @ X151) @ X150)))) <=> (hoasinduction_lem2v2 = $true)) & (pushprop_lem1v2_gthm = $true) & (apnotvar = $true) & (pushprop_lem2v2_lthm = $true) & (! [X153 : subst > term > subst > $o] : ~! [X154 : term > $o] : ~! [X155 : term] : ((X153 @ id @ X155 @ id) = (X154 @ X155)) <=> (hoasinduction_lem0_lthm = $true)) & (hoaslamnotap_lthm = $true) & (axmap = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X156 : subst > term > subst > $o,X157 : term] : (~! [X158 : subst > term > term] : (($true = (X156 @ id @ (lam @ (X158 @ sh @ one)) @ id)) | ~! [X159 : term] : (($true = (X156 @ id @ (X158 @ id @ X159) @ id)) | ~($true = (X156 @ id @ X159 @ id))) | ~! [X160 : term,X161 : subst,X162 : subst] : ((sub @ (X158 @ X161 @ X160) @ X162) = (X158 @ (comp @ X161 @ X162) @ (sub @ X160 @ X162)))) | ~! [X163 : term] : (($true = (X156 @ id @ (sub @ X157 @ (push @ X163 @ id)) @ id)) | ~($true = (X156 @ id @ X163 @ id))) | ($true = (X156 @ id @ (lam @ (sub @ X157 @ (push @ one @ sh))) @ id)))) & (hoasinduction_lem1_lthm = $true) & ((d2subst @ d_id) = sh) & ((hoasinduction_lem3aaa = $true) <=> ! [X164 : subst > term > subst > $o,X165 : term] : (~! [X166 : subst > term > term,X167 : term] : (~! [X168 : subst,X169 : term,X170 : subst] : ((sub @ (sub @ X167 @ (push @ X169 @ X170)) @ X168) = (sub @ (X166 @ X170 @ X169) @ X168)) | ~! [X171 : subst,X172 : term,X173 : subst] : ((X166 @ (comp @ X173 @ X171) @ (sub @ X172 @ X171)) = (sub @ X167 @ (push @ (sub @ X172 @ X171) @ (comp @ X173 @ X171)))) | ($true = (X164 @ id @ (lam @ (X166 @ sh @ one)) @ id)) | ~! [X174 : term] : (($true = (X164 @ id @ (X166 @ id @ X174) @ id)) | ~($true = (X164 @ id @ X174 @ id)))) | ($true = (X164 @ id @ (lam @ (sub @ X165 @ (push @ one @ sh))) @ id)) | ~! [X175 : term] : (($true = (X164 @ id @ (sub @ X165 @ (push @ X175 @ id)) @ id)) | ~($true = (X164 @ id @ X175 @ id))))) & (one = (d2term @ d_one)) & (induction2lem_gthm = $true) & ((! [X176 : subst > term > subst > $o] : ~! [X177 : term > $o] : ~! [X178 : term] : ((X177 @ X178) = (X176 @ id @ X178 @ id)) => (! [X179 : term,X180 : term > $o] : (((X180 @ X179) = $true) | ~! [X181 : term,X182 : term] : (~($true = (X180 @ X182)) | ($true = (X180 @ (ap @ X181 @ X182))) | ~($true = (X180 @ X181))) | ~! [X183 : term] : (~($true = (var @ X183)) | ($true = (X180 @ X183))) | ~! [X184 : term] : (~! [X185 : term] : (~((X180 @ X185) = $true) | ($true = (X180 @ (sub @ X184 @ (push @ X185 @ id))))) | ($true = (X180 @ (lam @ X184))))) => (! [X186 : term] : ((sub @ X186 @ id) = X186) => (! [X187 : subst > term > subst > $o,X188 : term,X189 : term > $o] : (~! [X190 : term] : ((X187 @ id @ X190 @ id) = (X189 @ X190)) | ($true = (X189 @ (lam @ X188))) | ~! [X191 : term] : (((X189 @ (sub @ X188 @ (push @ X191 @ id))) = $true) | ~($true = (X189 @ X191))) | ~! [X192 : subst > term > term] : (~! [X193 : term,X194 : subst,X195 : subst] : ((X192 @ (comp @ X195 @ X194) @ (sub @ X193 @ X194)) = (sub @ (X192 @ X195 @ X193) @ X194)) | ~! [X196 : term] : (~($true = (X187 @ id @ X196 @ id)) | ($true = (X187 @ id @ (X192 @ id @ X196) @ id))) | ($true = (X187 @ id @ (lam @ (X192 @ sh @ one)) @ id)))) => ! [X197 : term,X198 : subst > term > subst > $o] : (($true = (X198 @ id @ X197 @ id)) | ~! [X199 : term,X200 : term] : (~($true = (X198 @ id @ X200 @ id)) | ~($true = (X198 @ id @ X199 @ id)) | ($true = (X198 @ id @ (ap @ (sub @ X199 @ id) @ X200) @ id))) | ~! [X201 : subst > term > term] : (($true = (X198 @ id @ (lam @ (X201 @ sh @ one)) @ id)) | ~! [X202 : term] : (~($true = (X198 @ id @ X202 @ id)) | ($true = (X198 @ id @ (X201 @ id @ X202) @ id))) | ~! [X203 : term,X204 : subst,X205 : subst] : ((X201 @ (comp @ X204 @ X205) @ (sub @ X203 @ X205)) = (sub @ (X201 @ X204 @ X203) @ X205)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X206 : subst] : ? [X207 : d_subst] : ((d2subst @ X207) = X206) & (! [X208 : term,X209 : term,X210 : term,X211 : term] : (((ap @ (sub @ X209 @ id) @ X211) != (ap @ (sub @ X208 @ id) @ X210)) | (X210 = X211)) <=> (hoasapinj2 = $true)) & (! [X212 : term,X213 : term,X214 : term,X215 : term] : (((ap @ X215 @ X213) != (ap @ X214 @ X212)) | (X212 = X213)) <=> (apinj2 = $true)) & (hoasinduction_lem3b_gthm = $true) & (lamnotvar = $true) & (! [X216 : term] : ((sub @ X216 @ id) = X216) <=> (axvarid = $true)) & (pushprop_lem1_gthm = $true) & (axassoc = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((hoasinduction_lem3aa = $true) <=> ! [X217 : subst > term > subst > $o,X218 : term] : (($true = (X217 @ id @ (lam @ (sub @ X218 @ (push @ one @ sh))) @ id)) | ~! [X219 : subst > term > term] : (((X217 @ id @ (lam @ (X219 @ sh @ one)) @ id) = $true) | ~! [X220 : term] : (~($true = (X217 @ id @ X220 @ id)) | ($true = (X217 @ id @ (X219 @ id @ X220) @ id))) | ~! [X221 : term,X222 : subst,X223 : subst] : ((sub @ (X219 @ X222 @ X221) @ X223) = (X219 @ (comp @ X222 @ X223) @ (sub @ X221 @ X223)))) | ~! [X224 : term] : (~($true = (X217 @ id @ X224 @ id)) | ($true = (X217 @ id @ (sub @ X218 @ (push @ X224 @ id)) @ id))))) & (! [X225 : term] : ~! [X226 : subst > term > term] : ~! [X227 : term,X228 : subst] : ((X226 @ X228 @ X227) = (sub @ X225 @ (push @ X227 @ X228))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((hoasinduction_lem3 = $true) <=> ! [X229 : term,X230 : subst > term > subst > $o] : (~! [X231 : term,X232 : subst,X233 : subst,X234 : subst] : (~($true = (X230 @ X232 @ X231 @ (comp @ X233 @ X234))) | ($true = (X230 @ (comp @ X232 @ X233) @ (sub @ X231 @ X233) @ X234))) | ~! [X235 : term] : (~($true = (X230 @ id @ X235 @ id)) | ($true = (X230 @ id @ (sub @ X229 @ (push @ X235 @ id)) @ id))) | ~! [X236 : subst > term > term] : (~! [X237 : term] : (($true = (X230 @ id @ (X236 @ id @ X237) @ id)) | ~($true = (X230 @ id @ X237 @ id))) | ~! [X238 : subst,X239 : subst,X240 : term] : ((X236 @ (comp @ X239 @ X238) @ (sub @ X240 @ X238)) = (sub @ (X236 @ X239 @ X240) @ X238)) | ($true = (X230 @ id @ (lam @ (X236 @ sh @ one)) @ id))) | ~! [X241 : subst,X242 : term,X243 : subst,X244 : subst] : (~($true = (X230 @ (comp @ X241 @ X244) @ (sub @ X242 @ X244) @ X243)) | ($true = (X230 @ X241 @ X242 @ (comp @ X244 @ X243)))) | ($true = (X230 @ id @ (lam @ X229) @ id)))) & ~(lamnotap = $true) & ((hoasinduction_lem3_lthm = $true) <=> (! [X245 : term] : ((sub @ X245 @ id) = X245) => (! [X246 : subst > term > subst > $o,X247 : term] : (~! [X248 : term] : (($true = (X246 @ id @ (sub @ X247 @ (push @ X248 @ id)) @ id)) | ~($true = (X246 @ id @ X248 @ id))) | ($true = (X246 @ id @ (lam @ (sub @ X247 @ (push @ one @ sh))) @ id)) | ~! [X249 : subst > term > term] : (~! [X250 : subst,X251 : term,X252 : subst] : ((sub @ (X249 @ X250 @ X251) @ X252) = (X249 @ (comp @ X250 @ X252) @ (sub @ X251 @ X252))) | ~! [X253 : term] : (~($true = (X246 @ id @ X253 @ id)) | ((X246 @ id @ (X249 @ id @ X253) @ id) = $true)) | ((X246 @ id @ (lam @ (X249 @ sh @ one)) @ id) = $true))) => ! [X254 : term,X255 : subst > term > subst > $o] : (~! [X256 : term,X257 : subst,X258 : subst,X259 : subst] : (($true = (X255 @ X258 @ X256 @ (comp @ X259 @ X257))) | ~($true = (X255 @ (comp @ X258 @ X259) @ (sub @ X256 @ X259) @ X257))) | ~! [X260 : subst,X261 : subst,X262 : subst,X263 : term] : (~($true = (X255 @ X262 @ X263 @ (comp @ X260 @ X261))) | ($true = (X255 @ (comp @ X262 @ X260) @ (sub @ X263 @ X260) @ X261))) | ($true = (X255 @ id @ (lam @ X254) @ id)) | ~! [X264 : term] : (~($true = (X255 @ id @ X264 @ id)) | ($true = (X255 @ id @ (sub @ X254 @ (push @ X264 @ id)) @ id))) | ~! [X265 : subst > term > term] : (~! [X266 : term] : (($true = (X255 @ id @ (X265 @ id @ X266) @ id)) | ~($true = (X255 @ id @ X266 @ id))) | ($true = (X255 @ id @ (lam @ (X265 @ sh @ one)) @ id)) | ~! [X267 : subst,X268 : term,X269 : subst] : ((sub @ (X265 @ X269 @ X268) @ X267) = (X265 @ (comp @ X269 @ X267) @ (sub @ X268 @ X267)))))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasapinj2_lthm = $true) <=> (! [X270 : term,X271 : term,X272 : term,X273 : term] : (((ap @ X273 @ X272) != (ap @ X270 @ X271)) | (X271 = X272)) => ! [X274 : term,X275 : term,X276 : term,X277 : term] : (((ap @ (sub @ X276 @ id) @ X274) != (ap @ (sub @ X277 @ id) @ X275)) | (X274 = X275)))) & ((apinj1 = $true) <=> ! [X278 : term,X279 : term,X280 : term,X281 : term] : ((X278 = X281) | ((ap @ X278 @ X279) != (ap @ X281 @ X280)))) & ! [X282 : d_term,X283 : d_term] : (((d2term @ X282) = (d2term @ X283)) => (X282 = X283)) & (hoasapnotvar = $true) & (! [X284 : subst > term > subst > $o,X285 : term] : (~! [X286 : subst > term > term] : (~! [X287 : term] : (($true = (X284 @ id @ (X286 @ id @ X287) @ id)) | ~($true = (X284 @ id @ X287 @ id))) | ((X284 @ id @ (lam @ (X286 @ sh @ one)) @ id) = $true) | ~! [X288 : term,X289 : subst,X290 : subst] : ((sub @ (X286 @ X289 @ X288) @ X290) = (X286 @ (comp @ X289 @ X290) @ (sub @ X288 @ X290)))) | ~! [X291 : term,X292 : term] : (~($true = (X284 @ id @ X291 @ id)) | ($true = (X284 @ id @ (ap @ (sub @ X291 @ id) @ X292) @ id)) | ~($true = (X284 @ id @ X292 @ id))) | ($true = (X284 @ id @ X285 @ id))) <=> (hoasinduction_no_psi_cond = $true)) & (hoaslamnotvar_lthm = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & ! [X293 : term] : ? [X294 : d_term] : ((d2term @ X294) = X293) & ((induction2lem = $true) <=> ! [X295 : term > $o,X296 : subst,X297 : term] : (~! [X298 : term,X299 : term] : (($true = (X295 @ (ap @ X299 @ X298))) | ~($true = (X295 @ X299)) | ~((X295 @ X298) = $true)) | ~! [X300 : term] : (~! [X301 : term] : (($true = (X295 @ (sub @ X300 @ (push @ X301 @ id)))) | ~($true = (X295 @ X301))) | ($true = (X295 @ (lam @ X300)))) | ~! [X302 : term] : (~($true = (var @ X302)) | ($true = (X295 @ (sub @ X302 @ X296)))) | ($true = (X295 @ (sub @ X297 @ X296))))) & (hoasinduction_lem1v2 = $true) & ((! [X303 : subst] : ((comp @ id @ X303) = X303) => (! [X304 : subst] : ((comp @ X304 @ id) = X304) => (! [X305 : subst] : ((comp @ id @ X305) = X305) & ! [X306 : subst] : ((comp @ X306 @ id) = X306)))) <=> (substmonoid_lthm = $true)) & (pushprop_lthm_orig = $true) & (hoasinduction_lem3a_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X307 : subst > term > subst > $o] : ~! [X308 : term > $o] : ~! [X309 : term] : ((X307 @ id @ X309 @ id) = (X308 @ X309))) & (hoaslamnotap_gthm = $true) & (! [X310 : term,X311 : term > $o] : (~! [X312 : term,X313 : term] : (~($true = (X311 @ X312)) | ~($true = (X311 @ X313)) | ($true = (X311 @ (ap @ X313 @ X312)))) | ~! [X314 : term] : (~($true = (var @ X314)) | ($true = (X311 @ X314))) | ~! [X315 : term] : (~($true = (X311 @ X315)) | ($true = (X311 @ (lam @ X315)))) | ((X311 @ X310) = $true)) <=> (induction = $true)) & ((d2subst @ d_id) = id) & ((axshiftcons = $true) <=> ! [X316 : subst,X317 : term] : ((comp @ sh @ (push @ X317 @ X316)) = X316)) & ((pushprop_lem1v2 = $true) <=> ! [X318 : term > $o,X319 : term > $o,X320 : term,X321 : subst] : (~($true = (X319 @ X320)) | ~! [X322 : term] : ((X319 @ (sub @ X322 @ (push @ X320 @ X321))) = (X318 @ X322)) | ($true = (X318 @ one)))) & ! [X323 : d_subst] : (d_id = X323) & ((induction2lem_lthm = $true) <=> (! [X324 : subst,X325 : term] : ((sub @ one @ (push @ X325 @ X324)) = X325) => (! [X326 : subst,X327 : term] : ((comp @ sh @ (push @ X327 @ X326)) = X326) => (! [X328 : subst] : ((comp @ X328 @ id) = X328) => (! [X329 : term > $o,X330 : term] : (~! [X331 : term] : (~($true = (var @ X331)) | ($true = (X329 @ X331))) | ~! [X332 : term,X333 : term] : (~($true = (X329 @ X332)) | ~($true = (X329 @ X333)) | ($true = (X329 @ (ap @ X333 @ X332)))) | ~! [X334 : term] : (~($true = (X329 @ X334)) | ($true = (X329 @ (lam @ X334)))) | ($true = (X329 @ X330))) => ! [X335 : subst,X336 : term,X337 : term > $o] : (~! [X338 : term] : (($true = (X337 @ (sub @ X338 @ X335))) | ~($true = (var @ X338))) | ~! [X339 : term,X340 : term] : (~($true = (X337 @ X340)) | ($true = (X337 @ (ap @ X340 @ X339))) | ~($true = (X337 @ X339))) | ~! [X341 : term] : (~! [X342 : term] : (($true = (X337 @ (sub @ X341 @ (push @ X342 @ id)))) | ~($true = (X337 @ X342))) | ($true = (X337 @ (lam @ X341)))) | ($true = (X337 @ (sub @ X336 @ X335))))))))) & ((hoasinduction_lthm = $true) <=> (! [X343 : term,X344 : term > $o] : (~! [X345 : term] : (~($true = (var @ X345)) | ($true = (X344 @ X345))) | ~! [X346 : term] : (~! [X347 : term] : (((X344 @ (sub @ X346 @ (push @ X347 @ id))) = $true) | ~($true = (X344 @ X347))) | ($true = (X344 @ (lam @ X346)))) | ($true = (X344 @ X343)) | ~! [X348 : term,X349 : term] : (~($true = (X344 @ X348)) | ((X344 @ (ap @ X349 @ X348)) = $true) | ~($true = (X344 @ X349)))) => (! [X350 : term,X351 : term,X352 : subst > term > subst > $o] : (($true = (X352 @ id @ (ap @ X350 @ X351) @ id)) | ~($true = (X352 @ id @ X351 @ id)) | ~($true = (X352 @ id @ X350 @ id)) | ~! [X353 : term,X354 : subst,X355 : subst,X356 : subst] : (($true = (X352 @ X355 @ X353 @ (comp @ X354 @ X356))) | ~($true = (X352 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354) @ X356))) | ~! [X357 : term,X358 : term] : (($true = (X352 @ id @ (ap @ (sub @ X358 @ id) @ X357) @ id)) | ~($true = (X352 @ id @ X357 @ id)) | ~($true = (X352 @ id @ X358 @ id))) | ~! [X359 : subst,X360 : subst,X361 : subst,X362 : term] : (($true = (X352 @ (comp @ X359 @ X360) @ (sub @ X362 @ X360) @ X361)) | ~($true = (X352 @ X359 @ X362 @ (comp @ X360 @ X361))))) => (! [X363 : subst > term > subst > $o,X364 : term] : (($true = (X363 @ id @ (lam @ X364) @ id)) | ~! [X365 : subst,X366 : term,X367 : subst,X368 : subst] : (~((X363 @ X368 @ X366 @ (comp @ X365 @ X367)) = $true) | ($true = (X363 @ (comp @ X368 @ X365) @ (sub @ X366 @ X365) @ X367))) | ~! [X369 : subst,X370 : subst,X371 : term,X372 : subst] : (($true = (X363 @ X372 @ X371 @ (comp @ X369 @ X370))) | ~($true = (X363 @ (comp @ X372 @ X369) @ (sub @ X371 @ X369) @ X370))) | ~! [X373 : term] : (((X363 @ id @ (sub @ X364 @ (push @ X373 @ id)) @ id) = $true) | ~($true = (X363 @ id @ X373 @ id))) | ~! [X374 : subst > term > term] : (~! [X375 : term] : (($true = (X363 @ id @ (X374 @ id @ X375) @ id)) | ~($true = (X363 @ id @ X375 @ id))) | ($true = (X363 @ id @ (lam @ (X374 @ sh @ one)) @ id)) | ~! [X376 : subst,X377 : term,X378 : subst] : ((sub @ (X374 @ X376 @ X377) @ X378) = (X374 @ (comp @ X376 @ X378) @ (sub @ X377 @ X378))))) => ! [X379 : subst > term > subst > $o,X380 : term] : (~! [X381 : subst > term > term] : (($true = (X379 @ id @ (lam @ (X381 @ sh @ one)) @ id)) | ~! [X382 : term,X383 : subst,X384 : subst] : ((sub @ (X381 @ X383 @ X382) @ X384) = (X381 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384))) | ~! [X385 : term] : (~($true = (X379 @ id @ X385 @ id)) | ($true = (X379 @ id @ (X381 @ id @ X385) @ id)))) | ~! [X386 : subst,X387 : subst,X388 : term,X389 : subst] : (~($true = (X379 @ X386 @ X388 @ (comp @ X389 @ X387))) | ($true = (X379 @ (comp @ X386 @ X389) @ (sub @ X388 @ X389) @ X387))) | ($true = (X379 @ id @ X380 @ id)) | ~! [X390 : term] : (~($true = (var @ (sub @ X390 @ id))) | ($true = (X379 @ id @ X390 @ id))) | ~! [X391 : subst,X392 : term,X393 : subst,X394 : subst] : (~($true = (X379 @ (comp @ X391 @ X394) @ (sub @ X392 @ X394) @ X393)) | ($true = (X379 @ X391 @ X392 @ (comp @ X394 @ X393)))) | ~! [X395 : term,X396 : term] : (($true = (X379 @ id @ (ap @ (sub @ X396 @ id) @ X395) @ id)) | ~($true = (X379 @ id @ X395 @ id)) | ~($true = (X379 @ id @ X396 @ id)))))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X397 : term > $o,X398 : term,X399 : subst > term > subst > $o] : (~! [X400 : subst,X401 : subst,X402 : term,X403 : subst] : (~($true = (X399 @ (comp @ X403 @ X400) @ (sub @ X402 @ X400) @ X401)) | ($true = (X399 @ X403 @ X402 @ (comp @ X400 @ X401)))) | ($true = (X397 @ (lam @ X398))) | ~! [X404 : term] : (($true = (X397 @ (sub @ X398 @ (push @ X404 @ id)))) | ~($true = (X397 @ X404))) | ~! [X405 : subst > term > term] : (~! [X406 : subst,X407 : term,X408 : subst] : ((sub @ (X405 @ X406 @ X407) @ X408) = (X405 @ (comp @ X406 @ X408) @ (sub @ X407 @ X408))) | ($true = (X399 @ id @ (lam @ (X405 @ sh @ one)) @ id)) | ~! [X409 : term] : (($true = (X399 @ id @ (X405 @ id @ X409) @ id)) | ~($true = (X399 @ id @ X409 @ id)))) | ~! [X410 : term] : ((X397 @ X410) = (X399 @ id @ X410 @ id)) | ~! [X411 : subst,X412 : subst,X413 : subst,X414 : term] : (~($true = (X399 @ X411 @ X414 @ (comp @ X413 @ X412))) | ($true = (X399 @ (comp @ X411 @ X413) @ (sub @ X414 @ X413) @ X412))))) & (! [X415 : subst] : ((comp @ X415 @ id) = X415) <=> (axidr = $true)) & (hoasinduction_gthm = $true) & (termmset_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (pushprop_lem3v2 = $true) & (hoasinduction_lem3_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)))))))))))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X421 : term] : ~! [X422 : subst > term > term] : ~! [X423 : term,X424 : subst] : ((sub @ X421 @ (push @ X423 @ X424)) = (X422 @ X424 @ X423))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X425 : term,X426 : subst] : ((sub @ one @ (push @ X425 @ X426)) = X425) => ! [X427 : term > $o,X428 : term > $o,X429 : term,X430 : subst] : (($true = (X428 @ one)) | ~! [X431 : term] : ((X427 @ (sub @ X431 @ (push @ X429 @ X430))) = (X428 @ X431)) | ~($true = (X427 @ X429))))) & (axclos = $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (~! [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (~((X432 @ X438 @ X436 @ (comp @ X435 @ X437)) = $true) | ($true = (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437))) | ~($true = (X432 @ id @ X433 @ id)) | ($true = (X432 @ id @ (ap @ X434 @ X433) @ id)) | ~! [X439 : term,X440 : term] : (~($true = (X432 @ id @ X440 @ id)) | ($true = (X432 @ id @ (ap @ (sub @ X439 @ id) @ X440) @ id)) | ~($true = (X432 @ id @ X439 @ id))) | ~! [X441 : term,X442 : subst,X443 : subst,X444 : subst] : (($true = (X432 @ X442 @ X441 @ (comp @ X444 @ X443))) | ~($true = (X432 @ (comp @ X442 @ X444) @ (sub @ X441 @ X444) @ X443))) | ~($true = (X432 @ id @ X434 @ id)))) & ((hoasinduction_lem3b = $true) <=> ! [X445 : term] : ~! [X446 : subst > term > term] : ((X446 @ sh @ one) != (sub @ X445 @ (push @ one @ sh)))) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((axidl = $true) <=> ! [X450 : subst] : ((comp @ id @ X450) = X450)) & ((! [X451 : term] : ~! [X452 : subst > term > term] : ~! [X453 : subst,X454 : term] : ((sub @ X451 @ (push @ X454 @ X453)) = (X452 @ X453 @ X454)) => (! [X455 : term] : ((sub @ X455 @ id) = X455) => ! [X456 : term,X457 : subst > term > subst > $o,X458 : term > $o] : (($true = (X458 @ (lam @ X456))) | ~! [X459 : term] : ((X457 @ id @ X459 @ id) = (X458 @ X459)) | ~! [X460 : term] : (($true = (X458 @ (sub @ X456 @ (push @ X460 @ id)))) | ~($true = (X458 @ X460))) | ~! [X461 : subst > term > term] : (~! [X462 : term] : (~($true = (X457 @ id @ X462 @ id)) | ($true = (X457 @ id @ (X461 @ id @ X462) @ id))) | ~! [X463 : subst,X464 : subst,X465 : term] : ((sub @ (X461 @ X463 @ X465) @ X464) = (X461 @ (comp @ X463 @ X464) @ (sub @ X465 @ X464))) | ($true = (X457 @ id @ (lam @ (X461 @ sh @ one)) @ id)))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem2_lthm = $true) & (hoasapinj1_gthm = $true) & (induction2_gthm = $true) & ((induction2_lthm = $true) <=> (! [X466 : term] : ((sub @ X466 @ id) = X466) => (! [X467 : term > $o,X468 : term,X469 : subst] : (~! [X470 : term] : (~($true = (var @ X470)) | ((X467 @ (sub @ X470 @ X469)) = $true)) | ~! [X471 : term] : (~! [X472 : term] : (($true = (X467 @ (sub @ X471 @ (push @ X472 @ id)))) | ~($true = (X467 @ X472))) | ($true = (X467 @ (lam @ X471)))) | ~! [X473 : term,X474 : term] : (($true = (X467 @ (ap @ X474 @ X473))) | ~($true = (X467 @ X474)) | ~((X467 @ X473) = $true)) | ($true = (X467 @ (sub @ X468 @ X469)))) => ! [X475 : term,X476 : term > $o] : (($true = (X476 @ X475)) | ~! [X477 : term,X478 : term] : (($true = (X476 @ (ap @ X477 @ X478))) | ~($true = (X476 @ X477)) | ~($true = (X476 @ X478))) | ~! [X479 : term] : (~($true = (var @ X479)) | ($true = (X476 @ X479))) | ~! [X480 : term] : (($true = (X476 @ (lam @ X480))) | ~! [X481 : term] : (~($true = (X476 @ X481)) | ($true = (X476 @ (sub @ X480 @ (push @ X481 @ id)))))))))) & ((hoasapinj1 = $true) <=> ! [X482 : term,X483 : term,X484 : term,X485 : term] : (((ap @ (sub @ X482 @ id) @ X483) != (ap @ (sub @ X485 @ id) @ X484)) | (X482 = X485))) & (pushprop = $true) & ((! [X486 : subst > term > subst > $o] : ~! [X487 : term > $o] : ~! [X488 : term] : ((X486 @ id @ X488 @ id) = (X487 @ X488)) => (! [X489 : term > $o,X490 : term] : (~! [X491 : term] : (($true = (X489 @ (lam @ X491))) | ~! [X492 : term] : (~($true = (X489 @ X492)) | ($true = (X489 @ (sub @ X491 @ (push @ X492 @ id)))))) | ~! [X493 : term] : (~($true = (var @ X493)) | ((X489 @ X493) = $true)) | ~! [X494 : term,X495 : term] : (($true = (X489 @ (ap @ X495 @ X494))) | ~($true = (X489 @ X495)) | ~($true = (X489 @ X494))) | ($true = (X489 @ X490))) => (! [X496 : term] : ((sub @ X496 @ id) = X496) => (! [X497 : term,X498 : subst > term > subst > $o,X499 : term > $o] : (~! [X500 : term] : (($true = (X499 @ (sub @ X497 @ (push @ X500 @ id)))) | ~($true = (X499 @ X500))) | ($true = (X499 @ (lam @ X497))) | ~! [X501 : subst > term > term] : (($true = (X498 @ id @ (lam @ (X501 @ sh @ one)) @ id)) | ~! [X502 : term] : (((X498 @ id @ (X501 @ id @ X502) @ id) = $true) | ~($true = (X498 @ id @ X502 @ id))) | ~! [X503 : term,X504 : subst,X505 : subst] : ((sub @ (X501 @ X505 @ X503) @ X504) = (X501 @ (comp @ X505 @ X504) @ (sub @ X503 @ X504)))) | ~! [X506 : term] : ((X499 @ X506) = (X498 @ id @ X506 @ id))) => ! [X507 : term,X508 : subst > term > subst > $o] : (~! [X509 : subst > term > term] : (~! [X510 : term,X511 : subst,X512 : subst] : ((X509 @ (comp @ X512 @ X511) @ (sub @ X510 @ X511)) = (sub @ (X509 @ X512 @ X510) @ X511)) | ~! [X513 : term] : (($true = (X508 @ id @ (X509 @ id @ X513) @ id)) | ~($true = (X508 @ id @ X513 @ id))) | ($true = (X508 @ id @ (lam @ (X509 @ sh @ one)) @ id))) | ~! [X514 : term,X515 : term] : (~($true = (X508 @ id @ X514 @ id)) | ~($true = (X508 @ id @ X515 @ id)) | ($true = (X508 @ id @ (ap @ (sub @ X514 @ id) @ X515) @ id))) | ~! [X516 : subst,X517 : subst,X518 : term,X519 : subst] : (~($true = (X508 @ X519 @ X518 @ (comp @ X517 @ X516))) | ($true = (X508 @ (comp @ X519 @ X517) @ (sub @ X518 @ X517) @ X516))) | ~! [X520 : subst,X521 : term,X522 : subst,X523 : subst] : (~($true = (X508 @ (comp @ X523 @ X522) @ (sub @ X521 @ X522) @ X520)) | ((X508 @ X523 @ X521 @ (comp @ X522 @ X520)) = $true)) | ($true = (X508 @ id @ X507 @ id)) | ~! [X524 : term] : (($true = (X508 @ id @ X524 @ id)) | ~($true = (var @ (sub @ X524 @ id))))))))) <=> (hoasinduction_lthm_3 = $true)) & (hoaslamnotvar = $true) & ((! [X525 : term,X526 : subst] : ((sub @ one @ (push @ X525 @ X526)) = X525) => (! [X527 : subst,X528 : term] : ((comp @ sh @ (push @ X528 @ X527)) = X527) => (! [X529 : term,X530 : term] : ((X529 = X530) | ((lam @ X529) != (lam @ X530))) => ! [X531 : subst > term > term,X532 : subst,X533 : subst > term > term,X534 : term] : (~! [X535 : subst,X536 : term,X537 : subst] : ((X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535)) = (sub @ (X533 @ X537 @ X536) @ X535)) | ((X533 @ X532 @ X534) = (X531 @ X532 @ X534)) | ((lam @ (X531 @ sh @ one)) != (lam @ (X533 @ sh @ one))) | ~! [X538 : term,X539 : subst,X540 : subst] : ((sub @ (X531 @ X539 @ X538) @ X540) = (X531 @ (comp @ X539 @ X540) @ (sub @ X538 @ X540))))))) <=> (hoaslaminj_lthm = $true)) & ((! [X541 : term] : ((sub @ X541 @ id) = X541) => (! [X542 : term,X543 : term,X544 : term,X545 : term] : ((X543 = X544) | ((ap @ X544 @ X545) != (ap @ X543 @ X542))) => ! [X546 : term,X547 : term,X548 : term,X549 : term] : (((ap @ (sub @ X546 @ id) @ X549) != (ap @ (sub @ X547 @ id) @ X548)) | (X546 = X547)))) <=> (hoasapinj1_lthm = $true)) & (axabs = $true) & (axapp = $true)),
% 2.47/1.94    inference(fool_elimination,[status(thm)],[f5])).
% 2.47/1.94  thf(f5,plain,(
% 2.47/1.94    hoasinduction_lem1v2_gthm & hoasapinj2_gthm & (hoaslamnotap <=> ! [X0 : term,X1 : subst > term > term,X2 : term] : (~! [X3 : term,X4 : subst,X5 : subst] : ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5)) = (sub @ (X1 @ X4 @ X3) @ X5)) | ((lam @ (X1 @ sh @ one)) != (ap @ (sub @ X2 @ id) @ X0)))) & ! [X6 : d_term] : (d_one = X6) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem3a <=> ! [X7 : term,X8 : subst > term > subst > $o] : (~! [X9 : term] : (~(X8 @ id @ X9 @ id) | (X8 @ id @ (sub @ X7 @ (push @ X9 @ id)) @ id)) | ~! [X10 : subst > term > term] : ((X8 @ id @ (lam @ (X10 @ sh @ one)) @ id) | ~! [X11 : term,X12 : subst,X13 : subst] : ((X10 @ (comp @ X12 @ X13) @ (sub @ X11 @ X13)) = (sub @ (X10 @ X12 @ X11) @ X13)) | ~! [X14 : term] : ((X8 @ id @ (X10 @ id @ X14) @ id) | ~(X8 @ id @ X14 @ id))) | (X8 @ id @ (lam @ X7) @ id))) & (laminj <=> ! [X15 : term,X16 : term] : (((lam @ X15) != (lam @ X16)) | (X15 = X16))) & pushprop_gthm & (! [X17 : term,X18 : term] : (((sub @ X17 @ sh) != (sub @ X18 @ sh)) | (X17 = X18)) <=> shinj) & pushprop_lthm & axvarshift & (hoasinduction_lem3v2_lthm <=> (! [X19 : term] : ((sub @ X19 @ id) = X19) => ! [X20 : term > $o,X21 : subst > term > subst > $o,X22 : term] : (~! [X23 : subst > term > term] : (~! [X24 : term] : (~(X21 @ id @ X24 @ id) | (X21 @ id @ (X23 @ id @ X24) @ id)) | ~! [X25 : term,X26 : subst,X27 : subst] : ((X23 @ (comp @ X26 @ X27) @ (sub @ X25 @ X27)) = (sub @ (X23 @ X26 @ X25) @ X27)) | (X21 @ id @ (lam @ (X23 @ sh @ one)) @ id)) | ~! [X28 : term] : (~(X20 @ X28) | (X20 @ (sub @ X22 @ (push @ X28 @ id)))) | ~! [X29 : subst,X30 : subst,X31 : subst,X32 : term] : ((X21 @ X30 @ X32 @ (comp @ X31 @ X29)) | ~(X21 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31) @ X29)) | (X20 @ (lam @ X22)) | ~! [X33 : term,X34 : subst,X35 : subst,X36 : subst] : (~(X21 @ X35 @ X33 @ (comp @ X36 @ X34)) | (X21 @ (comp @ X35 @ X36) @ (sub @ X33 @ X36) @ X34)) | ~! [X37 : term] : ((X20 @ X37) = (X21 @ id @ X37 @ id))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & hoaslamnotvar_gthm & (! [X38 : term > $o,X39 : term,X40 : subst] : ~! [X41 : term > $o] : ~! [X42 : term] : ((X38 @ (sub @ X42 @ (push @ X39 @ X40))) = (X41 @ X42)) <=> pushprop_lem0_lthm) & (axvarcons <=> ! [X43 : subst,X44 : term] : ((sub @ one @ (push @ X44 @ X43)) = X44)) & hoaslaminj_gthm & (! [X45 : term,X46 : term > $o] : (~! [X47 : term] : ((X46 @ (lam @ X47)) | ~! [X48 : term] : (~(X46 @ X48) | (X46 @ (sub @ X47 @ (push @ X48 @ id))))) | ~! [X49 : term,X50 : term] : (~(X46 @ X50) | (X46 @ (ap @ X49 @ X50)) | ~(X46 @ X49)) | ~! [X51 : term] : (~(var @ X51) | (X46 @ X51)) | (X46 @ X45)) <=> induction2) & ulamvarsh & ((^[X52 : subst, X53 : subst > term > term] : (d2term @ d_one)) = hoaslam) & hoasinduction_lem1 & (! [X54 : term] : ~! [X55 : subst > term > term] : ((X55 @ sh @ one) != (sub @ X54 @ (push @ one @ sh))) <=> hoasinduction_lem3b_lthm) & (termmset_lthm <=> (! [X56 : term] : ((sub @ X56 @ id) = X56) => ! [X57 : term] : ((sub @ X57 @ id) = X57))) & ~(var @ (d2term @ d_one)) & ((! [X58 : subst] : ((comp @ X58 @ id) = X58) & ! [X59 : subst] : ((comp @ id @ X59) = X59)) <=> substmonoid) & (hoasinduction_lem3a_lthm <=> (! [X60 : term] : ((sub @ X60 @ id) = X60) => (! [X61 : term,X62 : subst > term > subst > $o] : ((X62 @ id @ (lam @ (sub @ X61 @ (push @ one @ sh))) @ id) | ~! [X63 : subst > term > term] : ((X62 @ id @ (lam @ (X63 @ sh @ one)) @ id) | ~! [X64 : term] : ((X62 @ id @ (X63 @ id @ X64) @ id) | ~(X62 @ id @ X64 @ id)) | ~! [X65 : term,X66 : subst,X67 : subst] : ((sub @ (X63 @ X67 @ X65) @ X66) = (X63 @ (comp @ X67 @ X66) @ (sub @ X65 @ X66)))) | ~! [X68 : term] : (~(X62 @ id @ X68 @ id) | (X62 @ id @ (sub @ X61 @ (push @ X68 @ id)) @ id))) => ! [X69 : subst > term > subst > $o,X70 : term] : ((X69 @ id @ (lam @ X70) @ id) | ~! [X71 : term] : (~(X69 @ id @ X71 @ id) | (X69 @ id @ (sub @ X70 @ (push @ X71 @ id)) @ id)) | ~! [X72 : subst > term > term] : (~! [X73 : term] : (~(X69 @ id @ X73 @ id) | (X69 @ id @ (X72 @ id @ X73) @ id)) | (X69 @ id @ (lam @ (X72 @ sh @ one)) @ id) | ~! [X74 : subst,X75 : subst,X76 : term] : ((sub @ (X72 @ X75 @ X76) @ X74) = (X72 @ (comp @ X75 @ X74) @ (sub @ X76 @ X74)))))))) & pushprop_lem2v2 & ! [X77 : d_subst,X78 : d_subst] : (((d2subst @ X78) = (d2subst @ X77)) => (X77 = X78)) & ~ulamvar1 & substmonoid_gthm & ulamvarind & pushprop_lem2v2_gthm & (! [X79 : term] : ((sub @ X79 @ id) = X79) <=> termmset) & hoasinduction_lem3v2_gthm & (! [X80 : term,X81 : subst > term > subst > $o] : ((X81 @ id @ X80 @ id) | ~! [X82 : subst > term > term] : (~! [X83 : subst,X84 : term,X85 : subst] : ((sub @ (X82 @ X83 @ X84) @ X85) = (X82 @ (comp @ X83 @ X85) @ (sub @ X84 @ X85))) | (X81 @ id @ (lam @ (X82 @ sh @ one)) @ id) | ~! [X86 : term] : ((X81 @ id @ (X82 @ id @ X86) @ id) | ~(X81 @ id @ X86 @ id))) | ~! [X87 : subst,X88 : subst,X89 : term,X90 : subst] : (~(X81 @ X87 @ X89 @ (comp @ X88 @ X90)) | (X81 @ (comp @ X87 @ X88) @ (sub @ X89 @ X88) @ X90)) | ~! [X91 : term] : ((X81 @ id @ X91 @ id) | ~(var @ (sub @ X91 @ id))) | ~! [X92 : subst,X93 : subst,X94 : subst,X95 : term] : (~(X81 @ (comp @ X93 @ X94) @ (sub @ X95 @ X94) @ X92) | (X81 @ X93 @ X95 @ (comp @ X94 @ X92))) | ~! [X96 : term,X97 : term] : ((X81 @ id @ (ap @ (sub @ X96 @ id) @ X97) @ id) | ~(X81 @ id @ X96 @ id) | ~(X81 @ id @ X97 @ id))) <=> hoasinduction) & hoasinduction_lem2v2_gthm & (axscons <=> ! [X98 : subst] : ((push @ (sub @ one @ X98) @ (comp @ sh @ X98)) = X98)) & (! [X99 : term > $o,X100 : term,X101 : subst,X102 : term > $o,X103 : term] : (~(X99 @ X103) | (X102 @ (sub @ X103 @ (push @ X100 @ X101)))) <=> pushprop_lem1) & pushprop_lem3v2_lthm & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X104 : subst > term > subst > $o,X105 : term > $o,X106 : term] : (~! [X107 : term] : ((X105 @ (sub @ X106 @ (push @ X107 @ id))) | ~(X105 @ X107)) | ~! [X108 : subst > term > term] : (~! [X109 : term,X110 : subst,X111 : subst] : ((X108 @ (comp @ X111 @ X110) @ (sub @ X109 @ X110)) = (sub @ (X108 @ X111 @ X109) @ X110)) | (X104 @ id @ (lam @ (X108 @ sh @ one)) @ id) | ~! [X112 : term] : ((X104 @ id @ (X108 @ id @ X112) @ id) | ~(X104 @ id @ X112 @ id))) | ~! [X113 : term] : ((X104 @ id @ X113 @ id) = (X105 @ X113)) | (X105 @ (lam @ X106))) <=> hoasinduction_lem3v2a) & (! [X114 : subst > term > term,X115 : subst > term > term,X116 : term,X117 : subst] : (~! [X118 : subst,X119 : term,X120 : subst] : ((sub @ (X114 @ X118 @ X119) @ X120) = (X114 @ (comp @ X118 @ X120) @ (sub @ X119 @ X120))) | ((lam @ (X115 @ sh @ one)) != (lam @ (X114 @ sh @ one))) | ((X114 @ X117 @ X116) = (X115 @ X117 @ X116)) | ~! [X121 : subst,X122 : term,X123 : subst] : ((X115 @ (comp @ X123 @ X121) @ (sub @ X122 @ X121)) = (sub @ (X115 @ X123 @ X122) @ X121))) <=> hoaslaminj) & (! [X124 : term,X125 : term > $o,X126 : subst] : ~! [X127 : term > $o] : ~! [X128 : term] : ((X125 @ (sub @ X128 @ (push @ X124 @ X126))) = (X127 @ X128)) <=> pushprop_lem0) & hoasapnotvar_lthm & (pushprop_lem1_lthm <=> (! [X129 : subst,X130 : term] : ((sub @ one @ (push @ X130 @ X129)) = X130) => (! [X131 : subst,X132 : term] : ((comp @ sh @ (push @ X132 @ X131)) = X131) => ! [X133 : subst,X134 : term,X135 : term > $o,X136 : term,X137 : term > $o] : (~(X137 @ X136) | (X135 @ (sub @ X136 @ (push @ X134 @ X133))))))) & (! [X138 : term > $o,X139 : term,X140 : term,X141 : subst > term > subst > $o] : ((X138 @ (ap @ X139 @ X140)) | ~! [X142 : term,X143 : term] : (~(X141 @ id @ X143 @ id) | (X141 @ id @ (ap @ (sub @ X143 @ id) @ X142) @ id) | ~(X141 @ id @ X142 @ id)) | ~(X138 @ X139) | ~(X138 @ X140) | ~! [X144 : term] : ((X141 @ id @ X144 @ id) = (X138 @ X144)) | ~! [X145 : subst,X146 : subst,X147 : term,X148 : subst] : ((X141 @ (comp @ X145 @ X148) @ (sub @ X147 @ X148) @ X146) | ~(X141 @ X145 @ X147 @ (comp @ X148 @ X146))) | ~! [X149 : subst,X150 : subst,X151 : subst,X152 : term] : ((X141 @ X149 @ X152 @ (comp @ X151 @ X150)) | ~(X141 @ (comp @ X149 @ X151) @ (sub @ X152 @ X151) @ X150))) <=> hoasinduction_lem2v2) & pushprop_lem1v2_gthm & apnotvar & pushprop_lem2v2_lthm & (! [X153 : subst > term > subst > $o] : ~! [X154 : term > $o] : ~! [X155 : term] : ((X153 @ id @ X155 @ id) = (X154 @ X155)) <=> hoasinduction_lem0_lthm) & hoaslamnotap_lthm & axmap & (hoasinduction_lem3aa_lthm <=> ! [X156 : subst > term > subst > $o,X157 : term] : (~! [X158 : subst > term > term] : ((X156 @ id @ (lam @ (X158 @ sh @ one)) @ id) | ~! [X159 : term] : ((X156 @ id @ (X158 @ id @ X159) @ id) | ~(X156 @ id @ X159 @ id)) | ~! [X160 : term,X161 : subst,X162 : subst] : ((sub @ (X158 @ X161 @ X160) @ X162) = (X158 @ (comp @ X161 @ X162) @ (sub @ X160 @ X162)))) | ~! [X163 : term] : ((X156 @ id @ (sub @ X157 @ (push @ X163 @ id)) @ id) | ~(X156 @ id @ X163 @ id)) | (X156 @ id @ (lam @ (sub @ X157 @ (push @ one @ sh))) @ id))) & hoasinduction_lem1_lthm & ((d2subst @ d_id) = sh) & (hoasinduction_lem3aaa <=> ! [X164 : subst > term > subst > $o,X165 : term] : (~! [X166 : subst > term > term,X167 : term] : (~! [X168 : subst,X169 : term,X170 : subst] : ((sub @ (sub @ X167 @ (push @ X169 @ X170)) @ X168) = (sub @ (X166 @ X170 @ X169) @ X168)) | ~! [X171 : subst,X172 : term,X173 : subst] : ((X166 @ (comp @ X173 @ X171) @ (sub @ X172 @ X171)) = (sub @ X167 @ (push @ (sub @ X172 @ X171) @ (comp @ X173 @ X171)))) | (X164 @ id @ (lam @ (X166 @ sh @ one)) @ id) | ~! [X174 : term] : ((X164 @ id @ (X166 @ id @ X174) @ id) | ~(X164 @ id @ X174 @ id))) | (X164 @ id @ (lam @ (sub @ X165 @ (push @ one @ sh))) @ id) | ~! [X175 : term] : ((X164 @ id @ (sub @ X165 @ (push @ X175 @ id)) @ id) | ~(X164 @ id @ X175 @ id)))) & (one = (d2term @ d_one)) & induction2lem_gthm & ((! [X176 : subst > term > subst > $o] : ~! [X177 : term > $o] : ~! [X178 : term] : ((X177 @ X178) = (X176 @ id @ X178 @ id)) => (! [X179 : term,X180 : term > $o] : ((X180 @ X179) | ~! [X181 : term,X182 : term] : (~(X180 @ X182) | (X180 @ (ap @ X181 @ X182)) | ~(X180 @ X181)) | ~! [X183 : term] : (~(var @ X183) | (X180 @ X183)) | ~! [X184 : term] : (~! [X185 : term] : (~(X180 @ X185) | (X180 @ (sub @ X184 @ (push @ X185 @ id)))) | (X180 @ (lam @ X184)))) => (! [X186 : term] : ((sub @ X186 @ id) = X186) => (! [X187 : subst > term > subst > $o,X188 : term,X189 : term > $o] : (~! [X190 : term] : ((X187 @ id @ X190 @ id) = (X189 @ X190)) | (X189 @ (lam @ X188)) | ~! [X191 : term] : ((X189 @ (sub @ X188 @ (push @ X191 @ id))) | ~(X189 @ X191)) | ~! [X192 : subst > term > term] : (~! [X193 : term,X194 : subst,X195 : subst] : ((X192 @ (comp @ X195 @ X194) @ (sub @ X193 @ X194)) = (sub @ (X192 @ X195 @ X193) @ X194)) | ~! [X196 : term] : (~(X187 @ id @ X196 @ id) | (X187 @ id @ (X192 @ id @ X196) @ id)) | (X187 @ id @ (lam @ (X192 @ sh @ one)) @ id))) => ! [X197 : term,X198 : subst > term > subst > $o] : ((X198 @ id @ X197 @ id) | ~! [X199 : term,X200 : term] : (~(X198 @ id @ X200 @ id) | ~(X198 @ id @ X199 @ id) | (X198 @ id @ (ap @ (sub @ X199 @ id) @ X200) @ id)) | ~! [X201 : subst > term > term] : ((X198 @ id @ (lam @ (X201 @ sh @ one)) @ id) | ~! [X202 : term] : (~(X198 @ id @ X202 @ id) | (X198 @ id @ (X201 @ id @ X202) @ id)) | ~! [X203 : term,X204 : subst,X205 : subst] : ((X201 @ (comp @ X204 @ X205) @ (sub @ X203 @ X205)) = (sub @ (X201 @ X204 @ X203) @ X205)))))))) <=> hoasinduction_no_psi_cond_lthm) & ! [X206 : subst] : ? [X207 : d_subst] : ((d2subst @ X207) = X206) & (! [X208 : term,X209 : term,X210 : term,X211 : term] : (((ap @ (sub @ X209 @ id) @ X211) != (ap @ (sub @ X208 @ id) @ X210)) | (X210 = X211)) <=> hoasapinj2) & (! [X212 : term,X213 : term,X214 : term,X215 : term] : (((ap @ X215 @ X213) != (ap @ X214 @ X212)) | (X212 = X213)) <=> apinj2) & hoasinduction_lem3b_gthm & lamnotvar & (! [X216 : term] : ((sub @ X216 @ id) = X216) <=> axvarid) & pushprop_lem1_gthm & axassoc & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem3aa <=> ! [X217 : subst > term > subst > $o,X218 : term] : ((X217 @ id @ (lam @ (sub @ X218 @ (push @ one @ sh))) @ id) | ~! [X219 : subst > term > term] : ((X217 @ id @ (lam @ (X219 @ sh @ one)) @ id) | ~! [X220 : term] : (~(X217 @ id @ X220 @ id) | (X217 @ id @ (X219 @ id @ X220) @ id)) | ~! [X221 : term,X222 : subst,X223 : subst] : ((sub @ (X219 @ X222 @ X221) @ X223) = (X219 @ (comp @ X222 @ X223) @ (sub @ X221 @ X223)))) | ~! [X224 : term] : (~(X217 @ id @ X224 @ id) | (X217 @ id @ (sub @ X218 @ (push @ X224 @ id)) @ id)))) & (! [X225 : term] : ~! [X226 : subst > term > term] : ~! [X227 : term,X228 : subst] : ((X226 @ X228 @ X227) = (sub @ X225 @ (push @ X227 @ X228))) <=> hoasinduction_lem3v2_f_lthm) & (hoasinduction_lem3 <=> ! [X229 : term,X230 : subst > term > subst > $o] : (~! [X231 : term,X232 : subst,X233 : subst,X234 : subst] : (~(X230 @ X232 @ X231 @ (comp @ X233 @ X234)) | (X230 @ (comp @ X232 @ X233) @ (sub @ X231 @ X233) @ X234)) | ~! [X235 : term] : (~(X230 @ id @ X235 @ id) | (X230 @ id @ (sub @ X229 @ (push @ X235 @ id)) @ id)) | ~! [X236 : subst > term > term] : (~! [X237 : term] : ((X230 @ id @ (X236 @ id @ X237) @ id) | ~(X230 @ id @ X237 @ id)) | ~! [X238 : subst,X239 : subst,X240 : term] : ((X236 @ (comp @ X239 @ X238) @ (sub @ X240 @ X238)) = (sub @ (X236 @ X239 @ X240) @ X238)) | (X230 @ id @ (lam @ (X236 @ sh @ one)) @ id)) | ~! [X241 : subst,X242 : term,X243 : subst,X244 : subst] : (~(X230 @ (comp @ X241 @ X244) @ (sub @ X242 @ X244) @ X243) | (X230 @ X241 @ X242 @ (comp @ X244 @ X243))) | (X230 @ id @ (lam @ X229) @ id))) & ~lamnotap & (hoasinduction_lem3_lthm <=> (! [X245 : term] : ((sub @ X245 @ id) = X245) => (! [X246 : subst > term > subst > $o,X247 : term] : (~! [X248 : term] : ((X246 @ id @ (sub @ X247 @ (push @ X248 @ id)) @ id) | ~(X246 @ id @ X248 @ id)) | (X246 @ id @ (lam @ (sub @ X247 @ (push @ one @ sh))) @ id) | ~! [X249 : subst > term > term] : (~! [X250 : subst,X251 : term,X252 : subst] : ((sub @ (X249 @ X250 @ X251) @ X252) = (X249 @ (comp @ X250 @ X252) @ (sub @ X251 @ X252))) | ~! [X253 : term] : (~(X246 @ id @ X253 @ id) | (X246 @ id @ (X249 @ id @ X253) @ id)) | (X246 @ id @ (lam @ (X249 @ sh @ one)) @ id))) => ! [X254 : term,X255 : subst > term > subst > $o] : (~! [X256 : term,X257 : subst,X258 : subst,X259 : subst] : ((X255 @ X258 @ X256 @ (comp @ X259 @ X257)) | ~(X255 @ (comp @ X258 @ X259) @ (sub @ X256 @ X259) @ X257)) | ~! [X260 : subst,X261 : subst,X262 : subst,X263 : term] : (~(X255 @ X262 @ X263 @ (comp @ X260 @ X261)) | (X255 @ (comp @ X262 @ X260) @ (sub @ X263 @ X260) @ X261)) | (X255 @ id @ (lam @ X254) @ id) | ~! [X264 : term] : (~(X255 @ id @ X264 @ id) | (X255 @ id @ (sub @ X254 @ (push @ X264 @ id)) @ id)) | ~! [X265 : subst > term > term] : (~! [X266 : term] : ((X255 @ id @ (X265 @ id @ X266) @ id) | ~(X255 @ id @ X266 @ id)) | (X255 @ id @ (lam @ (X265 @ sh @ one)) @ id) | ~! [X267 : subst,X268 : term,X269 : subst] : ((sub @ (X265 @ X269 @ X268) @ X267) = (X265 @ (comp @ X269 @ X267) @ (sub @ X268 @ X267)))))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (hoasapinj2_lthm <=> (! [X270 : term,X271 : term,X272 : term,X273 : term] : (((ap @ X273 @ X272) != (ap @ X270 @ X271)) | (X271 = X272)) => ! [X274 : term,X275 : term,X276 : term,X277 : term] : (((ap @ (sub @ X276 @ id) @ X274) != (ap @ (sub @ X277 @ id) @ X275)) | (X274 = X275)))) & (apinj1 <=> ! [X278 : term,X279 : term,X280 : term,X281 : term] : ((X278 = X281) | ((ap @ X278 @ X279) != (ap @ X281 @ X280)))) & ! [X282 : d_term,X283 : d_term] : (((d2term @ X282) = (d2term @ X283)) => (X282 = X283)) & hoasapnotvar & (! [X284 : subst > term > subst > $o,X285 : term] : (~! [X286 : subst > term > term] : (~! [X287 : term] : ((X284 @ id @ (X286 @ id @ X287) @ id) | ~(X284 @ id @ X287 @ id)) | (X284 @ id @ (lam @ (X286 @ sh @ one)) @ id) | ~! [X288 : term,X289 : subst,X290 : subst] : ((sub @ (X286 @ X289 @ X288) @ X290) = (X286 @ (comp @ X289 @ X290) @ (sub @ X288 @ X290)))) | ~! [X291 : term,X292 : term] : (~(X284 @ id @ X291 @ id) | (X284 @ id @ (ap @ (sub @ X291 @ id) @ X292) @ id) | ~(X284 @ id @ X292 @ id)) | (X284 @ id @ X285 @ id)) <=> hoasinduction_no_psi_cond) & hoaslamnotvar_lthm & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & ! [X293 : term] : ? [X294 : d_term] : ((d2term @ X294) = X293) & (induction2lem <=> ! [X295 : term > $o,X296 : subst,X297 : term] : (~! [X298 : term,X299 : term] : ((X295 @ (ap @ X299 @ X298)) | ~(X295 @ X299) | ~(X295 @ X298)) | ~! [X300 : term] : (~! [X301 : term] : ((X295 @ (sub @ X300 @ (push @ X301 @ id))) | ~(X295 @ X301)) | (X295 @ (lam @ X300))) | ~! [X302 : term] : (~(var @ X302) | (X295 @ (sub @ X302 @ X296))) | (X295 @ (sub @ X297 @ X296)))) & hoasinduction_lem1v2 & ((! [X303 : subst] : ((comp @ id @ X303) = X303) => (! [X304 : subst] : ((comp @ X304 @ id) = X304) => (! [X305 : subst] : ((comp @ id @ X305) = X305) & ! [X306 : subst] : ((comp @ X306 @ id) = X306)))) <=> substmonoid_lthm) & pushprop_lthm_orig & hoasinduction_lem3a_gthm & (hoasinduction_lem0 <=> ! [X307 : subst > term > subst > $o] : ~! [X308 : term > $o] : ~! [X309 : term] : ((X307 @ id @ X309 @ id) = (X308 @ X309))) & hoaslamnotap_gthm & (! [X310 : term,X311 : term > $o] : (~! [X312 : term,X313 : term] : (~(X311 @ X312) | ~(X311 @ X313) | (X311 @ (ap @ X313 @ X312))) | ~! [X314 : term] : (~(var @ X314) | (X311 @ X314)) | ~! [X315 : term] : (~(X311 @ X315) | (X311 @ (lam @ X315))) | (X311 @ X310)) <=> induction) & ((d2subst @ d_id) = id) & (axshiftcons <=> ! [X316 : subst,X317 : term] : ((comp @ sh @ (push @ X317 @ X316)) = X316)) & (pushprop_lem1v2 <=> ! [X318 : term > $o,X319 : term > $o,X320 : term,X321 : subst] : (~(X319 @ X320) | ~! [X322 : term] : ((X319 @ (sub @ X322 @ (push @ X320 @ X321))) = (X318 @ X322)) | (X318 @ one))) & ! [X323 : d_subst] : (d_id = X323) & (induction2lem_lthm <=> (! [X324 : subst,X325 : term] : ((sub @ one @ (push @ X325 @ X324)) = X325) => (! [X326 : subst,X327 : term] : ((comp @ sh @ (push @ X327 @ X326)) = X326) => (! [X328 : subst] : ((comp @ X328 @ id) = X328) => (! [X329 : term > $o,X330 : term] : (~! [X331 : term] : (~(var @ X331) | (X329 @ X331)) | ~! [X332 : term,X333 : term] : (~(X329 @ X332) | ~(X329 @ X333) | (X329 @ (ap @ X333 @ X332))) | ~! [X334 : term] : (~(X329 @ X334) | (X329 @ (lam @ X334))) | (X329 @ X330)) => ! [X335 : subst,X336 : term,X337 : term > $o] : (~! [X338 : term] : ((X337 @ (sub @ X338 @ X335)) | ~(var @ X338)) | ~! [X339 : term,X340 : term] : (~(X337 @ X340) | (X337 @ (ap @ X340 @ X339)) | ~(X337 @ X339)) | ~! [X341 : term] : (~! [X342 : term] : ((X337 @ (sub @ X341 @ (push @ X342 @ id))) | ~(X337 @ X342)) | (X337 @ (lam @ X341))) | (X337 @ (sub @ X336 @ X335)))))))) & (hoasinduction_lthm <=> (! [X343 : term,X344 : term > $o] : (~! [X345 : term] : (~(var @ X345) | (X344 @ X345)) | ~! [X346 : term] : (~! [X347 : term] : ((X344 @ (sub @ X346 @ (push @ X347 @ id))) | ~(X344 @ X347)) | (X344 @ (lam @ X346))) | (X344 @ X343) | ~! [X348 : term,X349 : term] : (~(X344 @ X348) | (X344 @ (ap @ X349 @ X348)) | ~(X344 @ X349))) => (! [X350 : term,X351 : term,X352 : subst > term > subst > $o] : ((X352 @ id @ (ap @ X350 @ X351) @ id) | ~(X352 @ id @ X351 @ id) | ~(X352 @ id @ X350 @ id) | ~! [X353 : term,X354 : subst,X355 : subst,X356 : subst] : ((X352 @ X355 @ X353 @ (comp @ X354 @ X356)) | ~(X352 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354) @ X356)) | ~! [X357 : term,X358 : term] : ((X352 @ id @ (ap @ (sub @ X358 @ id) @ X357) @ id) | ~(X352 @ id @ X357 @ id) | ~(X352 @ id @ X358 @ id)) | ~! [X359 : subst,X360 : subst,X361 : subst,X362 : term] : ((X352 @ (comp @ X359 @ X360) @ (sub @ X362 @ X360) @ X361) | ~(X352 @ X359 @ X362 @ (comp @ X360 @ X361)))) => (! [X363 : subst > term > subst > $o,X364 : term] : ((X363 @ id @ (lam @ X364) @ id) | ~! [X365 : subst,X366 : term,X367 : subst,X368 : subst] : (~(X363 @ X368 @ X366 @ (comp @ X365 @ X367)) | (X363 @ (comp @ X368 @ X365) @ (sub @ X366 @ X365) @ X367)) | ~! [X369 : subst,X370 : subst,X371 : term,X372 : subst] : ((X363 @ X372 @ X371 @ (comp @ X369 @ X370)) | ~(X363 @ (comp @ X372 @ X369) @ (sub @ X371 @ X369) @ X370)) | ~! [X373 : term] : ((X363 @ id @ (sub @ X364 @ (push @ X373 @ id)) @ id) | ~(X363 @ id @ X373 @ id)) | ~! [X374 : subst > term > term] : (~! [X375 : term] : ((X363 @ id @ (X374 @ id @ X375) @ id) | ~(X363 @ id @ X375 @ id)) | (X363 @ id @ (lam @ (X374 @ sh @ one)) @ id) | ~! [X376 : subst,X377 : term,X378 : subst] : ((sub @ (X374 @ X376 @ X377) @ X378) = (X374 @ (comp @ X376 @ X378) @ (sub @ X377 @ X378))))) => ! [X379 : subst > term > subst > $o,X380 : term] : (~! [X381 : subst > term > term] : ((X379 @ id @ (lam @ (X381 @ sh @ one)) @ id) | ~! [X382 : term,X383 : subst,X384 : subst] : ((sub @ (X381 @ X383 @ X382) @ X384) = (X381 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384))) | ~! [X385 : term] : (~(X379 @ id @ X385 @ id) | (X379 @ id @ (X381 @ id @ X385) @ id))) | ~! [X386 : subst,X387 : subst,X388 : term,X389 : subst] : (~(X379 @ X386 @ X388 @ (comp @ X389 @ X387)) | (X379 @ (comp @ X386 @ X389) @ (sub @ X388 @ X389) @ X387)) | (X379 @ id @ X380 @ id) | ~! [X390 : term] : (~(var @ (sub @ X390 @ id)) | (X379 @ id @ X390 @ id)) | ~! [X391 : subst,X392 : term,X393 : subst,X394 : subst] : (~(X379 @ (comp @ X391 @ X394) @ (sub @ X392 @ X394) @ X393) | (X379 @ X391 @ X392 @ (comp @ X394 @ X393))) | ~! [X395 : term,X396 : term] : ((X379 @ id @ (ap @ (sub @ X396 @ id) @ X395) @ id) | ~(X379 @ id @ X395 @ id) | ~(X379 @ id @ X396 @ id))))))) & (hoasinduction_lem3v2 <=> ! [X397 : term > $o,X398 : term,X399 : subst > term > subst > $o] : (~! [X400 : subst,X401 : subst,X402 : term,X403 : subst] : (~(X399 @ (comp @ X403 @ X400) @ (sub @ X402 @ X400) @ X401) | (X399 @ X403 @ X402 @ (comp @ X400 @ X401))) | (X397 @ (lam @ X398)) | ~! [X404 : term] : ((X397 @ (sub @ X398 @ (push @ X404 @ id))) | ~(X397 @ X404)) | ~! [X405 : subst > term > term] : (~! [X406 : subst,X407 : term,X408 : subst] : ((sub @ (X405 @ X406 @ X407) @ X408) = (X405 @ (comp @ X406 @ X408) @ (sub @ X407 @ X408))) | (X399 @ id @ (lam @ (X405 @ sh @ one)) @ id) | ~! [X409 : term] : ((X399 @ id @ (X405 @ id @ X409) @ id) | ~(X399 @ id @ X409 @ id))) | ~! [X410 : term] : ((X397 @ X410) = (X399 @ id @ X410 @ id)) | ~! [X411 : subst,X412 : subst,X413 : subst,X414 : term] : (~(X399 @ X411 @ X414 @ (comp @ X413 @ X412)) | (X399 @ (comp @ X411 @ X413) @ (sub @ X414 @ X413) @ X412)))) & (! [X415 : subst] : ((comp @ X415 @ id) = X415) <=> axidr) & hoasinduction_gthm & termmset_gthm & hoasinduction_lem1_gthm & pushprop_lem3v2 & hoasinduction_lem3_gthm & ((^[X416 : term, X417 : subst, X418 : term > $o, X419 : term > $o] : (! [X420 : term] : ((X418 @ (sub @ X420 @ (push @ X416 @ X417))) = (X419 @ X420)))) = pushprop_p_and_p_prime) & (hoasinduction_lem3v2_f <=> ! [X421 : term] : ~! [X422 : subst > term > term] : ~! [X423 : term,X424 : subst] : ((sub @ X421 @ (push @ X423 @ X424)) = (X422 @ X424 @ X423))) & (pushprop_lem1v2_lthm <=> (! [X425 : term,X426 : subst] : ((sub @ one @ (push @ X425 @ X426)) = X425) => ! [X427 : term > $o,X428 : term > $o,X429 : term,X430 : subst] : ((X428 @ one) | ~! [X431 : term] : ((X427 @ (sub @ X431 @ (push @ X429 @ X430))) = (X428 @ X431)) | ~(X427 @ X429)))) & axclos & hoasapnotvar_gthm & (hoasinduction_lem2 <=> ! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (~! [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (~(X432 @ X438 @ X436 @ (comp @ X435 @ X437)) | (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) | ~(X432 @ id @ X433 @ id) | (X432 @ id @ (ap @ X434 @ X433) @ id) | ~! [X439 : term,X440 : term] : (~(X432 @ id @ X440 @ id) | (X432 @ id @ (ap @ (sub @ X439 @ id) @ X440) @ id) | ~(X432 @ id @ X439 @ id)) | ~! [X441 : term,X442 : subst,X443 : subst,X444 : subst] : ((X432 @ X442 @ X441 @ (comp @ X444 @ X443)) | ~(X432 @ (comp @ X442 @ X444) @ (sub @ X441 @ X444) @ X443)) | ~(X432 @ id @ X434 @ id))) & (hoasinduction_lem3b <=> ! [X445 : term] : ~! [X446 : subst > term > term] : ((X446 @ sh @ one) != (sub @ X445 @ (push @ one @ sh)))) & hoasinduction_lem2_gthm & ((^[X447 : subst > term > subst > $o, X448 : term > $o] : (! [X449 : term] : ((X447 @ id @ X449 @ id) = (X448 @ X449)))) = hoasinduction_p_and_p_prime) & (axidl <=> ! [X450 : subst] : ((comp @ id @ X450) = X450)) & ((! [X451 : term] : ~! [X452 : subst > term > term] : ~! [X453 : subst,X454 : term] : ((sub @ X451 @ (push @ X454 @ X453)) = (X452 @ X453 @ X454)) => (! [X455 : term] : ((sub @ X455 @ id) = X455) => ! [X456 : term,X457 : subst > term > subst > $o,X458 : term > $o] : ((X458 @ (lam @ X456)) | ~! [X459 : term] : ((X457 @ id @ X459 @ id) = (X458 @ X459)) | ~! [X460 : term] : ((X458 @ (sub @ X456 @ (push @ X460 @ id))) | ~(X458 @ X460)) | ~! [X461 : subst > term > term] : (~! [X462 : term] : (~(X457 @ id @ X462 @ id) | (X457 @ id @ (X461 @ id @ X462) @ id)) | ~! [X463 : subst,X464 : subst,X465 : term] : ((sub @ (X461 @ X463 @ X465) @ X464) = (X461 @ (comp @ X463 @ X464) @ (sub @ X465 @ X464))) | (X457 @ id @ (lam @ (X461 @ sh @ one)) @ id))))) <=> hoasinduction_lem3v2a_lthm) & pushprop_lem0_gthm & hoasinduction_lem2_lthm & hoasapinj1_gthm & induction2_gthm & (induction2_lthm <=> (! [X466 : term] : ((sub @ X466 @ id) = X466) => (! [X467 : term > $o,X468 : term,X469 : subst] : (~! [X470 : term] : (~(var @ X470) | (X467 @ (sub @ X470 @ X469))) | ~! [X471 : term] : (~! [X472 : term] : ((X467 @ (sub @ X471 @ (push @ X472 @ id))) | ~(X467 @ X472)) | (X467 @ (lam @ X471))) | ~! [X473 : term,X474 : term] : ((X467 @ (ap @ X474 @ X473)) | ~(X467 @ X474) | ~(X467 @ X473)) | (X467 @ (sub @ X468 @ X469))) => ! [X475 : term,X476 : term > $o] : ((X476 @ X475) | ~! [X477 : term,X478 : term] : ((X476 @ (ap @ X477 @ X478)) | ~(X476 @ X477) | ~(X476 @ X478)) | ~! [X479 : term] : (~(var @ X479) | (X476 @ X479)) | ~! [X480 : term] : ((X476 @ (lam @ X480)) | ~! [X481 : term] : (~(X476 @ X481) | (X476 @ (sub @ X480 @ (push @ X481 @ id))))))))) & (hoasapinj1 <=> ! [X482 : term,X483 : term,X484 : term,X485 : term] : (((ap @ (sub @ X482 @ id) @ X483) != (ap @ (sub @ X485 @ id) @ X484)) | (X482 = X485))) & pushprop & ((! [X486 : subst > term > subst > $o] : ~! [X487 : term > $o] : ~! [X488 : term] : ((X486 @ id @ X488 @ id) = (X487 @ X488)) => (! [X489 : term > $o,X490 : term] : (~! [X491 : term] : ((X489 @ (lam @ X491)) | ~! [X492 : term] : (~(X489 @ X492) | (X489 @ (sub @ X491 @ (push @ X492 @ id))))) | ~! [X493 : term] : (~(var @ X493) | (X489 @ X493)) | ~! [X494 : term,X495 : term] : ((X489 @ (ap @ X495 @ X494)) | ~(X489 @ X495) | ~(X489 @ X494)) | (X489 @ X490)) => (! [X496 : term] : ((sub @ X496 @ id) = X496) => (! [X497 : term,X498 : subst > term > subst > $o,X499 : term > $o] : (~! [X500 : term] : ((X499 @ (sub @ X497 @ (push @ X500 @ id))) | ~(X499 @ X500)) | (X499 @ (lam @ X497)) | ~! [X501 : subst > term > term] : ((X498 @ id @ (lam @ (X501 @ sh @ one)) @ id) | ~! [X502 : term] : ((X498 @ id @ (X501 @ id @ X502) @ id) | ~(X498 @ id @ X502 @ id)) | ~! [X503 : term,X504 : subst,X505 : subst] : ((sub @ (X501 @ X505 @ X503) @ X504) = (X501 @ (comp @ X505 @ X504) @ (sub @ X503 @ X504)))) | ~! [X506 : term] : ((X499 @ X506) = (X498 @ id @ X506 @ id))) => ! [X507 : term,X508 : subst > term > subst > $o] : (~! [X509 : subst > term > term] : (~! [X510 : term,X511 : subst,X512 : subst] : ((X509 @ (comp @ X512 @ X511) @ (sub @ X510 @ X511)) = (sub @ (X509 @ X512 @ X510) @ X511)) | ~! [X513 : term] : ((X508 @ id @ (X509 @ id @ X513) @ id) | ~(X508 @ id @ X513 @ id)) | (X508 @ id @ (lam @ (X509 @ sh @ one)) @ id)) | ~! [X514 : term,X515 : term] : (~(X508 @ id @ X514 @ id) | ~(X508 @ id @ X515 @ id) | (X508 @ id @ (ap @ (sub @ X514 @ id) @ X515) @ id)) | ~! [X516 : subst,X517 : subst,X518 : term,X519 : subst] : (~(X508 @ X519 @ X518 @ (comp @ X517 @ X516)) | (X508 @ (comp @ X519 @ X517) @ (sub @ X518 @ X517) @ X516)) | ~! [X520 : subst,X521 : term,X522 : subst,X523 : subst] : (~(X508 @ (comp @ X523 @ X522) @ (sub @ X521 @ X522) @ X520) | (X508 @ X523 @ X521 @ (comp @ X522 @ X520))) | (X508 @ id @ X507 @ id) | ~! [X524 : term] : ((X508 @ id @ X524 @ id) | ~(var @ (sub @ X524 @ id)))))))) <=> hoasinduction_lthm_3) & hoaslamnotvar & ((! [X525 : term,X526 : subst] : ((sub @ one @ (push @ X525 @ X526)) = X525) => (! [X527 : subst,X528 : term] : ((comp @ sh @ (push @ X528 @ X527)) = X527) => (! [X529 : term,X530 : term] : ((X529 = X530) | ((lam @ X529) != (lam @ X530))) => ! [X531 : subst > term > term,X532 : subst,X533 : subst > term > term,X534 : term] : (~! [X535 : subst,X536 : term,X537 : subst] : ((X533 @ (comp @ X537 @ X535) @ (sub @ X536 @ X535)) = (sub @ (X533 @ X537 @ X536) @ X535)) | ((X533 @ X532 @ X534) = (X531 @ X532 @ X534)) | ((lam @ (X531 @ sh @ one)) != (lam @ (X533 @ sh @ one))) | ~! [X538 : term,X539 : subst,X540 : subst] : ((sub @ (X531 @ X539 @ X538) @ X540) = (X531 @ (comp @ X539 @ X540) @ (sub @ X538 @ X540))))))) <=> hoaslaminj_lthm) & ((! [X541 : term] : ((sub @ X541 @ id) = X541) => (! [X542 : term,X543 : term,X544 : term,X545 : term] : ((X543 = X544) | ((ap @ X544 @ X545) != (ap @ X543 @ X542))) => ! [X546 : term,X547 : term,X548 : term,X549 : term] : (((ap @ (sub @ X546 @ id) @ X549) != (ap @ (sub @ X547 @ id) @ X548)) | (X546 = X547)))) <=> hoasapinj1_lthm) & axabs & axapp),
% 2.47/1.94    inference(rectify,[status(thm)],[f1])).
% 2.47/1.94  thf(f1,axiom,(
% 2.47/1.94    hoasinduction_lem1v2_gthm & hoasapinj2_gthm & (hoaslamnotap <=> ! [X47 : term,X18 : subst > term > term,X46 : term] : (~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (ap @ (sub @ X46 @ id) @ X47)))) & ! [X1 : d_term] : (d_one = X1) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoasinduction_lem3a <=> ! [X43 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X14 : subst,X25 : 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 @ (lam @ X43) @ id))) & (laminj <=> ! [X15 : term,X13 : term] : (((lam @ X13) != (lam @ X15)) | (X13 = X15))) & pushprop_gthm & (! [X13 : term,X15 : term] : (((sub @ X13 @ sh) != (sub @ X15 @ sh)) | (X13 = X15)) <=> shinj) & pushprop_lthm & axvarshift & (hoasinduction_lem3v2_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X11 : term > $o,X10 : subst > term > subst > $o,X48 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X11 @ (lam @ X48)) | ~! [X13 : term,X25 : subst,X14 : subst,X26 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & hoaslamnotvar_gthm & (! [X10 : term > $o,X13 : term,X14 : subst] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0_lthm) & (axvarcons <=> ! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13)) & hoaslaminj_gthm & (! [X22 : term,X10 : term > $o] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | (X10 @ X22)) <=> induction2) & ulamvarsh & ((^[X8 : subst, X9 : subst > term > term] : (d2term @ d_one)) = hoaslam) & hoasinduction_lem1 & (! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh))) <=> hoasinduction_lem3b_lthm) & (termmset_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X13 : term] : ((sub @ X13 @ id) = X13))) & ~(var @ (d2term @ d_one)) & ((! [X14 : subst] : ((comp @ X14 @ id) = X14) & ! [X14 : subst] : ((comp @ id @ X14) = X14)) <=> substmonoid) & (hoasinduction_lem3a_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id))) => ! [X10 : subst > term > subst > $o,X43 : term] : ((X10 @ id @ (lam @ X43) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))))))) & pushprop_lem2v2 & ! [X7 : d_subst,X6 : d_subst] : (((d2subst @ X6) = (d2subst @ X7)) => (X6 = X7)) & ~ulamvar1 & substmonoid_gthm & ulamvarind & pushprop_lem2v2_gthm & (! [X13 : term] : ((sub @ X13 @ id) = X13) <=> termmset) & hoasinduction_lem3v2_gthm & (! [X28 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ X28 @ 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 @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X14 : subst,X26 : subst,X13 : term,X25 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term,X15 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id))) <=> hoasinduction) & hoasinduction_lem2v2_gthm & (axscons <=> ! [X14 : subst] : ((push @ (sub @ one @ X14) @ (comp @ sh @ X14)) = X14)) & (! [X10 : term > $o,X15 : term,X14 : subst,X26 : term > $o,X13 : term] : (~(X10 @ X13) | (X26 @ (sub @ X13 @ (push @ X15 @ X14)))) <=> pushprop_lem1) & pushprop_lem3v2_lthm & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X10 : subst > term > subst > $o,X11 : term > $o,X29 : term] : (~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29))) <=> hoasinduction_lem3v2a) & (! [X31 : subst > term > term,X18 : subst > term > term,X33 : term,X32 : subst] : (~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) <=> hoaslaminj) & (! [X13 : term,X10 : term > $o,X14 : subst] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0) & hoasapnotvar_lthm & (pushprop_lem1_lthm <=> (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => ! [X14 : subst,X15 : term,X26 : term > $o,X13 : term,X10 : term > $o] : (~(X10 @ X13) | (X26 @ (sub @ X13 @ (push @ X15 @ X14))))))) & (! [X11 : term > $o,X44 : term,X45 : term,X10 : subst > term > subst > $o] : ((X11 @ (ap @ X44 @ X45)) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~(X11 @ X44) | ~(X11 @ X45) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) <=> hoasinduction_lem2v2) & pushprop_lem1v2_gthm & apnotvar & pushprop_lem2v2_lthm & (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) <=> hoasinduction_lem0_lthm) & hoaslamnotap_lthm & axmap & (hoasinduction_lem3aa_lthm <=> ! [X10 : subst > term > subst > $o,X42 : term] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id))) & hoasinduction_lem1_lthm & ((d2subst @ d_id) = sh) & (hoasinduction_lem3aaa <=> ! [X10 : subst > term > subst > $o,X34 : term] : (~! [X18 : subst > term > term,X35 : term] : (~! [X38 : subst,X37 : term,X36 : subst] : ((sub @ (X18 @ X36 @ X37) @ X38) = (sub @ (sub @ X35 @ (push @ X37 @ X36)) @ X38)) | ~! [X41 : subst,X40 : term,X39 : subst] : ((X18 @ (comp @ X39 @ X41) @ (sub @ X40 @ X41)) = (sub @ X35 @ (push @ (sub @ X40 @ X41) @ (comp @ X39 @ X41)))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | (X10 @ id @ (lam @ (sub @ X34 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : ((X10 @ id @ (sub @ X34 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)))) & (one = (d2term @ d_one)) & induction2lem_gthm & ((! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X22 : term,X10 : term > $o] : ((X10 @ X22) | ~! [X13 : term,X15 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13)))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X29 : term,X11 : term > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id))) => ! [X30 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ X30 @ id) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))))))) <=> hoasinduction_no_psi_cond_lthm) & ! [X4 : subst] : ? [X5 : d_subst] : ((d2subst @ X5) = X4) & (! [X13 : term,X15 : term,X19 : term,X20 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20)) <=> hoasapinj2) & (! [X20 : term,X19 : term,X15 : term,X13 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20)) <=> apinj2) & hoasinduction_lem3b_gthm & lamnotvar & (! [X13 : term] : ((sub @ X13 @ id) = X13) <=> axvarid) & pushprop_lem1_gthm & axassoc & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem3aa <=> ! [X10 : subst > term > subst > $o,X42 : term] : ((X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)))) & (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) <=> hoasinduction_lem3v2_f_lthm) & (hoasinduction_lem3 <=> ! [X27 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X14 : subst,X26 : subst,X25 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ 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)) | ~! [X14 : subst,X13 : term,X25 : subst,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ (lam @ X27) @ id))) & ~lamnotap & (hoasinduction_lem3_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : subst > term > subst > $o,X42 : term] : (~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X18 : subst > term > term] : (~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id))) => ! [X27 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X25 : subst,X14 : subst,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X26 : subst,X25 : subst,X14 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X10 @ id @ (lam @ X27) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (hoasapinj2_lthm <=> (! [X13 : term,X19 : term,X20 : term,X15 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20)) => ! [X19 : term,X20 : term,X13 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20)))) & (apinj1 <=> ! [X13 : term,X19 : term,X20 : term,X15 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20)))) & ! [X3 : d_term,X2 : d_term] : (((d2term @ X2) = (d2term @ X3)) => (X2 = X3)) & hoasapnotvar & (! [X10 : subst > term > subst > $o,X30 : term] : (~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | (X10 @ id @ X30 @ id)) <=> hoasinduction_no_psi_cond) & hoaslamnotvar_lthm & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & ! [X0 : term] : ? [X1 : d_term] : ((d2term @ X1) = X0) & (induction2lem <=> ! [X10 : term > $o,X17 : subst,X16 : term] : (~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | (X10 @ (sub @ X16 @ X17)))) & hoasinduction_lem1v2 & ((! [X14 : subst] : ((comp @ id @ X14) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X14 : subst] : ((comp @ id @ X14) = X14) & ! [X14 : subst] : ((comp @ X14 @ id) = X14)))) <=> substmonoid_lthm) & pushprop_lthm_orig & hoasinduction_lem3a_gthm & (hoasinduction_lem0 <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & hoaslamnotap_gthm & (! [X21 : term,X10 : term > $o] : (~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13))) | (X10 @ X21)) <=> induction) & ((d2subst @ d_id) = id) & (axshiftcons <=> ! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14)) & (pushprop_lem1v2 <=> ! [X11 : term > $o,X10 : term > $o,X13 : term,X14 : subst] : (~(X10 @ X13) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | (X11 @ one))) & ! [X5 : d_subst] : (d_id = X5) & (induction2lem_lthm <=> (! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X10 : term > $o,X21 : term] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | ~(X10 @ X13) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13))) | (X10 @ X21)) => ! [X17 : subst,X16 : term,X10 : term > $o] : (~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15)) | ~! [X15 : term,X13 : term] : (~(X10 @ X13) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15)) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | (X10 @ (sub @ X16 @ X17)))))))) & (hoasinduction_lthm <=> (! [X22 : term,X10 : term > $o] : (~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | (X10 @ X22) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13))) => (! [X23 : term,X24 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (ap @ X23 @ X24) @ id) | ~(X10 @ id @ X24 @ id) | ~(X10 @ id @ X23 @ id) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term,X13 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X14 : subst,X26 : subst,X25 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)))) => (! [X10 : subst > term > subst > $o,X27 : term] : ((X10 @ id @ (lam @ X27) @ id) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X26 : subst,X25 : subst,X13 : term,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))) => ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X14 : subst,X25 : subst,X13 : term,X26 : 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)) | ~! [X14 : subst,X13 : term,X25 : subst,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X15 : term,X13 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id))))))) & (hoasinduction_lem3v2 <=> ! [X11 : term > $o,X48 : term,X10 : subst > term > subst > $o] : (~! [X26 : subst,X25 : subst,X13 : term,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X11 @ (lam @ X48)) | ~! [X15 : term] : ((X11 @ (sub @ X48 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [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 @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X14 : subst,X25 : subst,X26 : subst,X13 : term] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)))) & (! [X14 : subst] : ((comp @ X14 @ id) = X14) <=> axidr) & hoasinduction_gthm & termmset_gthm & hoasinduction_lem1_gthm & pushprop_lem3v2 & hoasinduction_lem3_gthm & ((^[X13 : term, X14 : subst, X10 : term > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))))) = pushprop_p_and_p_prime) & (hoasinduction_lem3v2_f <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13))) & (pushprop_lem1v2_lthm <=> (! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => ! [X10 : term > $o,X11 : term > $o,X13 : term,X14 : subst] : ((X11 @ one) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | ~(X10 @ X13)))) & axclos & hoasapnotvar_gthm & (hoasinduction_lem2 <=> ! [X10 : subst > term > subst > $o,X24 : term,X23 : term] : (~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~(X10 @ id @ X24 @ id) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~(X10 @ id @ X23 @ id))) & (hoasinduction_lem3b <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & hoasinduction_lem2_gthm & ((^[X10 : subst > term > subst > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) = hoasinduction_p_and_p_prime) & (axidl <=> ! [X14 : subst] : ((comp @ id @ X14) = X14)) & ((! [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,X10 : subst > term > subst > $o,X11 : term > $o] : ((X11 @ (lam @ X29)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [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))))) <=> hoasinduction_lem3v2a_lthm) & pushprop_lem0_gthm & hoasinduction_lem2_lthm & hoasapinj1_gthm & induction2_gthm & (induction2_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X10 : term > $o,X16 : term,X17 : subst] : (~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | (X10 @ (sub @ X16 @ X17))) => ! [X22 : term,X10 : term > $o] : ((X10 @ X22) | ~! [X13 : term,X15 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))))))) & (hoasapinj1 <=> ! [X15 : term,X20 : term,X19 : term,X13 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15))) & pushprop & ((! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X10 : term > $o,X22 : term] : (~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | (X10 @ X22)) => (! [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)) | (X11 @ (lam @ X29)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) => ! [X28 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X25 : subst,X26 : subst,X13 : term,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X25 : subst,X13 : term,X26 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | (X10 @ id @ X28 @ id) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id)))))))) <=> hoasinduction_lthm_3) & hoaslamnotvar & ((! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X13 : term,X15 : term] : ((X13 = X15) | ((lam @ X13) != (lam @ X15))) => ! [X31 : subst > term > term,X32 : subst,X18 : subst > term > term,X33 : term] : (~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))))) <=> hoaslaminj_lthm) & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X20 : term,X15 : term,X13 : term,X19 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X15 : term,X13 : term,X19 : term,X20 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15)))) <=> hoasapinj1_lthm) & axabs & axapp),
% 2.47/1.94    file('/export/starexec/sandbox2/tmp/tmp.IOI7rTKtJk/DTF2THF_25437.p',alg444_1)).
% 2.47/1.94  thf(f1444,plain,(
% 2.47/1.94    ( ! [X38 : term] : (((d2term @ (sK532 @ X38)) = X38)) )),
% 2.47/1.94    inference(cnf_transformation,[status(thm)],[f744])).
% 2.47/1.94  thf(f1861,plain,(
% 2.47/1.94    ($true = (var @ (lam @ sK109)))),
% 2.47/1.94    inference(trivial_inequality_removal,[status(thm)],[f1494])).
% 2.47/1.94  thf(f1494,plain,(
% 2.47/1.94    ($true != $true) | ($true = (var @ (lam @ sK109)))),
% 2.47/1.94    inference(definition_unfolding,[status(thm)],[f746,f1345])).
% 2.47/1.94  thf(f1345,plain,(
% 2.47/1.94    (lamnotvar = $true)),
% 2.47/1.94    inference(cnf_transformation,[status(thm)],[f744])).
% 2.47/1.94  thf(f746,plain,(
% 2.47/1.94    (lamnotvar != $true) | ($true = (var @ (lam @ sK109)))),
% 2.47/1.94    inference(cnf_transformation,[status(thm)],[f128])).
% 2.47/1.94  thf(f128,plain,(
% 2.47/1.94    ((lamnotvar != $true) | ($true = (var @ (lam @ sK109)))) & ((lamnotvar = $true) | ! [X1 : term] : ($true != (var @ (lam @ X1))))),
% 2.47/1.94    inference(skolemisation,[status(esa),new_symbols(skolem,[sK109])],[f126,f127])).
% 2.47/1.94  thf(f127,plain,(
% 2.47/1.94    ? [X0 : term] : ($true = (var @ (lam @ X0))) => ($true = (var @ (lam @ sK109)))),
% 2.47/1.94    introduced(definition,[],[choice_axiom])).
% 2.47/1.94  thf(f126,plain,(
% 2.47/1.94    ((lamnotvar != $true) | ? [X0 : term] : ($true = (var @ (lam @ X0)))) & ((lamnotvar = $true) | ! [X1 : term] : ($true != (var @ (lam @ X1))))),
% 2.47/1.94    inference(rectify,[status(thm)],[f125])).
% 2.47/1.94  thf(f125,plain,(
% 2.47/1.94    ((lamnotvar != $true) | ? [X0 : term] : ($true = (var @ (lam @ X0)))) & ((lamnotvar = $true) | ! [X0 : term] : ($true != (var @ (lam @ X0))))),
% 2.47/1.94    inference(nnf_transformation,[status(thm)],[f12])).
% 2.47/1.94  thf(f12,plain,(
% 2.47/1.94    ! [X0 : term] : ($true != (var @ (lam @ X0))) <~> (lamnotvar = $true)),
% 2.47/1.94    inference(ennf_transformation,[status(thm)],[f9])).
% 2.47/1.94  thf(f9,plain,(
% 2.47/1.94    ~(! [X0 : term] : ($true != (var @ (lam @ X0))) <=> (lamnotvar = $true))),
% 2.47/1.94    inference(flattening,[status(thm)],[f8])).
% 2.47/1.94  thf(f8,plain,(
% 2.47/1.94    ~(! [X0 : term] : ~($true = (var @ (lam @ X0))) <=> (lamnotvar = $true))),
% 2.47/1.94    inference(fool_elimination,[status(thm)],[f7])).
% 2.47/1.94  thf(f7,plain,(
% 2.47/1.94    ~(! [X0 : term] : ~(var @ (lam @ X0)) = lamnotvar)),
% 2.47/1.94    inference(rectify,[status(thm)],[f3])).
% 2.47/1.94  thf(f3,negated_conjecture,(
% 2.47/1.94    ~(! [X13 : term] : ~(var @ (lam @ X13)) = lamnotvar)),
% 2.47/1.94    inference(negated_conjecture,[status(cth)],[f2])).
% 2.47/1.94  thf(f2,conjecture,(
% 2.47/1.94    (! [X13 : term] : ~(var @ (lam @ X13)) = lamnotvar)),
% 2.47/1.94    file('/export/starexec/sandbox2/tmp/tmp.IOI7rTKtJk/DTF2THF_25437.p',lamnotvar)).
% 2.47/1.94  thf(f1489,plain,(
% 2.47/1.94    ((var @ (d2term @ d_one)) != $true)),
% 2.47/1.94    inference(cnf_transformation,[status(thm)],[f744])).
% 2.47/1.94  % SZS output end Proof for DTF2THF_25437
% 2.47/1.94  % (25757)------------------------------
% 2.47/1.94  % (25757)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.47/1.94  % (25757)Termination reason: Refutation
% 2.47/1.94  
% 2.47/1.94  % (25757)Memory used [KB]: 12153
% 2.47/1.94  % (25757)Time elapsed: 0.132 s
% 2.47/1.94  % (25757)Instructions burned: 258 (million)
% 2.47/1.94  % (25757)------------------------------
% 2.47/1.94  % (25757)------------------------------
% 2.47/1.94  % (25709)Success in time 0.451 s
%------------------------------------------------------------------------------