↑ Up

DT2H2X---1.9.5.THM-Ref.s

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

% Computer : n001.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:50 PM UTC 2026

% Result   : Theorem 6.77s 2.22s
% Output   : Refutation 6.77s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   19
%            Number of leaves      :  204
% Syntax   : Number of formulae    :  278 (  13 unt;   0 typ;   9 def)
%            Number of atoms       : 12162 (5693 equ;   0 cnn)
%            Maximal formula atoms :  530 (  43 avg)
%            Number of connectives : 27403 (3199   ~;2892   |;2505   &;17907   @)
%                                         ( 571 <=>; 306  =>;   0  <=;   3 <~>)
%            Maximal formula depth :  185 (  13 avg)
%            Number of types       :    5 (   4 usr)
%            Number of type conns  : 2242 (2242   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  798 ( 794 usr; 309 con; 0-4 aty)
%                                         (  20  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 5938 ( 116   ^;4414   !;1408   ?;5938   :)

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_163,type,
    sP22: ( 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_173,type,
    sP32: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_202,type,
    sP61: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

thf(func_def_215,type,
    sP74: ( term > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_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_236,type,
    sP95: ( subst > term > subst > $o ) > $o ).

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_254,type,
    sK113: term ).

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

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

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

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

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

thf(func_def_260,type,
    sK119: term ).

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

thf(func_def_262,type,
    sK121: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_281,type,
    sK140: term ).

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

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

thf(func_def_284,type,
    sK143: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_306,type,
    sK165: term ).

thf(func_def_307,type,
    sK166: term ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_320,type,
    sK179: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_344,type,
    sK203: term ).

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

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

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

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

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

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

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

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

thf(func_def_353,type,
    sK212: term ).

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

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

thf(func_def_356,type,
    sK215: term ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_369,type,
    sK228: term ).

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

thf(func_def_371,type,
    sK230: term ).

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

thf(func_def_373,type,
    sK232: subst ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_386,type,
    sK245: term ).

thf(func_def_387,type,
    sK246: term ).

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

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

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

thf(func_def_391,type,
    sK250: term ).

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

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

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

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

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

thf(func_def_397,type,
    sK256: term ).

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

thf(func_def_399,type,
    sK258: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_436,type,
    sK295: term ).

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

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

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

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

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

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

thf(func_def_443,type,
    sK302: ( subst > term > term ) > term > term ).

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

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

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

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

thf(func_def_448,type,
    sK307: term ).

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

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

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

thf(func_def_452,type,
    sK311: ( subst > term > term ) > subst ).

thf(func_def_453,type,
    sK312: ( subst > term > term ) > subst ).

thf(func_def_454,type,
    sK313: ( subst > term > term ) > term ).

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

thf(func_def_456,type,
    sK315: term ).

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

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

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

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

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

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

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

thf(func_def_464,type,
    sK323: term ).

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

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

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

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

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

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

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

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

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

thf(func_def_474,type,
    sK333: subst ).

thf(func_def_475,type,
    sK334: subst ).

thf(func_def_476,type,
    sK335: subst ).

thf(func_def_477,type,
    sK336: subst ).

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

thf(func_def_479,type,
    sK338: term ).

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

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

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

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

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

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

thf(func_def_486,type,
    sK345: term ).

thf(func_def_487,type,
    sK346: subst ).

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

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

thf(func_def_490,type,
    sK349: term ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_501,type,
    sK360: term ).

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

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

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

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

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

thf(func_def_507,type,
    sK366: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_522,type,
    sK381: term ).

thf(func_def_523,type,
    sK382: subst ).

thf(func_def_524,type,
    sK383: term ).

thf(func_def_525,type,
    sK384: term ).

thf(func_def_526,type,
    sK385: term ).

thf(func_def_527,type,
    sK386: subst ).

thf(func_def_528,type,
    sK387: term ).

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

thf(func_def_530,type,
    sK389: subst ).

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

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

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

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

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

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

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

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

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

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

thf(func_def_541,type,
    sK400: term ).

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

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

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

thf(func_def_545,type,
    sK404: term ).

thf(func_def_546,type,
    sK405: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_574,type,
    sK433: subst ).

thf(func_def_575,type,
    sK434: term ).

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

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

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

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

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

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

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

thf(func_def_583,type,
    sK442: term ).

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

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

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

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

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

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

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

thf(func_def_591,type,
    sK450: term ).

thf(func_def_592,type,
    sK451: term ).

thf(func_def_593,type,
    sK452: term ).

thf(func_def_594,type,
    sK453: term ).

thf(func_def_595,type,
    sK454: term ).

thf(func_def_596,type,
    sK455: term ).

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

thf(func_def_602,type,
    sK461: term ).

thf(func_def_603,type,
    sK462: term ).

thf(func_def_604,type,
    sK463: term ).

thf(func_def_605,type,
    sK464: term ).

thf(func_def_606,type,
    sK465: term ).

thf(func_def_607,type,
    sK466: term ).

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

thf(func_def_609,type,
    sK468: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_627,type,
    sK486: term ).

thf(func_def_628,type,
    sK487: term ).

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_641,type,
    sK500: term ).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

thf(func_def_660,type,
    sK519: term ).

thf(func_def_661,type,
    sK520: term ).

thf(func_def_662,type,
    sK521: term ).

thf(func_def_663,type,
    sK522: subst ).

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

thf(func_def_665,type,
    sK524: term ).

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

thf(func_def_667,type,
    sK526: subst ).

thf(func_def_668,type,
    sK527: term ).

thf(func_def_669,type,
    sK528: subst ).

thf(func_def_670,type,
    sK529: term ).

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

thf(func_def_672,type,
    sK531: subst ).

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

thf(func_def_674,type,
    sK533: term ).

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

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

thf(func_def_677,type,
    sK536: term ).

thf(func_def_678,type,
    sK537: term ).

thf(func_def_679,type,
    sK538: term ).

thf(func_def_680,type,
    sK539: term ).

thf(func_def_681,type,
    sK540: term ).

thf(func_def_682,type,
    sK541: term ).

thf(func_def_683,type,
    sK542: term ).

thf(func_def_684,type,
    sK543: term ).

thf(func_def_685,type,
    sK544: term ).

thf(func_def_686,type,
    sK545: term ).

thf(func_def_687,type,
    sK546: term ).

thf(func_def_688,type,
    sK547: term ).

thf(func_def_689,type,
    sK548: term > subst > term > term ).

thf(func_def_690,type,
    sK549: term ).

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

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

thf(func_def_693,type,
    sK552: term ).

thf(func_def_694,type,
    sK553: subst ).

thf(func_def_695,type,
    sK554: subst ).

thf(func_def_696,type,
    sK555: term ).

thf(func_def_697,type,
    sK556: subst ).

thf(func_def_698,type,
    sK557: subst ).

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

thf(func_def_700,type,
    sK559: term ).

thf(func_def_701,type,
    sK560: term ).

thf(func_def_702,type,
    sK561: term > $o ).

thf(func_def_703,type,
    sK562: subst ).

thf(func_def_704,type,
    sK563: term ).

thf(func_def_705,type,
    sK564: term ).

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

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

thf(func_def_708,type,
    sK567: subst ).

thf(func_def_709,type,
    sK568: term ).

thf(func_def_710,type,
    sK569: subst ).

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

thf(func_def_712,type,
    sK571: term ).

thf(func_def_713,type,
    sK572: term ).

thf(func_def_714,type,
    sK573: term ).

thf(func_def_715,type,
    sK574: term ).

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

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

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

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

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

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

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

thf(func_def_723,type,
    sK582: subst ).

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

thf(func_def_725,type,
    sK584: term ).

thf(func_def_726,type,
    sK585: term ).

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

thf(func_def_728,type,
    sK587: ( subst > term > term ) > subst ).

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

thf(func_def_730,type,
    sK589: ( subst > term > term ) > term ).

thf(func_def_731,type,
    sK590: ( subst > term > term ) > subst ).

thf(func_def_732,type,
    sK591: ( subst > term > term ) > subst ).

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

thf(func_def_734,type,
    sK593: term ).

thf(func_def_735,type,
    sK594: term ).

thf(func_def_736,type,
    sK595: term ).

thf(func_def_737,type,
    sK596: term ).

thf(func_def_738,type,
    sK597: subst ).

thf(func_def_739,type,
    sK598: subst ).

thf(func_def_740,type,
    sK599: term ).

thf(func_def_741,type,
    sK600: term > subst > term > term ).

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

thf(func_def_743,type,
    sK602: subst ).

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

thf(func_def_745,type,
    sK604: term ).

thf(func_def_746,type,
    sK605: ( term > $o ) > term ).

thf(func_def_747,type,
    sK606: term ).

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

thf(func_def_749,type,
    sK608: subst > term > subst > $o ).

thf(func_def_750,type,
    sK609: ( term > $o ) > term ).

thf(func_def_751,type,
    sK610: term ).

thf(func_def_752,type,
    sK611: subst > d_subst ).

thf(func_def_753,type,
    sK612: term > subst > term > term ).

thf(func_def_754,type,
    sK613: term ).

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

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

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

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

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

thf(func_def_760,type,
    sK619: term ).

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

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

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

thf(func_def_767,type,
    sK626: ( subst > term > term ) > term ).

thf(func_def_768,type,
    sK627: term ).

thf(func_def_769,type,
    sK628: term > subst > term > term ).

thf(func_def_770,type,
    sK629: term ).

thf(func_def_771,type,
    sK630: term ).

thf(func_def_772,type,
    sK631: term ).

thf(func_def_773,type,
    sK632: term ).

thf(func_def_774,type,
    sK633: subst ).

thf(func_def_775,type,
    sK634: subst ).

thf(func_def_776,type,
    sK635: term ).

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

thf(func_def_778,type,
    sK637: subst ).

thf(func_def_779,type,
    sK638: ( term > $o ) > term ).

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

thf(func_def_781,type,
    sK640: subst ).

thf(func_def_782,type,
    sK641: term ).

thf(func_def_783,type,
    sK642: term ).

thf(func_def_784,type,
    sK643: subst ).

thf(func_def_785,type,
    sK644: term > d_term ).

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

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

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

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

thf(func_def_790,type,
    sK649: ( subst > term > subst > $o ) > subst ).

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

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

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

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

thf(func_def_795,type,
    sK654: ( subst > term > subst > $o ) > term ).

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

thf(func_def_797,type,
    sK656: ( subst > term > subst > $o ) > term ).

thf(func_def_798,type,
    sK657: ( subst > term > subst > $o ) > term ).

thf(func_def_801,type,
    ph659: 
      !>[X0: $tType] : X0 ).

thf(f6824,plain,
    $false,
    inference(avatar_sat_refutation,[status(thm)],[f2319,f3068,f3186,f3239,f3507,f3743,f6748,f6758,f6787,f6823]) ).

thf(f6823,plain,
    ( spl658_285
    | ~ spl658_473 ),
    inference(avatar_contradiction_clause,[status(thm)],[f6822]) ).

thf(f6822,plain,
    ( $false
    | spl658_285
    | ~ spl658_473 ),
    inference(subsumption_resolution,[status(thm)],[f6759,f6754]) ).

thf(f6754,plain,
    ( ! [X5: subst] :
        ( $true
        = ( sK485 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ X5 ) )
    | ~ spl658_473 ),
    inference(avatar_component_clause,[status(thm)],[f6753]) ).

thf(f6753,definition,
    ( spl658_473
  <=> ! [X5: subst] :
        ( $true
        = ( sK485 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ X5 ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_473])],[avatar_definition]) ).

thf(f6759,plain,
    ( ( $true
     != ( sK485 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    | spl658_285 ),
    inference(forward_demodulation,[status(thm)],[f3067,f3870]) ).

thf(f3870,plain,
    ! [X262: term] :
      ( ( d2term @ d_one )
      = X262 ),
    inference(forward_demodulation,[status(thm)],[f1283,f1400]) ).

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

thf(f745,plain,
    ( ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP108 )
        & ( $true != sP107 )
        & ! [X0: subst > term > subst > $o,X2: term] :
            ( ( sK516 @ X0 @ X2 )
            = ( X0 @ id @ X2 @ id ) )
        & ( $true != sP106 )
        & ! [X3: term] :
            ( ( sub @ X3 @ id )
            = X3 ) ) )
    & ( ( $true = sP108 )
      | ( $true = sP107 )
      | ! [X5: term > $o] :
          ( ( X5 @ ( sK518 @ X5 ) )
         != ( sK517 @ id @ ( sK518 @ X5 ) @ id ) )
      | ( $true = sP106 )
      | ( sK519
       != ( sub @ sK519 @ id ) )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X8: term] :
            ( ( sub @ X8 @ id )
            = X8 )
        & ( $true != sP98 )
        & ( $true != sP99 ) ) )
    & ( ( sK520
       != ( sub @ sK520 @ id ) )
      | ( $true = sP98 )
      | ( $true = sP99 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X10: subst,X11: term] :
            ( ( sub @ one @ ( push @ X11 @ X10 ) )
            = X11 )
        & ( $true
         != ( sK525 @ ( sub @ sK524 @ ( push @ sK521 @ sK522 ) ) ) )
        & ( $true
          = ( sK523 @ sK524 ) )
        & ! [X17: subst,X18: term] :
            ( ( comp @ sh @ ( push @ X18 @ X17 ) )
            = X17 ) ) )
    & ( ( sK527
       != ( sub @ one @ ( push @ sK527 @ sK526 ) ) )
      | ! [X21: term,X22: subst,X23: term > $o,X24: term,X25: term > $o] :
          ( ( $true
            = ( X25 @ ( sub @ X24 @ ( push @ X21 @ X22 ) ) ) )
          | ( ( X23 @ X24 )
           != $true ) )
      | ( sK528
       != ( comp @ sh @ ( push @ sK529 @ sK528 ) ) )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X28: subst,X29: term > $o,X30: term,X31: term > $o] :
          ( ( $true
           != ( X29 @ X30 ) )
          | ( $true
            = ( X31 @ one ) )
          | ( ( X29 @ ( sub @ ( sK530 @ X31 @ X30 @ X29 @ X28 ) @ ( push @ X30 @ X28 ) ) )
           != ( X31 @ ( sK530 @ X31 @ X30 @ X29 @ X28 ) ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ( ( $true
          = ( sK532 @ sK533 ) )
        & ( ( sK534 @ one )
         != $true )
        & ! [X37: term] :
            ( ( sK532 @ ( sub @ X37 @ ( push @ sK533 @ sK531 ) ) )
            = ( sK534 @ X37 ) ) ) )
    & ( hoasapnotvar = $true )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP90 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP90 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ( ( $true
         != ( sP85 @ sK535 ) )
        & ( $true
         != ( sP84 @ sK535 ) )
        & ( $true
         != ( sK535 @ id @ sK536 @ id ) ) ) )
    & ( ! [X40: subst > term > subst > $o,X41: term] :
          ( ( $true
            = ( sP85 @ X40 ) )
          | ( $true
            = ( sP84 @ X40 ) )
          | ( $true
            = ( X40 @ id @ X41 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( shinj = $true )
      | ( ( ( sub @ sK538 @ sh )
          = ( sub @ sK537 @ sh ) )
        & ( sK538 != sK537 ) ) )
    & ( ! [X44: term,X45: term] :
          ( ( ( sub @ X44 @ sh )
           != ( sub @ X45 @ sh ) )
          | ( X44 = X45 ) )
      | ( shinj != $true ) )
    & ( ulamvarind = $true )
    & ! [X46: d_subst,X47: d_subst] :
        ( ( ( d2subst @ X47 )
         != ( d2subst @ X46 ) )
        | ( X46 = X47 ) )
    & ( ( apinj2 = $true )
      | ( ( sK540 != sK542 )
        & ( ( ap @ sK541 @ sK540 )
          = ( ap @ sK539 @ sK542 ) ) ) )
    & ( ! [X52: term,X53: term,X54: term,X55: term] :
          ( ( X53 = X55 )
          | ( ( ap @ X52 @ X55 )
           != ( ap @ X54 @ X53 ) ) )
      | ( apinj2 != $true ) )
    & ( ( $true = sP83 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP83 ) )
    & ( axapp = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP81 )
        & ( $true != sP80 )
        & ! [X56: term] :
            ( ( sub @ X56 @ id )
            = X56 ) ) )
    & ( ( $true = sP81 )
      | ( $true = sP80 )
      | ( sK543
       != ( sub @ sK543 @ id ) )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X58: term,X59: term,X60: term,X61: term] :
          ( ( ( ap @ ( sub @ X61 @ id ) @ X59 )
           != ( ap @ ( sub @ X58 @ id ) @ X60 ) )
          | ( X59 = X60 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ( ( ( ap @ ( sub @ sK547 @ id ) @ sK545 )
          = ( ap @ ( sub @ sK544 @ id ) @ sK546 ) )
        & ( sK546 != sK545 ) ) )
    & ! [X66: d_term,X67: d_term] :
        ( ( ( d2term @ X67 )
         != ( d2term @ X66 ) )
        | ( X66 = X67 ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X68: term,X70: term,X71: subst] :
          ( ( sK548 @ X68 @ X71 @ X70 )
          = ( sub @ X68 @ ( push @ X70 @ X71 ) ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ! [X73: subst > term > term] :
          ( ( sub @ sK549 @ ( push @ ( sK550 @ X73 ) @ ( sK551 @ X73 ) ) )
         != ( X73 @ ( sK551 @ X73 ) @ ( sK550 @ X73 ) ) ) )
    & ( termmset_gthm = $true )
    & ( ( ( sub @ one @ ( push @ sK552 @ sK553 ) )
       != sK552 )
      | ( sK554
       != ( comp @ sK554 @ id ) )
      | ( sK556
       != ( comp @ sh @ ( push @ sK555 @ sK556 ) ) )
      | ( $true = sP76 )
      | ( $true = sP77 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X81: term,X82: subst] :
            ( ( sub @ one @ ( push @ X81 @ X82 ) )
            = X81 )
        & ! [X83: subst] :
            ( ( comp @ X83 @ id )
            = X83 )
        & ! [X84: term,X85: subst] :
            ( ( comp @ sh @ ( push @ X84 @ X85 ) )
            = X85 )
        & ( $true != sP76 )
        & ( $true != sP77 ) ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( pushprop_lem1 = $true )
      | ( ( $true
          = ( sK561 @ sK560 ) )
        & ( $true
         != ( sK558 @ ( sub @ sK560 @ ( push @ sK559 @ sK557 ) ) ) ) ) )
    & ( ! [X91: subst,X92: term > $o,X93: term,X94: term,X95: term > $o] :
          ( ( $true
           != ( X95 @ X94 ) )
          | ( $true
            = ( X92 @ ( sub @ X94 @ ( push @ X93 @ X91 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( axabs = $true )
    & ( ! [X96: subst,X97: term] :
          ( ( sub @ one @ ( push @ X97 @ X96 ) )
          = X97 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ( sK563
       != ( sub @ one @ ( push @ sK563 @ sK562 ) ) ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ! [X100: term,X101: subst] :
            ( ( sub @ one @ ( push @ X100 @ X101 ) )
            = X100 )
        & ! [X106: term] :
            ( ( sK566 @ ( sub @ X106 @ ( push @ sK564 @ sK567 ) ) )
            = ( sK565 @ X106 ) )
        & ( $true
          = ( sK566 @ sK564 ) )
        & ( $true
         != ( sK565 @ one ) ) ) )
    & ( ( ( sub @ one @ ( push @ sK568 @ sK569 ) )
       != sK568 )
      | ! [X109: term,X110: term > $o,X111: term > $o,X112: subst] :
          ( ( ( X111 @ ( sub @ ( sK570 @ X112 @ X111 @ X110 @ X109 ) @ ( push @ X109 @ X112 ) ) )
           != ( X110 @ ( sK570 @ X112 @ X111 @ X110 @ X109 ) ) )
          | ( $true
           != ( X111 @ X109 ) )
          | ( $true
            = ( X110 @ one ) ) )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( $true = sP71 )
      | ( $true = sP70 )
      | ( $true = sP69 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP71 )
        & ( $true != sP70 )
        & ( $true != sP69 )
        & ( $true != sP68 ) ) )
    & ( lamnotvar = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ! [X114: term,X115: term,X116: term,X117: term] :
          ( ( X115 = X116 )
          | ( ( ap @ X115 @ X114 )
           != ( ap @ X116 @ X117 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ( ( sK573 != sK572 )
        & ( ( ap @ sK573 @ sK574 )
          = ( ap @ sK572 @ sK571 ) ) ) )
    & ( ! [X122: subst > term > term,X123: subst,X124: subst > term > term,X125: term] :
          ( ( ( X124 @ ( comp @ ( sK577 @ X124 ) @ ( sK576 @ X124 ) ) @ ( sub @ ( sK575 @ X124 ) @ ( sK576 @ X124 ) ) )
           != ( sub @ ( X124 @ ( sK577 @ X124 ) @ ( sK575 @ X124 ) ) @ ( sK576 @ X124 ) ) )
          | ( ( lam @ ( X122 @ sh @ one ) )
           != ( lam @ ( X124 @ sh @ one ) ) )
          | ( ( X122 @ X123 @ X125 )
            = ( X124 @ X123 @ X125 ) )
          | ( ( sub @ ( X122 @ ( sK580 @ X122 ) @ ( sK579 @ X122 ) ) @ ( sK578 @ X122 ) )
           != ( X122 @ ( comp @ ( sK580 @ X122 ) @ ( sK578 @ X122 ) ) @ ( sub @ ( sK579 @ X122 ) @ ( sK578 @ X122 ) ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ( ! [X136: term,X137: subst,X138: subst] :
            ( ( sK583 @ ( comp @ X138 @ X137 ) @ ( sub @ X136 @ X137 ) )
            = ( sub @ ( sK583 @ X138 @ X136 ) @ X137 ) )
        & ( ( lam @ ( sK581 @ sh @ one ) )
          = ( lam @ ( sK583 @ sh @ one ) ) )
        & ( ( sK583 @ sK582 @ sK584 )
         != ( sK581 @ sK582 @ sK584 ) )
        & ! [X139: subst,X140: term,X141: subst] :
            ( ( sub @ ( sK581 @ X141 @ X140 ) @ X139 )
            = ( sK581 @ ( comp @ X141 @ X139 ) @ ( sub @ X140 @ X139 ) ) ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP56 ) )
    & ( ( $true = sP56 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ! [X143: subst > term > term] :
          ( ( X143 @ ( sK587 @ X143 ) @ ( sK586 @ X143 ) )
         != ( sub @ sK585 @ ( push @ ( sK586 @ X143 ) @ ( sK587 @ X143 ) ) ) ) )
    & ( ! [X146: term,X148: term,X149: subst] :
          ( ( sub @ X146 @ ( push @ X148 @ X149 ) )
          = ( sK588 @ X146 @ X149 @ X148 ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ! [X150: d_term] : ( d_one = X150 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ! [X151: subst > term > term,X152: term,X153: term] :
          ( ( ( ap @ ( sub @ X153 @ id ) @ X152 )
           != ( lam @ ( X151 @ sh @ one ) ) )
          | ( ( sub @ ( X151 @ ( sK591 @ X151 ) @ ( sK589 @ X151 ) ) @ ( sK590 @ X151 ) )
           != ( X151 @ ( comp @ ( sK591 @ X151 ) @ ( sK590 @ X151 ) ) @ ( sub @ ( sK589 @ X151 ) @ ( sK590 @ X151 ) ) ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ( ( ( lam @ ( sK592 @ sh @ one ) )
          = ( ap @ ( sub @ sK594 @ id ) @ sK593 ) )
        & ! [X160: term,X161: subst,X162: subst] :
            ( ( sK592 @ ( comp @ X162 @ X161 ) @ ( sub @ X160 @ X161 ) )
            = ( sub @ ( sK592 @ X162 @ X160 ) @ X161 ) ) ) )
    & ( hoaslamnotvar = $true )
    & ( ( ( sub @ sK595 @ id )
       != sK595 )
      | ! [X164: term] :
          ( ( sub @ X164 @ id )
          = X164 )
      | ( termmset_lthm != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X165: term] :
            ( ( sub @ X165 @ id )
            = X165 )
        & ( ( sub @ sK596 @ id )
         != sK596 ) ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( apnotvar = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( ( axidr = $true )
      | ( sK597
       != ( comp @ sK597 @ id ) ) )
    & ( ! [X168: subst] :
          ( ( comp @ X168 @ id )
          = X168 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( axscons = $true )
      | ( sK598
       != ( push @ ( sub @ one @ sK598 ) @ ( comp @ sh @ sK598 ) ) ) )
    & ( ! [X170: subst] :
          ( ( push @ ( sub @ one @ X170 ) @ ( comp @ sh @ X170 ) )
          = X170 )
      | ( axscons != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( axvarshift = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem3b = $true )
      | ! [X172: subst > term > term] :
          ( ( X172 @ sh @ one )
         != ( sub @ sK599 @ ( push @ one @ sh ) ) ) )
    & ( ! [X173: term] :
          ( ( sK600 @ X173 @ sh @ one )
          = ( sub @ X173 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( $true = sP48 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP48 ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( induction2 = $true )
      | ( $true != sP47 ) )
    & ( ( $true = sP47 )
      | ( induction2 != $true ) )
    & ( lamnotap != $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X175: subst,X176: term > $o,X177: term,X179: term] :
          ( ( sK601 @ X177 @ X176 @ X175 @ X179 )
          = ( X176 @ ( sub @ X179 @ ( push @ X177 @ X175 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ! [X183: term > $o] :
          ( ( X183 @ ( sK605 @ X183 ) )
         != ( sK603 @ ( sub @ ( sK605 @ X183 ) @ ( push @ sK604 @ sK602 ) ) ) ) )
    & ( ! [X185: term] :
          ( ( sub @ X185 @ id )
          = X185 )
      | ( axvarid != $true ) )
    & ( ( axvarid = $true )
      | ( ( sub @ sK606 @ id )
       != sK606 ) )
    & ( ! [X187: subst > term > subst > $o,X189: term] :
          ( ( X187 @ id @ X189 @ id )
          = ( sK607 @ X187 @ X189 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ! [X191: term > $o] :
          ( ( X191 @ ( sK609 @ X191 ) )
         != ( sK608 @ id @ ( sK609 @ X191 ) @ id ) ) )
    & ( ( sP43 = $true )
      | ( sK610
       != ( sub @ sK610 @ id ) )
      | ( $true = sP44 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( sP43 != $true )
        & ! [X194: term] :
            ( ( sub @ X194 @ id )
            = X194 )
        & ( $true != sP44 ) ) )
    & ! [X195: subst] :
        ( ( d2subst @ ( sK611 @ X195 ) )
        = X195 )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop = $true )
    & ( ! [X197: term] :
          ( ( sub @ X197 @ ( push @ one @ sh ) )
          = ( sK612 @ X197 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ! [X200: subst > term > term] :
          ( ( sub @ sK613 @ ( push @ one @ sh ) )
         != ( X200 @ sh @ one ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( hoasinduction_lem0 = $true )
      | ! [X202: term > $o] :
          ( ( sK614 @ id @ ( sK615 @ X202 ) @ id )
         != ( X202 @ ( sK615 @ X202 ) ) ) )
    & ( ! [X204: subst > term > subst > $o,X206: term] :
          ( ( sK616 @ X204 @ X206 )
          = ( X204 @ id @ X206 @ id ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ! [X207: d_subst] : ( d_id = X207 )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP31 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP31 ) )
    & ( ! [X209: term > $o] :
          ( ( X209 @ ( sK618 @ X209 ) )
         != ( sK617 @ id @ ( sK618 @ X209 ) @ id ) )
      | ( ( sub @ sK619 @ id )
       != sK619 )
      | ( $true = sP27 )
      | ( $true = sP29 )
      | ( $true = sP28 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X212: subst > term > subst > $o,X214: term] :
            ( ( sK620 @ X212 @ X214 )
            = ( X212 @ id @ X214 @ id ) )
        & ! [X215: term] :
            ( ( sub @ X215 @ id )
            = X215 )
        & ( $true != sP27 )
        & ( $true != sP29 )
        & ( $true != sP28 ) ) )
    & ( ( induction2lem = $true )
      | ( $true != sP19 ) )
    & ( ( $true = sP19 )
      | ( induction2lem != $true ) )
    & ( ! [X216: term,X217: term] :
          ( ( ( lam @ X216 )
           != ( lam @ X217 ) )
          | ( X216 = X217 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ( ( ( lam @ sK622 )
          = ( lam @ sK621 ) )
        & ( sK622 != sK621 ) ) )
    & ( ! [X220: term] :
          ( ( sub @ X220 @ id )
          = X220 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ( sK623
       != ( sub @ sK623 @ id ) ) )
    & ( ( sP16 = $true )
      | ! [X223: subst > term > term] :
          ( ( sub @ sK624 @ ( push @ ( sK626 @ X223 ) @ ( sK625 @ X223 ) ) )
         != ( X223 @ ( sK625 @ X223 ) @ ( sK626 @ X223 ) ) )
      | ( ( sub @ sK627 @ id )
       != sK627 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ( sP16 != $true )
        & ! [X227: term,X229: subst,X230: term] :
            ( ( sub @ X227 @ ( push @ X230 @ X229 ) )
            = ( sK628 @ X227 @ X229 @ X230 ) )
        & ! [X231: term] :
            ( ( sub @ X231 @ id )
            = X231 ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj1 = $true )
      | ( ( ( ap @ ( sub @ sK632 @ id ) @ sK630 )
          = ( ap @ ( sub @ sK629 @ id ) @ sK631 ) )
        & ( sK629 != sK632 ) ) )
    & ( ! [X236: term,X237: term,X238: term,X239: term] :
          ( ( ( ap @ ( sub @ X236 @ id ) @ X238 )
           != ( ap @ ( sub @ X239 @ id ) @ X237 ) )
          | ( X236 = X239 ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( hoasinduction_gthm = $true )
    & ( ( substmonoid = $true )
      | ( sK633
       != ( comp @ sK633 @ id ) )
      | ( ( comp @ id @ sK634 )
       != sK634 ) )
    & ( ( ! [X242: subst] :
            ( ( comp @ X242 @ id )
            = X242 )
        & ! [X243: subst] :
            ( ( comp @ id @ X243 )
            = X243 ) )
      | ( substmonoid != $true ) )
    & ( axmap = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( $true = sP14 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP14 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( sP12 != $true ) )
    & ( ( sP12 = $true )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ! [X247: term > $o] :
          ( ( X247 @ ( sK638 @ X247 ) )
         != ( sK636 @ ( sub @ ( sK638 @ X247 ) @ ( push @ sK635 @ sK637 ) ) ) ) )
    & ( ! [X249: term,X250: term > $o,X251: subst,X253: term] :
          ( ( sK639 @ X251 @ X250 @ X249 @ X253 )
          = ( X250 @ ( sub @ X253 @ ( push @ X249 @ X251 ) ) ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( axidl = $true )
      | ( sK640
       != ( comp @ id @ sK640 ) ) )
    & ( ! [X255: subst] :
          ( ( comp @ id @ X255 )
          = X255 )
      | ( axidl != $true ) )
    & ( ( $true = sP10 )
      | ( sK641
       != ( sub @ sK641 @ id ) )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ( $true != sP10 )
        & ! [X257: term] :
            ( ( sub @ X257 @ id )
            = X257 ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP6 ) )
    & ( ( $true = sP6 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( axshiftcons = $true )
      | ( ( comp @ sh @ ( push @ sK642 @ sK643 ) )
       != sK643 ) )
    & ( ! [X260: term,X261: subst] :
          ( ( comp @ sh @ ( push @ X260 @ X261 ) )
          = X261 )
      | ( axshiftcons != $true ) )
    & ( induction2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ! [X262: term] :
        ( ( d2term @ ( sK644 @ X262 ) )
        = X262 )
    & ( ( $true = sP3 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP3 ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( axclos = $true ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK642,sK643,sK644])],[f669,f744,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682,f681,f680,f679,f678,f677,f676,f675,f674,f673,f672,f671,f670]) ).

thf(f670,plain,
    ! [X0: subst > term > subst > $o] :
      ( ? [X1: term > $o] :
        ! [X2: term] :
          ( ( X1 @ X2 )
          = ( X0 @ id @ X2 @ id ) )
     => ! [X2: term] :
          ( ( sK516 @ X0 @ X2 )
          = ( X0 @ id @ X2 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f672,plain,
    ! [X5: term > $o] :
      ( ? [X6: term] :
          ( ( sK517 @ id @ X6 @ id )
         != ( X5 @ X6 ) )
     => ( ( X5 @ ( sK518 @ X5 ) )
       != ( sK517 @ id @ ( sK518 @ X5 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f674,plain,
    ( ? [X9: term] :
        ( ( sub @ X9 @ id )
       != X9 )
   => ( sK520
     != ( sub @ sK520 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f675,plain,
    ( ? [X12: term,X13: subst,X14: term > $o,X15: term,X16: term > $o] :
        ( ( $true
         != ( X16 @ ( sub @ X15 @ ( push @ X12 @ X13 ) ) ) )
        & ( $true
          = ( X14 @ X15 ) ) )
   => ( ( $true
       != ( sK525 @ ( sub @ sK524 @ ( push @ sK521 @ sK522 ) ) ) )
      & ( $true
        = ( sK523 @ sK524 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f678,plain,
    ! [X28: subst,X29: term > $o,X30: term,X31: term > $o] :
      ( ? [X32: term] :
          ( ( X31 @ X32 )
         != ( X29 @ ( sub @ X32 @ ( push @ X30 @ X28 ) ) ) )
     => ( ( X29 @ ( sub @ ( sK530 @ X31 @ X30 @ X29 @ X28 ) @ ( push @ X30 @ X28 ) ) )
       != ( X31 @ ( sK530 @ X31 @ X30 @ X29 @ X28 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f679,plain,
    ( ? [X33: subst,X34: term > $o,X35: term,X36: term > $o] :
        ( ( $true
          = ( X34 @ X35 ) )
        & ( $true
         != ( X36 @ one ) )
        & ! [X37: term] :
            ( ( X34 @ ( sub @ X37 @ ( push @ X35 @ X33 ) ) )
            = ( X36 @ X37 ) ) )
   => ( ( $true
        = ( sK532 @ sK533 ) )
      & ( ( sK534 @ one )
       != $true )
      & ! [X37: term] :
          ( ( sK532 @ ( sub @ X37 @ ( push @ sK533 @ sK531 ) ) )
          = ( sK534 @ X37 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f680,plain,
    ( ? [X38: subst > term > subst > $o,X39: term] :
        ( ( $true
         != ( sP85 @ X38 ) )
        & ( $true
         != ( sP84 @ X38 ) )
        & ( $true
         != ( X38 @ id @ X39 @ id ) ) )
   => ( ( $true
       != ( sP85 @ sK535 ) )
      & ( $true
       != ( sP84 @ sK535 ) )
      & ( $true
       != ( sK535 @ id @ sK536 @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f681,plain,
    ( ? [X42: term,X43: term] :
        ( ( ( sub @ X43 @ sh )
          = ( sub @ X42 @ sh ) )
        & ( X42 != X43 ) )
   => ( ( ( sub @ sK538 @ sh )
        = ( sub @ sK537 @ sh ) )
      & ( sK538 != sK537 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f682,plain,
    ( ? [X48: term,X49: term,X50: term,X51: term] :
        ( ( X49 != X51 )
        & ( ( ap @ X50 @ X49 )
          = ( ap @ X48 @ X51 ) ) )
   => ( ( sK540 != sK542 )
      & ( ( ap @ sK541 @ sK540 )
        = ( ap @ sK539 @ sK542 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f684,plain,
    ( ? [X62: term,X63: term,X64: term,X65: term] :
        ( ( ( ap @ ( sub @ X62 @ id ) @ X64 )
          = ( ap @ ( sub @ X65 @ id ) @ X63 ) )
        & ( X63 != X64 ) )
   => ( ( ( ap @ ( sub @ sK547 @ id ) @ sK545 )
        = ( ap @ ( sub @ sK544 @ id ) @ sK546 ) )
      & ( sK546 != sK545 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f685,plain,
    ! [X68: term] :
      ( ? [X69: subst > term > term] :
        ! [X70: term,X71: subst] :
          ( ( X69 @ X71 @ X70 )
          = ( sub @ X68 @ ( push @ X70 @ X71 ) ) )
     => ! [X71: subst,X70: term] :
          ( ( sK548 @ X68 @ X71 @ X70 )
          = ( sub @ X68 @ ( push @ X70 @ X71 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f686,plain,
    ( ? [X72: term] :
      ! [X73: subst > term > term] :
      ? [X74: term,X75: subst] :
        ( ( X73 @ X75 @ X74 )
       != ( sub @ X72 @ ( push @ X74 @ X75 ) ) )
   => ! [X73: subst > term > term] :
      ? [X75: subst,X74: term] :
        ( ( sub @ sK549 @ ( push @ X74 @ X75 ) )
       != ( X73 @ X75 @ X74 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f687,plain,
    ! [X73: subst > term > term] :
      ( ? [X75: subst,X74: term] :
          ( ( sub @ sK549 @ ( push @ X74 @ X75 ) )
         != ( X73 @ X75 @ X74 ) )
     => ( ( sub @ sK549 @ ( push @ ( sK550 @ X73 ) @ ( sK551 @ X73 ) ) )
       != ( X73 @ ( sK551 @ X73 ) @ ( sK550 @ X73 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f688,plain,
    ( ? [X76: term,X77: subst] :
        ( ( sub @ one @ ( push @ X76 @ X77 ) )
       != X76 )
   => ( ( sub @ one @ ( push @ sK552 @ sK553 ) )
     != sK552 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f690,plain,
    ( ? [X79: term,X80: subst] :
        ( ( comp @ sh @ ( push @ X79 @ X80 ) )
       != X80 )
   => ( sK556
     != ( comp @ sh @ ( push @ sK555 @ sK556 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f691,plain,
    ( ? [X86: subst,X87: term > $o,X88: term,X89: term,X90: term > $o] :
        ( ( $true
          = ( X90 @ X89 ) )
        & ( $true
         != ( X87 @ ( sub @ X89 @ ( push @ X88 @ X86 ) ) ) ) )
   => ( ( $true
        = ( sK561 @ sK560 ) )
      & ( $true
       != ( sK558 @ ( sub @ sK560 @ ( push @ sK559 @ sK557 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f692,plain,
    ( ? [X98: subst,X99: term] :
        ( ( sub @ one @ ( push @ X99 @ X98 ) )
       != X99 )
   => ( sK563
     != ( sub @ one @ ( push @ sK563 @ sK562 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f693,plain,
    ( ? [X102: term,X103: term > $o,X104: term > $o,X105: subst] :
        ( ! [X106: term] :
            ( ( X103 @ X106 )
            = ( X104 @ ( sub @ X106 @ ( push @ X102 @ X105 ) ) ) )
        & ( $true
          = ( X104 @ X102 ) )
        & ( $true
         != ( X103 @ one ) ) )
   => ( ! [X106: term] :
          ( ( sK566 @ ( sub @ X106 @ ( push @ sK564 @ sK567 ) ) )
          = ( sK565 @ X106 ) )
      & ( $true
        = ( sK566 @ sK564 ) )
      & ( $true
       != ( sK565 @ one ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f694,plain,
    ( ? [X107: term,X108: subst] :
        ( ( sub @ one @ ( push @ X107 @ X108 ) )
       != X107 )
   => ( ( sub @ one @ ( push @ sK568 @ sK569 ) )
     != sK568 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f695,plain,
    ! [X109: term,X110: term > $o,X111: term > $o,X112: subst] :
      ( ? [X113: term] :
          ( ( X110 @ X113 )
         != ( X111 @ ( sub @ X113 @ ( push @ X109 @ X112 ) ) ) )
     => ( ( X111 @ ( sub @ ( sK570 @ X112 @ X111 @ X110 @ X109 ) @ ( push @ X109 @ X112 ) ) )
       != ( X110 @ ( sK570 @ X112 @ X111 @ X110 @ X109 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f696,plain,
    ( ? [X118: term,X119: term,X120: term,X121: term] :
        ( ( X119 != X120 )
        & ( ( ap @ X120 @ X121 )
          = ( ap @ X119 @ X118 ) ) )
   => ( ( sK573 != sK572 )
      & ( ( ap @ sK573 @ sK574 )
        = ( ap @ sK572 @ sK571 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f697,plain,
    ! [X124: subst > term > term] :
      ( ? [X126: term,X127: subst,X128: subst] :
          ( ( X124 @ ( comp @ X128 @ X127 ) @ ( sub @ X126 @ X127 ) )
         != ( sub @ ( X124 @ X128 @ X126 ) @ X127 ) )
     => ( ( X124 @ ( comp @ ( sK577 @ X124 ) @ ( sK576 @ X124 ) ) @ ( sub @ ( sK575 @ X124 ) @ ( sK576 @ X124 ) ) )
       != ( sub @ ( X124 @ ( sK577 @ X124 ) @ ( sK575 @ X124 ) ) @ ( sK576 @ X124 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f698,plain,
    ! [X122: subst > term > term] :
      ( ? [X129: subst,X130: term,X131: subst] :
          ( ( X122 @ ( comp @ X131 @ X129 ) @ ( sub @ X130 @ X129 ) )
         != ( sub @ ( X122 @ X131 @ X130 ) @ X129 ) )
     => ( ( sub @ ( X122 @ ( sK580 @ X122 ) @ ( sK579 @ X122 ) ) @ ( sK578 @ X122 ) )
       != ( X122 @ ( comp @ ( sK580 @ X122 ) @ ( sK578 @ X122 ) ) @ ( sub @ ( sK579 @ X122 ) @ ( sK578 @ X122 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f699,plain,
    ( ? [X132: subst > term > term,X133: subst,X134: subst > term > term,X135: term] :
        ( ! [X136: term,X137: subst,X138: subst] :
            ( ( X134 @ ( comp @ X138 @ X137 ) @ ( sub @ X136 @ X137 ) )
            = ( sub @ ( X134 @ X138 @ X136 ) @ X137 ) )
        & ( ( lam @ ( X134 @ sh @ one ) )
          = ( lam @ ( X132 @ sh @ one ) ) )
        & ( ( X132 @ X133 @ X135 )
         != ( X134 @ X133 @ X135 ) )
        & ! [X139: subst,X140: term,X141: subst] :
            ( ( X132 @ ( comp @ X141 @ X139 ) @ ( sub @ X140 @ X139 ) )
            = ( sub @ ( X132 @ X141 @ X140 ) @ X139 ) ) )
   => ( ! [X138: subst,X137: subst,X136: term] :
          ( ( sK583 @ ( comp @ X138 @ X137 ) @ ( sub @ X136 @ X137 ) )
          = ( sub @ ( sK583 @ X138 @ X136 ) @ X137 ) )
      & ( ( lam @ ( sK581 @ sh @ one ) )
        = ( lam @ ( sK583 @ sh @ one ) ) )
      & ( ( sK583 @ sK582 @ sK584 )
       != ( sK581 @ sK582 @ sK584 ) )
      & ! [X141: subst,X140: term,X139: subst] :
          ( ( sub @ ( sK581 @ X141 @ X140 ) @ X139 )
          = ( sK581 @ ( comp @ X141 @ X139 ) @ ( sub @ X140 @ X139 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f700,plain,
    ( ? [X142: term] :
      ! [X143: subst > term > term] :
      ? [X144: term,X145: subst] :
        ( ( sub @ X142 @ ( push @ X144 @ X145 ) )
       != ( X143 @ X145 @ X144 ) )
   => ! [X143: subst > term > term] :
      ? [X145: subst,X144: term] :
        ( ( X143 @ X145 @ X144 )
       != ( sub @ sK585 @ ( push @ X144 @ X145 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f701,plain,
    ! [X143: subst > term > term] :
      ( ? [X145: subst,X144: term] :
          ( ( X143 @ X145 @ X144 )
         != ( sub @ sK585 @ ( push @ X144 @ X145 ) ) )
     => ( ( X143 @ ( sK587 @ X143 ) @ ( sK586 @ X143 ) )
       != ( sub @ sK585 @ ( push @ ( sK586 @ X143 ) @ ( sK587 @ X143 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f702,plain,
    ! [X146: term] :
      ( ? [X147: subst > term > term] :
        ! [X148: term,X149: subst] :
          ( ( sub @ X146 @ ( push @ X148 @ X149 ) )
          = ( X147 @ X149 @ X148 ) )
     => ! [X149: subst,X148: term] :
          ( ( sub @ X146 @ ( push @ X148 @ X149 ) )
          = ( sK588 @ X146 @ X149 @ X148 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f703,plain,
    ! [X151: subst > term > term] :
      ( ? [X154: term,X155: subst,X156: subst] :
          ( ( sub @ ( X151 @ X156 @ X154 ) @ X155 )
         != ( X151 @ ( comp @ X156 @ X155 ) @ ( sub @ X154 @ X155 ) ) )
     => ( ( sub @ ( X151 @ ( sK591 @ X151 ) @ ( sK589 @ X151 ) ) @ ( sK590 @ X151 ) )
       != ( X151 @ ( comp @ ( sK591 @ X151 ) @ ( sK590 @ X151 ) ) @ ( sub @ ( sK589 @ X151 ) @ ( sK590 @ X151 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f704,plain,
    ( ? [X157: subst > term > term,X158: term,X159: term] :
        ( ( ( lam @ ( X157 @ sh @ one ) )
          = ( ap @ ( sub @ X159 @ id ) @ X158 ) )
        & ! [X160: term,X161: subst,X162: subst] :
            ( ( X157 @ ( comp @ X162 @ X161 ) @ ( sub @ X160 @ X161 ) )
            = ( sub @ ( X157 @ X162 @ X160 ) @ X161 ) ) )
   => ( ( ( lam @ ( sK592 @ sh @ one ) )
        = ( ap @ ( sub @ sK594 @ id ) @ sK593 ) )
      & ! [X162: subst,X161: subst,X160: term] :
          ( ( sK592 @ ( comp @ X162 @ X161 ) @ ( sub @ X160 @ X161 ) )
          = ( sub @ ( sK592 @ X162 @ X160 ) @ X161 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f705,plain,
    ( ? [X163: term] :
        ( ( sub @ X163 @ id )
       != X163 )
   => ( ( sub @ sK595 @ id )
     != sK595 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f708,plain,
    ( ? [X169: subst] :
        ( ( push @ ( sub @ one @ X169 ) @ ( comp @ sh @ X169 ) )
       != X169 )
   => ( sK598
     != ( push @ ( sub @ one @ sK598 ) @ ( comp @ sh @ sK598 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f709,plain,
    ( ? [X171: term] :
      ! [X172: subst > term > term] :
        ( ( X172 @ sh @ one )
       != ( sub @ X171 @ ( push @ one @ sh ) ) )
   => ! [X172: subst > term > term] :
        ( ( X172 @ sh @ one )
       != ( sub @ sK599 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f710,plain,
    ! [X173: term] :
      ( ? [X174: subst > term > term] :
          ( ( X174 @ sh @ one )
          = ( sub @ X173 @ ( push @ one @ sh ) ) )
     => ( ( sK600 @ X173 @ sh @ one )
        = ( sub @ X173 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f711,plain,
    ! [X175: subst,X176: term > $o,X177: term] :
      ( ? [X178: term > $o] :
        ! [X179: term] :
          ( ( X176 @ ( sub @ X179 @ ( push @ X177 @ X175 ) ) )
          = ( X178 @ X179 ) )
     => ! [X179: term] :
          ( ( sK601 @ X177 @ X176 @ X175 @ X179 )
          = ( X176 @ ( sub @ X179 @ ( push @ X177 @ X175 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f712,plain,
    ( ? [X180: subst,X181: term > $o,X182: term] :
      ! [X183: term > $o] :
      ? [X184: term] :
        ( ( X181 @ ( sub @ X184 @ ( push @ X182 @ X180 ) ) )
       != ( X183 @ X184 ) )
   => ! [X183: term > $o] :
      ? [X184: term] :
        ( ( sK603 @ ( sub @ X184 @ ( push @ sK604 @ sK602 ) ) )
       != ( X183 @ X184 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f713,plain,
    ! [X183: term > $o] :
      ( ? [X184: term] :
          ( ( sK603 @ ( sub @ X184 @ ( push @ sK604 @ sK602 ) ) )
         != ( X183 @ X184 ) )
     => ( ( X183 @ ( sK605 @ X183 ) )
       != ( sK603 @ ( sub @ ( sK605 @ X183 ) @ ( push @ sK604 @ sK602 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f714,plain,
    ( ? [X186: term] :
        ( ( sub @ X186 @ id )
       != X186 )
   => ( ( sub @ sK606 @ id )
     != sK606 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f717,plain,
    ! [X191: term > $o] :
      ( ? [X192: term] :
          ( ( X191 @ X192 )
         != ( sK608 @ id @ X192 @ id ) )
     => ( ( X191 @ ( sK609 @ X191 ) )
       != ( sK608 @ id @ ( sK609 @ X191 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f718,plain,
    ( ? [X193: term] :
        ( ( sub @ X193 @ id )
       != X193 )
   => ( sK610
     != ( sub @ sK610 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f719,plain,
    ! [X195: subst] :
      ( ? [X196: d_subst] :
          ( ( d2subst @ X196 )
          = X195 )
     => ( ( d2subst @ ( sK611 @ X195 ) )
        = X195 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f720,plain,
    ! [X197: term] :
      ( ? [X198: subst > term > term] :
          ( ( sub @ X197 @ ( push @ one @ sh ) )
          = ( X198 @ sh @ one ) )
     => ( ( sub @ X197 @ ( push @ one @ sh ) )
        = ( sK612 @ X197 @ sh @ one ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f722,plain,
    ( ? [X201: subst > term > subst > $o] :
      ! [X202: term > $o] :
      ? [X203: term] :
        ( ( X201 @ id @ X203 @ id )
       != ( X202 @ X203 ) )
   => ! [X202: term > $o] :
      ? [X203: term] :
        ( ( sK614 @ id @ X203 @ id )
       != ( X202 @ X203 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f723,plain,
    ! [X202: term > $o] :
      ( ? [X203: term] :
          ( ( sK614 @ id @ X203 @ id )
         != ( X202 @ X203 ) )
     => ( ( sK614 @ id @ ( sK615 @ X202 ) @ id )
       != ( X202 @ ( sK615 @ X202 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f724,plain,
    ! [X204: subst > term > subst > $o] :
      ( ? [X205: term > $o] :
        ! [X206: term] :
          ( ( X204 @ id @ X206 @ id )
          = ( X205 @ X206 ) )
     => ! [X206: term] :
          ( ( sK616 @ X204 @ X206 )
          = ( X204 @ id @ X206 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f725,plain,
    ( ? [X208: subst > term > subst > $o] :
      ! [X209: term > $o] :
      ? [X210: term] :
        ( ( X209 @ X210 )
       != ( X208 @ id @ X210 @ id ) )
   => ! [X209: term > $o] :
      ? [X210: term] :
        ( ( sK617 @ id @ X210 @ id )
       != ( X209 @ X210 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f726,plain,
    ! [X209: term > $o] :
      ( ? [X210: term] :
          ( ( sK617 @ id @ X210 @ id )
         != ( X209 @ X210 ) )
     => ( ( X209 @ ( sK618 @ X209 ) )
       != ( sK617 @ id @ ( sK618 @ X209 ) @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f728,plain,
    ! [X212: subst > term > subst > $o] :
      ( ? [X213: term > $o] :
        ! [X214: term] :
          ( ( X213 @ X214 )
          = ( X212 @ id @ X214 @ id ) )
     => ! [X214: term] :
          ( ( sK620 @ X212 @ X214 )
          = ( X212 @ id @ X214 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f729,plain,
    ( ? [X218: term,X219: term] :
        ( ( ( lam @ X218 )
          = ( lam @ X219 ) )
        & ( X218 != X219 ) )
   => ( ( ( lam @ sK622 )
        = ( lam @ sK621 ) )
      & ( sK622 != sK621 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f730,plain,
    ( ? [X221: term] :
        ( ( sub @ X221 @ id )
       != X221 )
   => ( sK623
     != ( sub @ sK623 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f732,plain,
    ! [X223: subst > term > term] :
      ( ? [X225: term,X224: subst] :
          ( ( X223 @ X224 @ X225 )
         != ( sub @ sK624 @ ( push @ X225 @ X224 ) ) )
     => ( ( sub @ sK624 @ ( push @ ( sK626 @ X223 ) @ ( sK625 @ X223 ) ) )
       != ( X223 @ ( sK625 @ X223 ) @ ( sK626 @ X223 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

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

thf(f735,plain,
    ( ? [X232: term,X233: term,X234: term,X235: term] :
        ( ( ( ap @ ( sub @ X235 @ id ) @ X233 )
          = ( ap @ ( sub @ X232 @ id ) @ X234 ) )
        & ( X232 != X235 ) )
   => ( ( ( ap @ ( sub @ sK632 @ id ) @ sK630 )
        = ( ap @ ( sub @ sK629 @ id ) @ sK631 ) )
      & ( sK629 != sK632 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f736,plain,
    ( ? [X240: subst] :
        ( ( comp @ X240 @ id )
       != X240 )
   => ( sK633
     != ( comp @ sK633 @ id ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f738,plain,
    ( ? [X244: term,X245: term > $o,X246: subst] :
      ! [X247: term > $o] :
      ? [X248: term] :
        ( ( X247 @ X248 )
       != ( X245 @ ( sub @ X248 @ ( push @ X244 @ X246 ) ) ) )
   => ! [X247: term > $o] :
      ? [X248: term] :
        ( ( X247 @ X248 )
       != ( sK636 @ ( sub @ X248 @ ( push @ sK635 @ sK637 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f739,plain,
    ! [X247: term > $o] :
      ( ? [X248: term] :
          ( ( X247 @ X248 )
         != ( sK636 @ ( sub @ X248 @ ( push @ sK635 @ sK637 ) ) ) )
     => ( ( X247 @ ( sK638 @ X247 ) )
       != ( sK636 @ ( sub @ ( sK638 @ X247 ) @ ( push @ sK635 @ sK637 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f740,plain,
    ! [X249: term,X250: term > $o,X251: subst] :
      ( ? [X252: term > $o] :
        ! [X253: term] :
          ( ( X252 @ X253 )
          = ( X250 @ ( sub @ X253 @ ( push @ X249 @ X251 ) ) ) )
     => ! [X253: term] :
          ( ( sK639 @ X251 @ X250 @ X249 @ X253 )
          = ( X250 @ ( sub @ X253 @ ( push @ X249 @ X251 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f741,plain,
    ( ? [X254: subst] :
        ( ( comp @ id @ X254 )
       != X254 )
   => ( sK640
     != ( comp @ id @ sK640 ) ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f743,plain,
    ( ? [X258: term,X259: subst] :
        ( ( comp @ sh @ ( push @ X258 @ X259 ) )
       != X259 )
   => ( ( comp @ sh @ ( push @ sK642 @ sK643 ) )
     != sK643 ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f744,plain,
    ! [X262: term] :
      ( ? [X263: d_term] :
          ( ( d2term @ X263 )
          = X262 )
     => ( ( d2term @ ( sK644 @ X262 ) )
        = X262 ) ),
    introduced(definition,[],[choice_axiom]) ).

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

thf(f668,plain,
    ( ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP108 )
        & ( $true != sP107 )
        & ! [X10: subst > term > subst > $o] :
          ? [X11: term > $o] :
          ! [X12: term] :
            ( ( X11 @ X12 )
            = ( X10 @ id @ X12 @ id ) )
        & ( $true != sP106 )
        & ! [X20: term] :
            ( ( sub @ X20 @ id )
            = X20 ) ) )
    & ( ( $true = sP108 )
      | ( $true = sP107 )
      | ? [X10: subst > term > subst > $o] :
        ! [X11: term > $o] :
        ? [X12: term] :
          ( ( X11 @ X12 )
         != ( X10 @ id @ X12 @ id ) )
      | ( $true = sP106 )
      | ? [X20: term] :
          ( ( sub @ X20 @ id )
         != X20 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X159: term] :
            ( ( sub @ X159 @ id )
            = X159 )
        & ( $true != sP98 )
        & ( $true != sP99 ) ) )
    & ( ? [X159: term] :
          ( ( sub @ X159 @ id )
         != X159 )
      | ( $true = sP98 )
      | ( $true = sP99 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X494: subst,X495: term] :
            ( ( sub @ one @ ( push @ X495 @ X494 ) )
            = X495 )
        & ? [X498: term,X499: subst,X500: term > $o,X501: term,X502: term > $o] :
            ( ( $true
             != ( X502 @ ( sub @ X501 @ ( push @ X498 @ X499 ) ) ) )
            & ( $true
              = ( X500 @ X501 ) ) )
        & ! [X496: subst,X497: term] :
            ( ( comp @ sh @ ( push @ X497 @ X496 ) )
            = X496 ) ) )
    & ( ? [X494: subst,X495: term] :
          ( ( sub @ one @ ( push @ X495 @ X494 ) )
         != X495 )
      | ! [X498: term,X499: subst,X500: term > $o,X501: term,X502: term > $o] :
          ( ( $true
            = ( X502 @ ( sub @ X501 @ ( push @ X498 @ X499 ) ) ) )
          | ( $true
           != ( X500 @ X501 ) ) )
      | ? [X496: subst,X497: term] :
          ( ( comp @ sh @ ( push @ X497 @ X496 ) )
         != X496 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X52: subst,X53: term > $o,X54: term,X55: term > $o] :
          ( ( $true
           != ( X53 @ X54 ) )
          | ( $true
            = ( X55 @ one ) )
          | ? [X56: term] :
              ( ( X53 @ ( sub @ X56 @ ( push @ X54 @ X52 ) ) )
             != ( X55 @ X56 ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X52: subst,X53: term > $o,X54: term,X55: term > $o] :
          ( ( $true
            = ( X53 @ X54 ) )
          & ( $true
           != ( X55 @ one ) )
          & ! [X56: term] :
              ( ( X53 @ ( sub @ X56 @ ( push @ X54 @ X52 ) ) )
              = ( X55 @ X56 ) ) ) )
    & ( hoasapnotvar = $true )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP90 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP90 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X466: subst > term > subst > $o,X467: term] :
          ( ( $true
           != ( sP85 @ X466 ) )
          & ( $true
           != ( sP84 @ X466 ) )
          & ( $true
           != ( X466 @ id @ X467 @ id ) ) ) )
    & ( ! [X466: subst > term > subst > $o,X467: term] :
          ( ( $true
            = ( sP85 @ X466 ) )
          | ( $true
            = ( sP84 @ X466 ) )
          | ( $true
            = ( X466 @ id @ X467 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( shinj = $true )
      | ? [X266: term,X267: term] :
          ( ( ( sub @ X266 @ sh )
            = ( sub @ X267 @ sh ) )
          & ( X266 != X267 ) ) )
    & ( ! [X266: term,X267: term] :
          ( ( ( sub @ X266 @ sh )
           != ( sub @ X267 @ sh ) )
          | ( X266 = X267 ) )
      | ( shinj != $true ) )
    & ( ulamvarind = $true )
    & ! [X44: d_subst,X45: d_subst] :
        ( ( ( d2subst @ X44 )
         != ( d2subst @ X45 ) )
        | ( X44 = X45 ) )
    & ( ( apinj2 = $true )
      | ? [X344: term,X345: term,X346: term,X347: term] :
          ( ( X345 != X347 )
          & ( ( ap @ X344 @ X347 )
            = ( ap @ X346 @ X345 ) ) ) )
    & ( ! [X344: term,X345: term,X346: term,X347: term] :
          ( ( X345 = X347 )
          | ( ( ap @ X344 @ X347 )
           != ( ap @ X346 @ X345 ) ) )
      | ( apinj2 != $true ) )
    & ( ( $true = sP83 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP83 ) )
    & ( axapp = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP81 )
        & ( $true != sP80 )
        & ! [X249: term] :
            ( ( sub @ X249 @ id )
            = X249 ) ) )
    & ( ( $true = sP81 )
      | ( $true = sP80 )
      | ? [X249: term] :
          ( ( sub @ X249 @ id )
         != X249 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X462: term,X463: term,X464: term,X465: term] :
          ( ( ( ap @ ( sub @ X462 @ id ) @ X464 )
           != ( ap @ ( sub @ X465 @ id ) @ X463 ) )
          | ( X463 = X464 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X462: term,X463: term,X464: term,X465: term] :
          ( ( ( ap @ ( sub @ X462 @ id ) @ X464 )
            = ( ap @ ( sub @ X465 @ id ) @ X463 ) )
          & ( X463 != X464 ) ) )
    & ! [X459: d_term,X460: d_term] :
        ( ( ( d2term @ X459 )
         != ( d2term @ X460 ) )
        | ( X459 = X460 ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X48: term] :
        ? [X49: subst > term > term] :
        ! [X50: term,X51: subst] :
          ( ( sub @ X48 @ ( push @ X50 @ X51 ) )
          = ( X49 @ X51 @ X50 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X48: term] :
        ! [X49: subst > term > term] :
        ? [X50: term,X51: subst] :
          ( ( sub @ X48 @ ( push @ X50 @ X51 ) )
         != ( X49 @ X51 @ X50 ) ) )
    & ( termmset_gthm = $true )
    & ( ? [X475: term,X476: subst] :
          ( ( sub @ one @ ( push @ X475 @ X476 ) )
         != X475 )
      | ? [X479: subst] :
          ( ( comp @ X479 @ id )
         != X479 )
      | ? [X477: term,X478: subst] :
          ( ( comp @ sh @ ( push @ X477 @ X478 ) )
         != X478 )
      | ( $true = sP76 )
      | ( $true = sP77 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X475: term,X476: subst] :
            ( ( sub @ one @ ( push @ X475 @ X476 ) )
            = X475 )
        & ! [X479: subst] :
            ( ( comp @ X479 @ id )
            = X479 )
        & ! [X477: term,X478: subst] :
            ( ( comp @ sh @ ( push @ X477 @ X478 ) )
            = X478 )
        & ( $true != sP76 )
        & ( $true != sP77 ) ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X424: subst,X425: term > $o,X426: term,X427: term,X428: term > $o] :
          ( ( $true
            = ( X428 @ X427 ) )
          & ( $true
           != ( X425 @ ( sub @ X427 @ ( push @ X426 @ X424 ) ) ) ) ) )
    & ( ! [X424: subst,X425: term > $o,X426: term,X427: term,X428: term > $o] :
          ( ( $true
           != ( X428 @ X427 ) )
          | ( $true
            = ( X425 @ ( sub @ X427 @ ( push @ X426 @ X424 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( axabs = $true )
    & ( ! [X523: subst,X524: term] :
          ( ( sub @ one @ ( push @ X524 @ X523 ) )
          = X524 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X523: subst,X524: term] :
          ( ( sub @ one @ ( push @ X524 @ X523 ) )
         != X524 ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ! [X416: term,X417: subst] :
            ( ( sub @ one @ ( push @ X416 @ X417 ) )
            = X416 )
        & ? [X418: term,X419: term > $o,X420: term > $o,X421: subst] :
            ( ! [X422: term] :
                ( ( X420 @ ( sub @ X422 @ ( push @ X418 @ X421 ) ) )
                = ( X419 @ X422 ) )
            & ( $true
              = ( X420 @ X418 ) )
            & ( $true
             != ( X419 @ one ) ) ) ) )
    & ( ? [X416: term,X417: subst] :
          ( ( sub @ one @ ( push @ X416 @ X417 ) )
         != X416 )
      | ! [X418: term,X419: term > $o,X420: term > $o,X421: subst] :
          ( ? [X422: term] :
              ( ( X420 @ ( sub @ X422 @ ( push @ X418 @ X421 ) ) )
             != ( X419 @ X422 ) )
          | ( $true
           != ( X420 @ X418 ) )
          | ( $true
            = ( X419 @ one ) ) )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( $true = sP71 )
      | ( $true = sP70 )
      | ( $true = sP69 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP71 )
        & ( $true != sP70 )
        & ( $true != sP69 )
        & ( $true != sP68 ) ) )
    & ( lamnotvar = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ! [X155: term,X156: term,X157: term,X158: term] :
          ( ( X156 = X157 )
          | ( ( ap @ X156 @ X155 )
           != ( ap @ X157 @ X158 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X155: term,X156: term,X157: term,X158: term] :
          ( ( X156 != X157 )
          & ( ( ap @ X156 @ X155 )
            = ( ap @ X157 @ X158 ) ) ) )
    & ( ! [X145: subst > term > term,X146: subst,X147: subst > term > term,X148: term] :
          ( ? [X152: term,X153: subst,X154: subst] :
              ( ( X147 @ ( comp @ X154 @ X153 ) @ ( sub @ X152 @ X153 ) )
             != ( sub @ ( X147 @ X154 @ X152 ) @ X153 ) )
          | ( ( lam @ ( X147 @ sh @ one ) )
           != ( lam @ ( X145 @ sh @ one ) ) )
          | ( ( X147 @ X146 @ X148 )
            = ( X145 @ X146 @ X148 ) )
          | ? [X149: subst,X150: term,X151: subst] :
              ( ( sub @ ( X145 @ X151 @ X150 ) @ X149 )
             != ( X145 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X145: subst > term > term,X146: subst,X147: subst > term > term,X148: term] :
          ( ! [X152: term,X153: subst,X154: subst] :
              ( ( X147 @ ( comp @ X154 @ X153 ) @ ( sub @ X152 @ X153 ) )
              = ( sub @ ( X147 @ X154 @ X152 ) @ X153 ) )
          & ( ( lam @ ( X147 @ sh @ one ) )
            = ( lam @ ( X145 @ sh @ one ) ) )
          & ( ( X147 @ X146 @ X148 )
           != ( X145 @ X146 @ X148 ) )
          & ! [X149: subst,X150: term,X151: subst] :
              ( ( sub @ ( X145 @ X151 @ X150 ) @ X149 )
              = ( X145 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) ) ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP56 ) )
    & ( ( $true = sP56 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X445: term] :
        ! [X446: subst > term > term] :
        ? [X447: term,X448: subst] :
          ( ( X446 @ X448 @ X447 )
         != ( sub @ X445 @ ( push @ X447 @ X448 ) ) ) )
    & ( ! [X445: term] :
        ? [X446: subst > term > term] :
        ! [X447: term,X448: subst] :
          ( ( X446 @ X448 @ X447 )
          = ( sub @ X445 @ ( push @ X447 @ X448 ) ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ! [X132: d_term] : ( d_one = X132 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ! [X368: subst > term > term,X369: term,X370: term] :
          ( ( ( ap @ ( sub @ X370 @ id ) @ X369 )
           != ( lam @ ( X368 @ sh @ one ) ) )
          | ? [X371: term,X372: subst,X373: subst] :
              ( ( X368 @ ( comp @ X373 @ X372 ) @ ( sub @ X371 @ X372 ) )
             != ( sub @ ( X368 @ X373 @ X371 ) @ X372 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X368: subst > term > term,X369: term,X370: term] :
          ( ( ( ap @ ( sub @ X370 @ id ) @ X369 )
            = ( lam @ ( X368 @ sh @ one ) ) )
          & ! [X371: term,X372: subst,X373: subst] :
              ( ( X368 @ ( comp @ X373 @ X372 ) @ ( sub @ X371 @ X372 ) )
              = ( sub @ ( X368 @ X373 @ X371 ) @ X372 ) ) ) )
    & ( hoaslamnotvar = $true )
    & ( ? [X0: term] :
          ( ( sub @ X0 @ id )
         != X0 )
      | ! [X1: term] :
          ( ( sub @ X1 @ id )
          = X1 )
      | ( termmset_lthm != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X0: term] :
            ( ( sub @ X0 @ id )
            = X0 )
        & ? [X1: term] :
            ( ( sub @ X1 @ id )
           != X1 ) ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( apnotvar = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( ( axidr = $true )
      | ? [X269: subst] :
          ( ( comp @ X269 @ id )
         != X269 ) )
    & ( ! [X269: subst] :
          ( ( comp @ X269 @ id )
          = X269 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( axscons = $true )
      | ? [X268: subst] :
          ( ( push @ ( sub @ one @ X268 ) @ ( comp @ sh @ X268 ) )
         != X268 ) )
    & ( ! [X268: subst] :
          ( ( push @ ( sub @ one @ X268 ) @ ( comp @ sh @ X268 ) )
          = X268 )
      | ( axscons != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( axvarshift = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X130: term] :
        ! [X131: subst > term > term] :
          ( ( X131 @ sh @ one )
         != ( sub @ X130 @ ( push @ one @ sh ) ) ) )
    & ( ! [X130: term] :
        ? [X131: subst > term > term] :
          ( ( X131 @ sh @ one )
          = ( sub @ X130 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( $true = sP48 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP48 ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( induction2 = $true )
      | ( $true != sP47 ) )
    & ( ( $true = sP47 )
      | ( induction2 != $true ) )
    & ( lamnotap != $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X535: subst,X536: term > $o,X537: term] :
        ? [X538: term > $o] :
        ! [X539: term] :
          ( ( X538 @ X539 )
          = ( X536 @ ( sub @ X539 @ ( push @ X537 @ X535 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X535: subst,X536: term > $o,X537: term] :
        ! [X538: term > $o] :
        ? [X539: term] :
          ( ( X538 @ X539 )
         != ( X536 @ ( sub @ X539 @ ( push @ X537 @ X535 ) ) ) ) )
    & ( ! [X461: term] :
          ( ( sub @ X461 @ id )
          = X461 )
      | ( axvarid != $true ) )
    & ( ( axvarid = $true )
      | ? [X461: term] :
          ( ( sub @ X461 @ id )
         != X461 ) )
    & ( ! [X270: subst > term > subst > $o] :
        ? [X271: term > $o] :
        ! [X272: term] :
          ( ( X270 @ id @ X272 @ id )
          = ( X271 @ X272 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X270: subst > term > subst > $o] :
        ! [X271: term > $o] :
        ? [X272: term] :
          ( ( X270 @ id @ X272 @ id )
         != ( X271 @ X272 ) ) )
    & ( ( sP43 = $true )
      | ? [X328: term] :
          ( ( sub @ X328 @ id )
         != X328 )
      | ( $true = sP44 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( sP43 != $true )
        & ! [X328: term] :
            ( ( sub @ X328 @ id )
            = X328 )
        & ( $true != sP44 ) ) )
    & ! [X396: subst] :
      ? [X397: d_subst] :
        ( ( d2subst @ X397 )
        = X396 )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop = $true )
    & ( ! [X40: term] :
        ? [X41: subst > term > term] :
          ( ( sub @ X40 @ ( push @ one @ sh ) )
          = ( X41 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X40: term] :
        ! [X41: subst > term > term] :
          ( ( sub @ X40 @ ( push @ one @ sh ) )
         != ( X41 @ sh @ one ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X429: subst > term > subst > $o] :
        ! [X430: term > $o] :
        ? [X431: term] :
          ( ( X429 @ id @ X431 @ id )
         != ( X430 @ X431 ) ) )
    & ( ! [X429: subst > term > subst > $o] :
        ? [X430: term > $o] :
        ! [X431: term] :
          ( ( X429 @ id @ X431 @ id )
          = ( X430 @ X431 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ! [X273: d_subst] : ( d_id = X273 )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP31 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP31 ) )
    & ( ? [X194: subst > term > subst > $o] :
        ! [X195: term > $o] :
        ? [X196: term] :
          ( ( X194 @ id @ X196 @ id )
         != ( X195 @ X196 ) )
      | ? [X204: term] :
          ( ( sub @ X204 @ id )
         != X204 )
      | ( $true = sP27 )
      | ( $true = sP29 )
      | ( $true = sP28 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X194: subst > term > subst > $o] :
          ? [X195: term > $o] :
          ! [X196: term] :
            ( ( X194 @ id @ X196 @ id )
            = ( X195 @ X196 ) )
        & ! [X204: term] :
            ( ( sub @ X204 @ id )
            = X204 )
        & ( $true != sP27 )
        & ( $true != sP29 )
        & ( $true != sP28 ) ) )
    & ( ( induction2lem = $true )
      | ( $true != sP19 ) )
    & ( ( $true = sP19 )
      | ( induction2lem != $true ) )
    & ( ! [X46: term,X47: term] :
          ( ( ( lam @ X47 )
           != ( lam @ X46 ) )
          | ( X46 = X47 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X46: term,X47: term] :
          ( ( ( lam @ X47 )
            = ( lam @ X46 ) )
          & ( X46 != X47 ) ) )
    & ( ! [X184: term] :
          ( ( sub @ X184 @ id )
          = X184 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 ) )
    & ( ( sP16 = $true )
      | ? [X381: term] :
        ! [X382: subst > term > term] :
        ? [X383: subst,X384: term] :
          ( ( sub @ X381 @ ( push @ X384 @ X383 ) )
         != ( X382 @ X383 @ X384 ) )
      | ? [X385: term] :
          ( ( sub @ X385 @ id )
         != X385 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ( sP16 != $true )
        & ! [X381: term] :
          ? [X382: subst > term > term] :
          ! [X383: subst,X384: term] :
            ( ( sub @ X381 @ ( push @ X384 @ X383 ) )
            = ( X382 @ X383 @ X384 ) )
        & ! [X385: term] :
            ( ( sub @ X385 @ id )
            = X385 ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj1 = $true )
      | ? [X133: term,X134: term,X135: term,X136: term] :
          ( ( ( ap @ ( sub @ X133 @ id ) @ X135 )
            = ( ap @ ( sub @ X136 @ id ) @ X134 ) )
          & ( X133 != X136 ) ) )
    & ( ! [X133: term,X134: term,X135: term,X136: term] :
          ( ( ( ap @ ( sub @ X133 @ id ) @ X135 )
           != ( ap @ ( sub @ X136 @ id ) @ X134 ) )
          | ( X133 = X136 ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( hoasinduction_gthm = $true )
    & ( ( substmonoid = $true )
      | ? [X534: subst] :
          ( ( comp @ X534 @ id )
         != X534 )
      | ? [X533: subst] :
          ( ( comp @ id @ X533 )
         != X533 ) )
    & ( ( ! [X534: subst] :
            ( ( comp @ X534 @ id )
            = X534 )
        & ! [X533: subst] :
            ( ( comp @ id @ X533 )
            = X533 ) )
      | ( substmonoid != $true ) )
    & ( axmap = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( $true = sP14 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP14 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( sP12 != $true ) )
    & ( ( sP12 = $true )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ? [X348: term,X349: term > $o,X350: subst] :
        ! [X351: term > $o] :
        ? [X352: term] :
          ( ( X349 @ ( sub @ X352 @ ( push @ X348 @ X350 ) ) )
         != ( X351 @ X352 ) ) )
    & ( ! [X348: term,X349: term > $o,X350: subst] :
        ? [X351: term > $o] :
        ! [X352: term] :
          ( ( X349 @ ( sub @ X352 @ ( push @ X348 @ X350 ) ) )
          = ( X351 @ X352 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( axidl = $true )
      | ? [X423: subst] :
          ( ( comp @ id @ X423 )
         != X423 ) )
    & ( ! [X423: subst] :
          ( ( comp @ id @ X423 )
          = X423 )
      | ( axidl != $true ) )
    & ( ( $true = sP10 )
      | ? [X111: term] :
          ( ( sub @ X111 @ id )
         != X111 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ( $true != sP10 )
        & ! [X111: term] :
            ( ( sub @ X111 @ id )
            = X111 ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP6 ) )
    & ( ( $true = sP6 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X414: term,X415: subst] :
          ( ( comp @ sh @ ( push @ X414 @ X415 ) )
         != X415 ) )
    & ( ! [X414: term,X415: subst] :
          ( ( comp @ sh @ ( push @ X414 @ X415 ) )
          = X415 )
      | ( axshiftcons != $true ) )
    & ( induction2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ! [X42: term] :
      ? [X43: d_term] :
        ( ( d2term @ X43 )
        = X42 )
    & ( ( $true = sP3 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP3 ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( axclos = $true ) ),
    inference(flattening,[status(thm)],[f667]) ).

thf(f667,plain,
    ( ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
      | ( ( $true != sP108 )
        & ( $true != sP107 )
        & ! [X10: subst > term > subst > $o] :
          ? [X11: term > $o] :
          ! [X12: term] :
            ( ( X11 @ X12 )
            = ( X10 @ id @ X12 @ id ) )
        & ( $true != sP106 )
        & ! [X20: term] :
            ( ( sub @ X20 @ id )
            = X20 ) ) )
    & ( ( $true = sP108 )
      | ( $true = sP107 )
      | ? [X10: subst > term > subst > $o] :
        ! [X11: term > $o] :
        ? [X12: term] :
          ( ( X11 @ X12 )
         != ( X10 @ id @ X12 @ id ) )
      | ( $true = sP106 )
      | ? [X20: term] :
          ( ( sub @ X20 @ id )
         != X20 )
      | ( hoasinduction_no_psi_cond_lthm != $true ) )
    & ( ( hoasinduction_lem3_lthm = $true )
      | ( ! [X159: term] :
            ( ( sub @ X159 @ id )
            = X159 )
        & ( $true != sP98 )
        & ( $true != sP99 ) ) )
    & ( ? [X159: term] :
          ( ( sub @ X159 @ id )
         != X159 )
      | ( $true = sP98 )
      | ( $true = sP99 )
      | ( hoasinduction_lem3_lthm != $true ) )
    & ( ( pushprop_lem1_lthm = $true )
      | ( ! [X494: subst,X495: term] :
            ( ( sub @ one @ ( push @ X495 @ X494 ) )
            = X495 )
        & ? [X498: term,X499: subst,X500: term > $o,X501: term,X502: term > $o] :
            ( ( $true
             != ( X502 @ ( sub @ X501 @ ( push @ X498 @ X499 ) ) ) )
            & ( $true
              = ( X500 @ X501 ) ) )
        & ! [X496: subst,X497: term] :
            ( ( comp @ sh @ ( push @ X497 @ X496 ) )
            = X496 ) ) )
    & ( ? [X494: subst,X495: term] :
          ( ( sub @ one @ ( push @ X495 @ X494 ) )
         != X495 )
      | ! [X498: term,X499: subst,X500: term > $o,X501: term,X502: term > $o] :
          ( ( $true
            = ( X502 @ ( sub @ X501 @ ( push @ X498 @ X499 ) ) ) )
          | ( $true
           != ( X500 @ X501 ) ) )
      | ? [X496: subst,X497: term] :
          ( ( comp @ sh @ ( push @ X497 @ X496 ) )
         != X496 )
      | ( pushprop_lem1_lthm != $true ) )
    & ( ! [X52: subst,X53: term > $o,X54: term,X55: term > $o] :
          ( ( $true
           != ( X53 @ X54 ) )
          | ( $true
            = ( X55 @ one ) )
          | ? [X56: term] :
              ( ( X53 @ ( sub @ X56 @ ( push @ X54 @ X52 ) ) )
             != ( X55 @ X56 ) ) )
      | ( pushprop_lem1v2 != $true ) )
    & ( ( pushprop_lem1v2 = $true )
      | ? [X52: subst,X53: term > $o,X54: term,X55: term > $o] :
          ( ( $true
            = ( X53 @ X54 ) )
          & ( $true
           != ( X55 @ one ) )
          & ! [X56: term] :
              ( ( X53 @ ( sub @ X56 @ ( push @ X54 @ X52 ) ) )
              = ( X55 @ X56 ) ) ) )
    & ( hoasapnotvar = $true )
    & ( ( $true = sP93 )
      | ( hoasinduction_lem2v2 != $true ) )
    & ( ( hoasinduction_lem2v2 = $true )
      | ( $true != sP93 ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP90 )
      | ( hoasinduction != $true ) )
    & ( ( hoasinduction = $true )
      | ( $true != sP90 ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
      | ? [X466: subst > term > subst > $o,X467: term] :
          ( ( $true
           != ( sP85 @ X466 ) )
          & ( $true
           != ( sP84 @ X466 ) )
          & ( $true
           != ( X466 @ id @ X467 @ id ) ) ) )
    & ( ! [X466: subst > term > subst > $o,X467: term] :
          ( ( $true
            = ( sP85 @ X466 ) )
          | ( $true
            = ( sP84 @ X466 ) )
          | ( $true
            = ( X466 @ id @ X467 @ id ) ) )
      | ( hoasinduction_no_psi_cond != $true ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( shinj = $true )
      | ? [X266: term,X267: term] :
          ( ( ( sub @ X266 @ sh )
            = ( sub @ X267 @ sh ) )
          & ( X266 != X267 ) ) )
    & ( ! [X266: term,X267: term] :
          ( ( ( sub @ X266 @ sh )
           != ( sub @ X267 @ sh ) )
          | ( X266 = X267 ) )
      | ( shinj != $true ) )
    & ( ulamvarind = $true )
    & ! [X44: d_subst,X45: d_subst] :
        ( ( ( d2subst @ X44 )
         != ( d2subst @ X45 ) )
        | ( X44 = X45 ) )
    & ( ( apinj2 = $true )
      | ? [X344: term,X345: term,X346: term,X347: term] :
          ( ( X345 != X347 )
          & ( ( ap @ X344 @ X347 )
            = ( ap @ X346 @ X345 ) ) ) )
    & ( ! [X344: term,X345: term,X346: term,X347: term] :
          ( ( X345 = X347 )
          | ( ( ap @ X344 @ X347 )
           != ( ap @ X346 @ X345 ) ) )
      | ( apinj2 != $true ) )
    & ( ( $true = sP83 )
      | ( hoasinduction_lem3aa != $true ) )
    & ( ( hoasinduction_lem3aa = $true )
      | ( $true != sP83 ) )
    & ( axapp = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
      | ( ( $true != sP81 )
        & ( $true != sP80 )
        & ! [X249: term] :
            ( ( sub @ X249 @ id )
            = X249 ) ) )
    & ( ( $true = sP81 )
      | ( $true = sP80 )
      | ? [X249: term] :
          ( ( sub @ X249 @ id )
         != X249 )
      | ( hoasinduction_lem3a_lthm != $true ) )
    & ( ! [X462: term,X463: term,X464: term,X465: term] :
          ( ( ( ap @ ( sub @ X462 @ id ) @ X464 )
           != ( ap @ ( sub @ X465 @ id ) @ X463 ) )
          | ( X463 = X464 ) )
      | ( hoasapinj2 != $true ) )
    & ( ( hoasapinj2 = $true )
      | ? [X462: term,X463: term,X464: term,X465: term] :
          ( ( ( ap @ ( sub @ X462 @ id ) @ X464 )
            = ( ap @ ( sub @ X465 @ id ) @ X463 ) )
          & ( X463 != X464 ) ) )
    & ! [X459: d_term,X460: d_term] :
        ( ( ( d2term @ X459 )
         != ( d2term @ X460 ) )
        | ( X459 = X460 ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X48: term] :
        ? [X49: subst > term > term] :
        ! [X50: term,X51: subst] :
          ( ( sub @ X48 @ ( push @ X50 @ X51 ) )
          = ( X49 @ X51 @ X50 ) )
      | ( hoasinduction_lem3v2_f_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_f_lthm = $true )
      | ? [X48: term] :
        ! [X49: subst > term > term] :
        ? [X50: term,X51: subst] :
          ( ( sub @ X48 @ ( push @ X50 @ X51 ) )
         != ( X49 @ X51 @ X50 ) ) )
    & ( termmset_gthm = $true )
    & ( ? [X475: term,X476: subst] :
          ( ( sub @ one @ ( push @ X475 @ X476 ) )
         != X475 )
      | ? [X479: subst] :
          ( ( comp @ X479 @ id )
         != X479 )
      | ? [X477: term,X478: subst] :
          ( ( comp @ sh @ ( push @ X477 @ X478 ) )
         != X478 )
      | ( $true = sP76 )
      | ( $true = sP77 )
      | ( induction2lem_lthm != $true ) )
    & ( ( induction2lem_lthm = $true )
      | ( ! [X475: term,X476: subst] :
            ( ( sub @ one @ ( push @ X475 @ X476 ) )
            = X475 )
        & ! [X479: subst] :
            ( ( comp @ X479 @ id )
            = X479 )
        & ! [X477: term,X478: subst] :
            ( ( comp @ sh @ ( push @ X477 @ X478 ) )
            = X478 )
        & ( $true != sP76 )
        & ( $true != sP77 ) ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( pushprop_lem1 = $true )
      | ? [X424: subst,X425: term > $o,X426: term,X427: term,X428: term > $o] :
          ( ( $true
            = ( X428 @ X427 ) )
          & ( $true
           != ( X425 @ ( sub @ X427 @ ( push @ X426 @ X424 ) ) ) ) ) )
    & ( ! [X424: subst,X425: term > $o,X426: term,X427: term,X428: term > $o] :
          ( ( $true
           != ( X428 @ X427 ) )
          | ( $true
            = ( X425 @ ( sub @ X427 @ ( push @ X426 @ X424 ) ) ) ) )
      | ( pushprop_lem1 != $true ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( axabs = $true )
    & ( ! [X523: subst,X524: term] :
          ( ( sub @ one @ ( push @ X524 @ X523 ) )
          = X524 )
      | ( axvarcons != $true ) )
    & ( ( axvarcons = $true )
      | ? [X523: subst,X524: term] :
          ( ( sub @ one @ ( push @ X524 @ X523 ) )
         != X524 ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
      | ( ! [X416: term,X417: subst] :
            ( ( sub @ one @ ( push @ X416 @ X417 ) )
            = X416 )
        & ? [X418: term,X419: term > $o,X420: term > $o,X421: subst] :
            ( ! [X422: term] :
                ( ( X420 @ ( sub @ X422 @ ( push @ X418 @ X421 ) ) )
                = ( X419 @ X422 ) )
            & ( $true
              = ( X420 @ X418 ) )
            & ( $true
             != ( X419 @ one ) ) ) ) )
    & ( ? [X416: term,X417: subst] :
          ( ( sub @ one @ ( push @ X416 @ X417 ) )
         != X416 )
      | ! [X418: term,X419: term > $o,X420: term > $o,X421: subst] :
          ( ? [X422: term] :
              ( ( X420 @ ( sub @ X422 @ ( push @ X418 @ X421 ) ) )
             != ( X419 @ X422 ) )
          | ( $true
           != ( X420 @ X418 ) )
          | ( $true
            = ( X419 @ one ) ) )
      | ( pushprop_lem1v2_lthm != $true ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( $true = sP71 )
      | ( $true = sP70 )
      | ( $true = sP69 )
      | ( $true = sP68 )
      | ( hoasinduction_lthm != $true ) )
    & ( ( hoasinduction_lthm = $true )
      | ( ( $true != sP71 )
        & ( $true != sP70 )
        & ( $true != sP69 )
        & ( $true != sP68 ) ) )
    & ( lamnotvar = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ! [X155: term,X156: term,X157: term,X158: term] :
          ( ( X156 = X157 )
          | ( ( ap @ X156 @ X155 )
           != ( ap @ X157 @ X158 ) ) )
      | ( apinj1 != $true ) )
    & ( ( apinj1 = $true )
      | ? [X155: term,X156: term,X157: term,X158: term] :
          ( ( X156 != X157 )
          & ( ( ap @ X156 @ X155 )
            = ( ap @ X157 @ X158 ) ) ) )
    & ( ! [X145: subst > term > term,X146: subst,X147: subst > term > term,X148: term] :
          ( ? [X152: term,X153: subst,X154: subst] :
              ( ( X147 @ ( comp @ X154 @ X153 ) @ ( sub @ X152 @ X153 ) )
             != ( sub @ ( X147 @ X154 @ X152 ) @ X153 ) )
          | ( ( lam @ ( X147 @ sh @ one ) )
           != ( lam @ ( X145 @ sh @ one ) ) )
          | ( ( X147 @ X146 @ X148 )
            = ( X145 @ X146 @ X148 ) )
          | ? [X149: subst,X150: term,X151: subst] :
              ( ( sub @ ( X145 @ X151 @ X150 ) @ X149 )
             != ( X145 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) ) ) )
      | ( hoaslaminj != $true ) )
    & ( ( hoaslaminj = $true )
      | ? [X145: subst > term > term,X146: subst,X147: subst > term > term,X148: term] :
          ( ! [X152: term,X153: subst,X154: subst] :
              ( ( X147 @ ( comp @ X154 @ X153 ) @ ( sub @ X152 @ X153 ) )
              = ( sub @ ( X147 @ X154 @ X152 ) @ X153 ) )
          & ( ( lam @ ( X147 @ sh @ one ) )
            = ( lam @ ( X145 @ sh @ one ) ) )
          & ( ( X147 @ X146 @ X148 )
           != ( X145 @ X146 @ X148 ) )
          & ! [X149: subst,X150: term,X151: subst] :
              ( ( sub @ ( X145 @ X151 @ X150 ) @ X149 )
              = ( X145 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) ) ) ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( hoasinduction_lem3aaa = $true )
      | ( $true != sP56 ) )
    & ( ( $true = sP56 )
      | ( hoasinduction_lem3aaa != $true ) )
    & ( ( hoasinduction_lem3v2_f = $true )
      | ? [X445: term] :
        ! [X446: subst > term > term] :
        ? [X447: term,X448: subst] :
          ( ( X446 @ X448 @ X447 )
         != ( sub @ X445 @ ( push @ X447 @ X448 ) ) ) )
    & ( ! [X445: term] :
        ? [X446: subst > term > term] :
        ! [X447: term,X448: subst] :
          ( ( X446 @ X448 @ X447 )
          = ( sub @ X445 @ ( push @ X447 @ X448 ) ) )
      | ( hoasinduction_lem3v2_f != $true ) )
    & ! [X132: d_term] : ( d_one = X132 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ! [X368: subst > term > term,X369: term,X370: term] :
          ( ( ( ap @ ( sub @ X370 @ id ) @ X369 )
           != ( lam @ ( X368 @ sh @ one ) ) )
          | ? [X371: term,X372: subst,X373: subst] :
              ( ( X368 @ ( comp @ X373 @ X372 ) @ ( sub @ X371 @ X372 ) )
             != ( sub @ ( X368 @ X373 @ X371 ) @ X372 ) ) )
      | ( hoaslamnotap != $true ) )
    & ( ( hoaslamnotap = $true )
      | ? [X368: subst > term > term,X369: term,X370: term] :
          ( ( ( ap @ ( sub @ X370 @ id ) @ X369 )
            = ( lam @ ( X368 @ sh @ one ) ) )
          & ! [X371: term,X372: subst,X373: subst] :
              ( ( X368 @ ( comp @ X373 @ X372 ) @ ( sub @ X371 @ X372 ) )
              = ( sub @ ( X368 @ X373 @ X371 ) @ X372 ) ) ) )
    & ( hoaslamnotvar = $true )
    & ( ? [X0: term] :
          ( ( sub @ X0 @ id )
         != X0 )
      | ! [X1: term] :
          ( ( sub @ X1 @ id )
          = X1 )
      | ( termmset_lthm != $true ) )
    & ( ( termmset_lthm = $true )
      | ( ! [X0: term] :
            ( ( sub @ X0 @ id )
            = X0 )
        & ? [X1: term] :
            ( ( sub @ X1 @ id )
           != X1 ) ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
      | ( sP54 != $true ) )
    & ( ( sP54 = $true )
      | ( hoasinduction_lem3aa_lthm != $true ) )
    & ( apnotvar = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( ( axidr = $true )
      | ? [X269: subst] :
          ( ( comp @ X269 @ id )
         != X269 ) )
    & ( ! [X269: subst] :
          ( ( comp @ X269 @ id )
          = X269 )
      | ( axidr != $true ) )
    & ( ( hoasinduction_lem3a = $true )
      | ( $true != sP52 ) )
    & ( ( $true = sP52 )
      | ( hoasinduction_lem3a != $true ) )
    & ( ( axscons = $true )
      | ? [X268: subst] :
          ( ( push @ ( sub @ one @ X268 ) @ ( comp @ sh @ X268 ) )
         != X268 ) )
    & ( ! [X268: subst] :
          ( ( push @ ( sub @ one @ X268 ) @ ( comp @ sh @ X268 ) )
          = X268 )
      | ( axscons != $true ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( axvarshift = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem3b = $true )
      | ? [X130: term] :
        ! [X131: subst > term > term] :
          ( ( X131 @ sh @ one )
         != ( sub @ X130 @ ( push @ one @ sh ) ) ) )
    & ( ! [X130: term] :
        ? [X131: subst > term > term] :
          ( ( X131 @ sh @ one )
          = ( sub @ X130 @ ( push @ one @ sh ) ) )
      | ( hoasinduction_lem3b != $true ) )
    & ( ( hoasinduction_lem3v2a = $true )
      | ( $true != sP50 ) )
    & ( ( $true = sP50 )
      | ( hoasinduction_lem3v2a != $true ) )
    & ( ( $true = sP48 )
      | ( substmonoid_lthm != $true ) )
    & ( ( substmonoid_lthm = $true )
      | ( $true != sP48 ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( induction2 = $true )
      | ( $true != sP47 ) )
    & ( ( $true = sP47 )
      | ( induction2 != $true ) )
    & ( lamnotap != $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X535: subst,X536: term > $o,X537: term] :
        ? [X538: term > $o] :
        ! [X539: term] :
          ( ( X538 @ X539 )
          = ( X536 @ ( sub @ X539 @ ( push @ X537 @ X535 ) ) ) )
      | ( pushprop_lem0_lthm != $true ) )
    & ( ( pushprop_lem0_lthm = $true )
      | ? [X535: subst,X536: term > $o,X537: term] :
        ! [X538: term > $o] :
        ? [X539: term] :
          ( ( X538 @ X539 )
         != ( X536 @ ( sub @ X539 @ ( push @ X537 @ X535 ) ) ) ) )
    & ( ! [X461: term] :
          ( ( sub @ X461 @ id )
          = X461 )
      | ( axvarid != $true ) )
    & ( ( axvarid = $true )
      | ? [X461: term] :
          ( ( sub @ X461 @ id )
         != X461 ) )
    & ( ! [X270: subst > term > subst > $o] :
        ? [X271: term > $o] :
        ! [X272: term] :
          ( ( X270 @ id @ X272 @ id )
          = ( X271 @ X272 ) )
      | ( hoasinduction_lem0_lthm != $true ) )
    & ( ( hoasinduction_lem0_lthm = $true )
      | ? [X270: subst > term > subst > $o] :
        ! [X271: term > $o] :
        ? [X272: term] :
          ( ( X270 @ id @ X272 @ id )
         != ( X271 @ X272 ) ) )
    & ( ( sP43 = $true )
      | ? [X328: term] :
          ( ( sub @ X328 @ id )
         != X328 )
      | ( $true = sP44 )
      | ( induction2_lthm != $true ) )
    & ( ( induction2_lthm = $true )
      | ( ( sP43 != $true )
        & ! [X328: term] :
            ( ( sub @ X328 @ id )
            = X328 )
        & ( $true != sP44 ) ) )
    & ! [X396: subst] :
      ? [X397: d_subst] :
        ( ( d2subst @ X397 )
        = X396 )
    & ( ( $true = sP38 )
      | ( induction != $true ) )
    & ( ( induction = $true )
      | ( $true != sP38 ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop = $true )
    & ( ! [X40: term] :
        ? [X41: subst > term > term] :
          ( ( sub @ X40 @ ( push @ one @ sh ) )
          = ( X41 @ sh @ one ) )
      | ( hoasinduction_lem3b_lthm != $true ) )
    & ( ( hoasinduction_lem3b_lthm = $true )
      | ? [X40: term] :
        ! [X41: subst > term > term] :
          ( ( sub @ X40 @ ( push @ one @ sh ) )
         != ( X41 @ sh @ one ) ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( hoasinduction_lem0 = $true )
      | ? [X429: subst > term > subst > $o] :
        ! [X430: term > $o] :
        ? [X431: term] :
          ( ( X429 @ id @ X431 @ id )
         != ( X430 @ X431 ) ) )
    & ( ! [X429: subst > term > subst > $o] :
        ? [X430: term > $o] :
        ! [X431: term] :
          ( ( X429 @ id @ X431 @ id )
          = ( X430 @ X431 ) )
      | ( hoasinduction_lem0 != $true ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ! [X273: d_subst] : ( d_id = X273 )
    & ( ( hoasinduction_lem3 = $true )
      | ( $true != sP35 ) )
    & ( ( $true = sP35 )
      | ( hoasinduction_lem3 != $true ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP31 )
      | ( hoaslaminj_lthm != $true ) )
    & ( ( hoaslaminj_lthm = $true )
      | ( $true != sP31 ) )
    & ( ? [X194: subst > term > subst > $o] :
        ! [X195: term > $o] :
        ? [X196: term] :
          ( ( X194 @ id @ X196 @ id )
         != ( X195 @ X196 ) )
      | ? [X204: term] :
          ( ( sub @ X204 @ id )
         != X204 )
      | ( $true = sP27 )
      | ( $true = sP29 )
      | ( $true = sP28 )
      | ( hoasinduction_lthm_3 != $true ) )
    & ( ( hoasinduction_lthm_3 = $true )
      | ( ! [X194: subst > term > subst > $o] :
          ? [X195: term > $o] :
          ! [X196: term] :
            ( ( X194 @ id @ X196 @ id )
            = ( X195 @ X196 ) )
        & ! [X204: term] :
            ( ( sub @ X204 @ id )
            = X204 )
        & ( $true != sP27 )
        & ( $true != sP29 )
        & ( $true != sP28 ) ) )
    & ( ( induction2lem = $true )
      | ( $true != sP19 ) )
    & ( ( $true = sP19 )
      | ( induction2lem != $true ) )
    & ( ! [X46: term,X47: term] :
          ( ( ( lam @ X47 )
           != ( lam @ X46 ) )
          | ( X46 = X47 ) )
      | ( laminj != $true ) )
    & ( ( laminj = $true )
      | ? [X46: term,X47: term] :
          ( ( ( lam @ X47 )
            = ( lam @ X46 ) )
          & ( X46 != X47 ) ) )
    & ( ! [X184: term] :
          ( ( sub @ X184 @ id )
          = X184 )
      | ( termmset != $true ) )
    & ( ( termmset = $true )
      | ? [X184: term] :
          ( ( sub @ X184 @ id )
         != X184 ) )
    & ( ( sP16 = $true )
      | ? [X381: term] :
        ! [X382: subst > term > term] :
        ? [X383: subst,X384: term] :
          ( ( sub @ X381 @ ( push @ X384 @ X383 ) )
         != ( X382 @ X383 @ X384 ) )
      | ? [X385: term] :
          ( ( sub @ X385 @ id )
         != X385 )
      | ( hoasinduction_lem3v2a_lthm != $true ) )
    & ( ( hoasinduction_lem3v2a_lthm = $true )
      | ( ( sP16 != $true )
        & ! [X381: term] :
          ? [X382: subst > term > term] :
          ! [X383: subst,X384: term] :
            ( ( sub @ X381 @ ( push @ X384 @ X383 ) )
            = ( X382 @ X383 @ X384 ) )
        & ! [X385: term] :
            ( ( sub @ X385 @ id )
            = X385 ) ) )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj1 = $true )
      | ? [X133: term,X134: term,X135: term,X136: term] :
          ( ( ( ap @ ( sub @ X133 @ id ) @ X135 )
            = ( ap @ ( sub @ X136 @ id ) @ X134 ) )
          & ( X133 != X136 ) ) )
    & ( ! [X133: term,X134: term,X135: term,X136: term] :
          ( ( ( ap @ ( sub @ X133 @ id ) @ X135 )
           != ( ap @ ( sub @ X136 @ id ) @ X134 ) )
          | ( X133 = X136 ) )
      | ( hoasapinj1 != $true ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( hoasinduction_gthm = $true )
    & ( ( substmonoid = $true )
      | ? [X534: subst] :
          ( ( comp @ X534 @ id )
         != X534 )
      | ? [X533: subst] :
          ( ( comp @ id @ X533 )
         != X533 ) )
    & ( ( ! [X534: subst] :
            ( ( comp @ X534 @ id )
            = X534 )
        & ! [X533: subst] :
            ( ( comp @ id @ X533 )
            = X533 ) )
      | ( substmonoid != $true ) )
    & ( axmap = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( $true = sP14 )
      | ( hoasapinj1_lthm != $true ) )
    & ( ( hoasapinj1_lthm = $true )
      | ( $true != sP14 ) )
    & ( ( hoasapinj2_lthm = $true )
      | ( sP12 != $true ) )
    & ( ( sP12 = $true )
      | ( hoasapinj2_lthm != $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
      | ? [X348: term,X349: term > $o,X350: subst] :
        ! [X351: term > $o] :
        ? [X352: term] :
          ( ( X349 @ ( sub @ X352 @ ( push @ X348 @ X350 ) ) )
         != ( X351 @ X352 ) ) )
    & ( ! [X348: term,X349: term > $o,X350: subst] :
        ? [X351: term > $o] :
        ! [X352: term] :
          ( ( X349 @ ( sub @ X352 @ ( push @ X348 @ X350 ) ) )
          = ( X351 @ X352 ) )
      | ( pushprop_lem0 != $true ) )
    & ( ( axidl = $true )
      | ? [X423: subst] :
          ( ( comp @ id @ X423 )
         != X423 ) )
    & ( ! [X423: subst] :
          ( ( comp @ id @ X423 )
          = X423 )
      | ( axidl != $true ) )
    & ( ( $true = sP10 )
      | ? [X111: term] :
          ( ( sub @ X111 @ id )
         != X111 )
      | ( hoasinduction_lem3v2_lthm != $true ) )
    & ( ( hoasinduction_lem3v2_lthm = $true )
      | ( ( $true != sP10 )
        & ! [X111: term] :
            ( ( sub @ X111 @ id )
            = X111 ) ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true != sP6 ) )
    & ( ( $true = sP6 )
      | ( hoasinduction_lem2 != $true ) )
    & ( ( axshiftcons = $true )
      | ? [X414: term,X415: subst] :
          ( ( comp @ sh @ ( push @ X414 @ X415 ) )
         != X415 ) )
    & ( ! [X414: term,X415: subst] :
          ( ( comp @ sh @ ( push @ X414 @ X415 ) )
          = X415 )
      | ( axshiftcons != $true ) )
    & ( induction2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ! [X42: term] :
      ? [X43: d_term] :
        ( ( d2term @ X43 )
        = X42 )
    & ( ( $true = sP3 )
      | ( hoasinduction_lem3v2 != $true ) )
    & ( ( hoasinduction_lem3v2 = $true )
      | ( $true != sP3 ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( axclos = $true ) ),
    inference(nnf_transformation,[status(thm)],[f124]) ).

thf(f124,plain,
    ( ( hoasinduction_lem1_gthm = $true )
    & ( ( hoasinduction_no_psi_cond_lthm = $true )
    <=> ( ( $true = sP108 )
        | ( $true = sP107 )
        | ? [X10: subst > term > subst > $o] :
          ! [X11: term > $o] :
          ? [X12: term] :
            ( ( X11 @ X12 )
           != ( X10 @ id @ X12 @ id ) )
        | ( $true = sP106 )
        | ? [X20: term] :
            ( ( sub @ X20 @ id )
           != X20 ) ) )
    & ( ( hoasinduction_lem3_lthm = $true )
    <=> ( ? [X159: term] :
            ( ( sub @ X159 @ id )
           != X159 )
        | ( $true = sP98 )
        | ( $true = sP99 ) ) )
    & ( ( pushprop_lem1_lthm = $true )
    <=> ( ? [X494: subst,X495: term] :
            ( ( sub @ one @ ( push @ X495 @ X494 ) )
           != X495 )
        | ! [X498: term,X499: subst,X500: term > $o,X501: term,X502: term > $o] :
            ( ( $true
              = ( X502 @ ( sub @ X501 @ ( push @ X498 @ X499 ) ) ) )
            | ( $true
             != ( X500 @ X501 ) ) )
        | ? [X496: subst,X497: term] :
            ( ( comp @ sh @ ( push @ X497 @ X496 ) )
           != X496 ) ) )
    & ( ! [X52: subst,X53: term > $o,X54: term,X55: term > $o] :
          ( ( $true
           != ( X53 @ X54 ) )
          | ( $true
            = ( X55 @ one ) )
          | ? [X56: term] :
              ( ( X53 @ ( sub @ X56 @ ( push @ X54 @ X52 ) ) )
             != ( X55 @ X56 ) ) )
    <=> ( pushprop_lem1v2 = $true ) )
    & ( hoasapnotvar = $true )
    & ( ( $true = sP93 )
    <=> ( hoasinduction_lem2v2 = $true ) )
    & ( ( d2subst @ d_id )
      = id )
    & ( ( $true = sP90 )
    <=> ( hoasinduction = $true ) )
    & ( hoasinduction_lem3a_gthm = $true )
    & ( hoasinduction_lem1_lthm = $true )
    & ( hoasinduction_lem3b_gthm = $true )
    & ( ( hoasinduction_no_psi_cond = $true )
    <=> ! [X466: subst > term > subst > $o,X467: term] :
          ( ( $true
            = ( sP85 @ X466 ) )
          | ( $true
            = ( sP84 @ X466 ) )
          | ( $true
            = ( X466 @ id @ X467 @ id ) ) ) )
    & ( ulamvar1 != $true )
    & ( ( d2subst @ d_id )
      = ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem3v2_gthm = $true )
    & ( ( d2subst @ d_id )
      = sh )
    & ( ( shinj = $true )
    <=> ! [X266: term,X267: term] :
          ( ( ( sub @ X266 @ sh )
           != ( sub @ X267 @ sh ) )
          | ( X266 = X267 ) ) )
    & ( ulamvarind = $true )
    & ! [X44: d_subst,X45: d_subst] :
        ( ( ( d2subst @ X44 )
         != ( d2subst @ X45 ) )
        | ( X44 = X45 ) )
    & ( ( apinj2 = $true )
    <=> ! [X344: term,X345: term,X346: term,X347: term] :
          ( ( X345 = X347 )
          | ( ( ap @ X344 @ X347 )
           != ( ap @ X346 @ X345 ) ) ) )
    & ( ( $true = sP83 )
    <=> ( hoasinduction_lem3aa = $true ) )
    & ( axapp = $true )
    & ( hoasapnotvar_gthm = $true )
    & ( hoaslamnotap_gthm = $true )
    & ( ( hoasinduction_lem3a_lthm = $true )
    <=> ( ( $true = sP81 )
        | ( $true = sP80 )
        | ? [X249: term] :
            ( ( sub @ X249 @ id )
           != X249 ) ) )
    & ( ! [X462: term,X463: term,X464: term,X465: term] :
          ( ( ( ap @ ( sub @ X462 @ id ) @ X464 )
           != ( ap @ ( sub @ X465 @ id ) @ X463 ) )
          | ( X463 = X464 ) )
    <=> ( hoasapinj2 = $true ) )
    & ! [X459: d_term,X460: d_term] :
        ( ( ( d2term @ X459 )
         != ( d2term @ X460 ) )
        | ( X459 = X460 ) )
    & ( pushprop_lem2v2_lthm = $true )
    & ( ! [X48: term] :
        ? [X49: subst > term > term] :
        ! [X50: term,X51: subst] :
          ( ( sub @ X48 @ ( push @ X50 @ X51 ) )
          = ( X49 @ X51 @ X50 ) )
    <=> ( hoasinduction_lem3v2_f_lthm = $true ) )
    & ( termmset_gthm = $true )
    & ( ( ? [X475: term,X476: subst] :
            ( ( sub @ one @ ( push @ X475 @ X476 ) )
           != X475 )
        | ? [X479: subst] :
            ( ( comp @ X479 @ id )
           != X479 )
        | ? [X477: term,X478: subst] :
            ( ( comp @ sh @ ( push @ X477 @ X478 ) )
           != X478 )
        | ( $true = sP76 )
        | ( $true = sP77 ) )
    <=> ( induction2lem_lthm = $true ) )
    & ( one
      = ( d2term @ d_one ) )
    & ( hoaslamnotap_lthm = $true )
    & ( ( d2term @ d_one )
      = ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) ) )
    & ( ( pushprop_lem1 = $true )
    <=> ! [X424: subst,X425: term > $o,X426: term,X427: term,X428: term > $o] :
          ( ( $true
           != ( X428 @ X427 ) )
          | ( $true
            = ( X425 @ ( sub @ X427 @ ( push @ X426 @ X424 ) ) ) ) ) )
    & ( pushprop_lem0_gthm = $true )
    & ( pushprop_lem2v2 = $true )
    & ( axabs = $true )
    & ( ! [X523: subst,X524: term] :
          ( ( sub @ one @ ( push @ X524 @ X523 ) )
          = X524 )
    <=> ( axvarcons = $true ) )
    & ( pushprop_lem3v2 = $true )
    & ( ( pushprop_lem1v2_lthm = $true )
    <=> ( ? [X416: term,X417: subst] :
            ( ( sub @ one @ ( push @ X416 @ X417 ) )
           != X416 )
        | ! [X418: term,X419: term > $o,X420: term > $o,X421: subst] :
            ( ? [X422: term] :
                ( ( X420 @ ( sub @ X422 @ ( push @ X418 @ X421 ) ) )
               != ( X419 @ X422 ) )
            | ( $true
             != ( X420 @ X418 ) )
            | ( $true
              = ( X419 @ one ) ) ) ) )
    & ( pushprop_p_and_p_prime
      = ( ^ [Y0: term,Y1: subst,Y2: term > $o,Y3: term > $o] :
            ( !! @ term
            @ ^ [Y4: term] :
                ( ( Y3 @ Y4 )
                = ( Y2 @ ( sub @ Y4 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) )
    & ( hoasinduction_lem1 = $true )
    & ( ( var @ ( d2term @ d_one ) )
     != $true )
    & ( ( ( $true = sP71 )
        | ( $true = sP70 )
        | ( $true = sP69 )
        | ( $true = sP68 ) )
    <=> ( hoasinduction_lthm = $true ) )
    & ( lamnotvar = $true )
    & ( hoasapinj1_gthm = $true )
    & ( ! [X155: term,X156: term,X157: term,X158: term] :
          ( ( X156 = X157 )
          | ( ( ap @ X156 @ X155 )
           != ( ap @ X157 @ X158 ) ) )
    <=> ( apinj1 = $true ) )
    & ( ! [X145: subst > term > term,X146: subst,X147: subst > term > term,X148: term] :
          ( ? [X152: term,X153: subst,X154: subst] :
              ( ( X147 @ ( comp @ X154 @ X153 ) @ ( sub @ X152 @ X153 ) )
             != ( sub @ ( X147 @ X154 @ X152 ) @ X153 ) )
          | ( ( lam @ ( X147 @ sh @ one ) )
           != ( lam @ ( X145 @ sh @ one ) ) )
          | ( ( X147 @ X146 @ X148 )
            = ( X145 @ X146 @ X148 ) )
          | ? [X149: subst,X150: term,X151: subst] :
              ( ( sub @ ( X145 @ X151 @ X150 ) @ X149 )
             != ( X145 @ ( comp @ X151 @ X149 ) @ ( sub @ X150 @ X149 ) ) ) )
    <=> ( hoaslaminj = $true ) )
    & ( hoasinduction_lem1v2_gthm = $true )
    & ( ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
     != $true )
    & ( ( hoasinduction_lem3aaa = $true )
    <=> ( $true = sP56 ) )
    & ( ( hoasinduction_lem3v2_f = $true )
    <=> ! [X445: term] :
        ? [X446: subst > term > term] :
        ! [X447: term,X448: subst] :
          ( ( X446 @ X448 @ X447 )
          = ( sub @ X445 @ ( push @ X447 @ X448 ) ) ) )
    & ! [X132: d_term] : ( d_one = X132 )
    & ( ( d2subst @ d_id )
      = ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) ) )
    & ( ! [X368: subst > term > term,X369: term,X370: term] :
          ( ( ( ap @ ( sub @ X370 @ id ) @ X369 )
           != ( lam @ ( X368 @ sh @ one ) ) )
          | ? [X371: term,X372: subst,X373: subst] :
              ( ( X368 @ ( comp @ X373 @ X372 ) @ ( sub @ X371 @ X372 ) )
             != ( sub @ ( X368 @ X373 @ X371 ) @ X372 ) ) )
    <=> ( hoaslamnotap = $true ) )
    & ( hoaslamnotvar = $true )
    & ( ( ? [X0: term] :
            ( ( sub @ X0 @ id )
           != X0 )
        | ! [X1: term] :
            ( ( sub @ X1 @ id )
            = X1 ) )
    <=> ( termmset_lthm = $true ) )
    & ( ( hoasinduction_lem3aa_lthm = $true )
    <=> ( sP54 = $true ) )
    & ( apnotvar = $true )
    & ( pushprop_lem1_gthm = $true )
    & ( ( axidr = $true )
    <=> ! [X269: subst] :
          ( ( comp @ X269 @ id )
          = X269 ) )
    & ( ( hoasinduction_lem3a = $true )
    <=> ( $true = sP52 ) )
    & ( ( axscons = $true )
    <=> ! [X268: subst] :
          ( ( push @ ( sub @ one @ X268 ) @ ( comp @ sh @ X268 ) )
          = X268 ) )
    & ( hoaslamnotvar_gthm = $true )
    & ( induction2lem_gthm = $true )
    & ( axvarshift = $true )
    & ( pushprop_lthm_orig = $true )
    & ( ulamvarsh = $true )
    & ( ( d2term @ d_one )
      = ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) ) )
    & ( ( hoasinduction_lem3b = $true )
    <=> ! [X130: term] :
        ? [X131: subst > term > term] :
          ( ( X131 @ sh @ one )
          = ( sub @ X130 @ ( push @ one @ sh ) ) ) )
    & ( ( hoasinduction_lem3v2a = $true )
    <=> ( $true = sP50 ) )
    & ( ( $true = sP48 )
    <=> ( substmonoid_lthm = $true ) )
    & ( pushprop_lem2v2_gthm = $true )
    & ( hoasinduction_lem3_gthm = $true )
    & ( pushprop_lem3v2_lthm = $true )
    & ( substmonoid_gthm = $true )
    & ( ( induction2 = $true )
    <=> ( $true = sP47 ) )
    & ( lamnotap != $true )
    & ( hoasinduction_lem2_gthm = $true )
    & ( ! [X535: subst,X536: term > $o,X537: term] :
        ? [X538: term > $o] :
        ! [X539: term] :
          ( ( X538 @ X539 )
          = ( X536 @ ( sub @ X539 @ ( push @ X537 @ X535 ) ) ) )
    <=> ( pushprop_lem0_lthm = $true ) )
    & ( ! [X461: term] :
          ( ( sub @ X461 @ id )
          = X461 )
    <=> ( axvarid = $true ) )
    & ( ! [X270: subst > term > subst > $o] :
        ? [X271: term > $o] :
        ! [X272: term] :
          ( ( X270 @ id @ X272 @ id )
          = ( X271 @ X272 ) )
    <=> ( hoasinduction_lem0_lthm = $true ) )
    & ( ( ( sP43 = $true )
        | ? [X328: term] :
            ( ( sub @ X328 @ id )
           != X328 )
        | ( $true = sP44 ) )
    <=> ( induction2_lthm = $true ) )
    & ! [X396: subst] :
      ? [X397: d_subst] :
        ( ( d2subst @ X397 )
        = X396 )
    & ( ( $true = sP38 )
    <=> ( induction = $true ) )
    & ( hoaslam
      = ( ^ [Y0: subst,Y1: subst > term > term] : ( d2term @ d_one ) ) )
    & ( pushprop = $true )
    & ( ! [X40: term] :
        ? [X41: subst > term > term] :
          ( ( sub @ X40 @ ( push @ one @ sh ) )
          = ( X41 @ sh @ one ) )
    <=> ( hoasinduction_lem3b_lthm = $true ) )
    & ( hoasapinj2_gthm = $true )
    & ( ( hoasinduction_lem0 = $true )
    <=> ! [X429: subst > term > subst > $o] :
        ? [X430: term > $o] :
        ! [X431: term] :
          ( ( X429 @ id @ X431 @ id )
          = ( X430 @ X431 ) ) )
    & ( hoasinduction_p_and_p_prime
      = ( ^ [Y0: subst > term > subst > $o,Y1: term > $o] :
            ( !! @ term
            @ ^ [Y2: term] :
                ( ( Y0 @ id @ Y2 @ id )
                = ( Y1 @ Y2 ) ) ) ) )
    & ( pushprop_gthm = $true )
    & ( hoasapnotvar_lthm = $true )
    & ! [X273: d_subst] : ( d_id = X273 )
    & ( ( hoasinduction_lem3 = $true )
    <=> ( $true = sP35 ) )
    & ( ( d2term @ d_one )
      = ( lam @ ( d2term @ d_one ) ) )
    & ( ( $true = sP31 )
    <=> ( hoaslaminj_lthm = $true ) )
    & ( ( ? [X194: subst > term > subst > $o] :
          ! [X195: term > $o] :
          ? [X196: term] :
            ( ( X194 @ id @ X196 @ id )
           != ( X195 @ X196 ) )
        | ? [X204: term] :
            ( ( sub @ X204 @ id )
           != X204 )
        | ( $true = sP27 )
        | ( $true = sP29 )
        | ( $true = sP28 ) )
    <=> ( hoasinduction_lthm_3 = $true ) )
    & ( ( induction2lem = $true )
    <=> ( $true = sP19 ) )
    & ( ! [X46: term,X47: term] :
          ( ( ( lam @ X47 )
           != ( lam @ X46 ) )
          | ( X46 = X47 ) )
    <=> ( laminj = $true ) )
    & ( ! [X184: term] :
          ( ( sub @ X184 @ id )
          = X184 )
    <=> ( termmset = $true ) )
    & ( ( ( sP16 = $true )
        | ? [X381: term] :
          ! [X382: subst > term > term] :
          ? [X383: subst,X384: term] :
            ( ( sub @ X381 @ ( push @ X384 @ X383 ) )
           != ( X382 @ X383 @ X384 ) )
        | ? [X385: term] :
            ( ( sub @ X385 @ id )
           != X385 ) )
    <=> ( hoasinduction_lem3v2a_lthm = $true ) )
    & ( hoaslaminj_gthm = $true )
    & ( ( hoasapinj1 = $true )
    <=> ! [X133: term,X134: term,X135: term,X136: term] :
          ( ( ( ap @ ( sub @ X133 @ id ) @ X135 )
           != ( ap @ ( sub @ X136 @ id ) @ X134 ) )
          | ( X133 = X136 ) ) )
    & ( pushprop_lthm = $true )
    & ( hoasinduction_lem1v2 = $true )
    & ( hoasinduction_gthm = $true )
    & ( ( substmonoid = $true )
    <=> ( ! [X534: subst] :
            ( ( comp @ X534 @ id )
            = X534 )
        & ! [X533: subst] :
            ( ( comp @ id @ X533 )
            = X533 ) ) )
    & ( axmap = $true )
    & ( hoasinduction_lem2v2_gthm = $true )
    & ( ( $true = sP14 )
    <=> ( hoasapinj1_lthm = $true ) )
    & ( ( hoasapinj2_lthm = $true )
    <=> ( sP12 = $true ) )
    & ( ( d2term @ d_one )
      = ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
    & ( hoasinduction_lem2_lthm = $true )
    & ( ( pushprop_lem0 = $true )
    <=> ! [X348: term,X349: term > $o,X350: subst] :
        ? [X351: term > $o] :
        ! [X352: term] :
          ( ( X349 @ ( sub @ X352 @ ( push @ X348 @ X350 ) ) )
          = ( X351 @ X352 ) ) )
    & ( ( axidl = $true )
    <=> ! [X423: subst] :
          ( ( comp @ id @ X423 )
          = X423 ) )
    & ( ( ( $true = sP10 )
        | ? [X111: term] :
            ( ( sub @ X111 @ id )
           != X111 ) )
    <=> ( hoasinduction_lem3v2_lthm = $true ) )
    & ( axassoc = $true )
    & ( ( hoasinduction_lem2 = $true )
    <=> ( $true = sP6 ) )
    & ( ( axshiftcons = $true )
    <=> ! [X414: term,X415: subst] :
          ( ( comp @ sh @ ( push @ X414 @ X415 ) )
          = X415 ) )
    & ( induction2_gthm = $true )
    & ( hoaslamnotvar_lthm = $true )
    & ! [X42: term] :
      ? [X43: d_term] :
        ( ( d2term @ X43 )
        = X42 )
    & ( ( $true = sP3 )
    <=> ( hoasinduction_lem3v2 = $true ) )
    & ( pushprop_lem1v2_gthm = $true )
    & ( axclos = $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,
    ! [X76: subst > term > subst > $o] :
      ( ( $true
        = ( sP0 @ X76 ) )
    <=> ? [X82: subst > term > term] :
          ( ( $true
           != ( X76 @ id @ ( lam @ ( X82 @ sh @ one ) ) @ id ) )
          & ! [X84: term,X85: subst,X86: subst] :
              ( ( X82 @ ( comp @ X86 @ X85 ) @ ( sub @ X84 @ X85 ) )
              = ( sub @ ( X82 @ X86 @ X84 ) @ X85 ) )
          & ! [X83: term] :
              ( ( $true
               != ( X76 @ id @ X83 @ id ) )
              | ( $true
                = ( X76 @ id @ ( X82 @ id @ X83 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f16,plain,
    ! [X76: subst > term > subst > $o] :
      ( ( $true
        = ( sP1 @ X76 ) )
    <=> ? [X78: term,X79: subst,X80: subst,X81: subst] :
          ( ( $true
           != ( X76 @ X79 @ X78 @ ( comp @ X81 @ X80 ) ) )
          & ( $true
            = ( X76 @ ( comp @ X79 @ X81 ) @ ( sub @ X78 @ X81 ) @ X80 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f17,plain,
    ! [X76: subst > term > subst > $o] :
      ( ( $true
        = ( sP2 @ X76 ) )
    <=> ? [X88: subst,X89: subst,X90: term,X91: subst] :
          ( ( $true
            = ( X76 @ X91 @ X90 @ ( comp @ X89 @ X88 ) ) )
          & ( $true
           != ( X76 @ ( comp @ X91 @ X89 ) @ ( sub @ X90 @ X89 ) @ X88 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f18,plain,
    ( ( $true = sP3 )
  <=> ! [X75: term > $o,X76: subst > term > subst > $o,X77: term] :
        ( ? [X92: term] :
            ( ( ( X75 @ ( sub @ X77 @ ( push @ X92 @ id ) ) )
             != $true )
            & ( $true
              = ( X75 @ X92 ) ) )
        | ( $true
          = ( X75 @ ( lam @ X77 ) ) )
        | ( $true
          = ( sP0 @ X76 ) )
        | ? [X87: term] :
            ( ( X75 @ X87 )
           != ( X76 @ id @ X87 @ id ) )
        | ( $true
          = ( sP2 @ X76 ) )
        | ( $true
          = ( sP1 @ X76 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f19,plain,
    ! [X432: subst > term > subst > $o] :
      ( ( $true
        = ( sP4 @ X432 ) )
    <=> ? [X443: term,X444: term] :
          ( ( $true
            = ( X432 @ id @ X443 @ id ) )
          & ( $true
           != ( X432 @ id @ ( ap @ ( sub @ X444 @ id ) @ X443 ) @ id ) )
          & ( $true
            = ( X432 @ id @ X444 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f20,plain,
    ! [X432: subst > term > subst > $o] :
      ( ( $true
        = ( sP5 @ X432 ) )
    <=> ? [X439: subst,X440: subst,X441: subst,X442: term] :
          ( ( $true
            = ( X432 @ ( comp @ X440 @ X441 ) @ ( sub @ X442 @ X441 ) @ X439 ) )
          & ( $true
           != ( X432 @ X440 @ X442 @ ( comp @ X441 @ X439 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f21,plain,
    ( ( $true = sP6 )
  <=> ! [X432: subst > term > subst > $o,X433: term,X434: term] :
        ( ( $true
         != ( X432 @ id @ X434 @ id ) )
        | ? [X435: subst,X436: term,X437: subst,X438: subst] :
            ( ( $true
             != ( X432 @ ( comp @ X438 @ X435 ) @ ( sub @ X436 @ X435 ) @ X437 ) )
            & ( $true
              = ( X432 @ X438 @ X436 @ ( comp @ X435 @ X437 ) ) ) )
        | ( $true
          = ( sP4 @ X432 ) )
        | ( ( X432 @ id @ ( ap @ X433 @ X434 ) @ id )
          = $true )
        | ( $true
          = ( sP5 @ X432 ) )
        | ( $true
         != ( X432 @ id @ X433 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f22,plain,
    ! [X114: subst > term > subst > $o] :
      ( ( $true
        = ( sP7 @ X114 ) )
    <=> ? [X121: subst > term > term] :
          ( ! [X123: subst,X124: subst,X125: term] :
              ( ( X121 @ ( comp @ X123 @ X124 ) @ ( sub @ X125 @ X124 ) )
              = ( sub @ ( X121 @ X123 @ X125 ) @ X124 ) )
          & ! [X122: term] :
              ( ( $true
               != ( X114 @ id @ X122 @ id ) )
              | ( $true
                = ( X114 @ id @ ( X121 @ id @ X122 ) @ id ) ) )
          & ( $true
           != ( X114 @ id @ ( lam @ ( X121 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f24,plain,
    ! [X114: subst > term > subst > $o] :
      ( ( $true
        = ( sP9 @ X114 ) )
    <=> ? [X126: subst,X127: term,X128: subst,X129: subst] :
          ( ( $true
            = ( X114 @ ( comp @ X128 @ X129 ) @ ( sub @ X127 @ X129 ) @ X126 ) )
          & ( $true
           != ( X114 @ X128 @ X127 @ ( comp @ X129 @ X126 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f25,plain,
    ( ( $true = sP10 )
  <=> ! [X112: term > $o,X113: term,X114: subst > term > subst > $o] :
        ( ( $true
          = ( X112 @ ( lam @ X113 ) ) )
        | ? [X120: term] :
            ( ( $true
             != ( X112 @ ( sub @ X113 @ ( push @ X120 @ id ) ) ) )
            & ( $true
              = ( X112 @ X120 ) ) )
        | ( $true
          = ( sP9 @ X114 ) )
        | ( $true
          = ( sP8 @ X114 ) )
        | ? [X115: term] :
            ( ( X114 @ id @ X115 @ id )
           != ( X112 @ X115 ) )
        | ( $true
          = ( sP7 @ X114 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f26,plain,
    ( ( sP11 = $true )
  <=> ! [X507: term,X508: term,X509: term,X510: term] :
        ( ( X508 = X509 )
        | ( ( ap @ ( sub @ X507 @ id ) @ X508 )
         != ( ap @ ( sub @ X510 @ id ) @ X509 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f27,plain,
    ( ( sP12 = $true )
  <=> ( ( sP11 = $true )
      | ? [X503: term,X504: term,X505: term,X506: term] :
          ( ( ( ap @ X505 @ X503 )
            = ( ap @ X506 @ X504 ) )
          & ( X503 != X504 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f28,plain,
    ( ( $true = sP13 )
  <=> ! [X190: term,X191: term,X192: term,X193: term] :
        ( ( ( ap @ ( sub @ X192 @ id ) @ X191 )
         != ( ap @ ( sub @ X190 @ id ) @ X193 ) )
        | ( X190 = X192 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f29,plain,
    ( ( $true = sP14 )
  <=> ( ? [X185: term] :
          ( ( sub @ X185 @ id )
         != X185 )
      | ( $true = sP13 )
      | ? [X186: term,X187: term,X188: term,X189: term] :
          ( ( ( ap @ X187 @ X186 )
            = ( ap @ X189 @ X188 ) )
          & ( X187 != X189 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f30,plain,
    ! [X386: subst > term > subst > $o] :
      ( ( $true
        = ( sP15 @ X386 ) )
    <=> ? [X389: subst > term > term] :
          ( ! [X393: term] :
              ( ( $true
                = ( X386 @ id @ ( X389 @ id @ X393 ) @ id ) )
              | ( $true
               != ( X386 @ id @ X393 @ id ) ) )
          & ( $true
           != ( X386 @ id @ ( lam @ ( X389 @ sh @ one ) ) @ id ) )
          & ! [X390: subst,X391: subst,X392: term] :
              ( ( X389 @ ( comp @ X391 @ X390 ) @ ( sub @ X392 @ X390 ) )
              = ( sub @ ( X389 @ X391 @ X392 ) @ X390 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f31,plain,
    ( ( sP16 = $true )
  <=> ! [X386: subst > term > subst > $o,X387: term > $o,X388: term] :
        ( ( $true
          = ( sP15 @ X386 ) )
        | ? [X394: term] :
            ( ( ( X387 @ X394 )
              = $true )
            & ( ( X387 @ ( sub @ X388 @ ( push @ X394 @ id ) ) )
             != $true ) )
        | ? [X395: term] :
            ( ( X387 @ X395 )
           != ( X386 @ id @ X395 @ id ) )
        | ( $true
          = ( X387 @ ( lam @ X388 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f32,plain,
    ! [X525: term > $o] :
      ( ( $true
        = ( sP17 @ X525 ) )
    <=> ? [X528: term] :
          ( ( $true
           != ( X525 @ ( lam @ X528 ) ) )
          & ! [X529: term] :
              ( ( $true
                = ( X525 @ ( sub @ X528 @ ( push @ X529 @ id ) ) ) )
              | ( $true
               != ( X525 @ X529 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f33,plain,
    ! [X525: term > $o] :
      ( ( $true
        = ( sP18 @ X525 ) )
    <=> ? [X530: term,X531: term] :
          ( ( $true
            = ( X525 @ X531 ) )
          & ( $true
           != ( X525 @ ( ap @ X531 @ X530 ) ) )
          & ( $true
            = ( X525 @ X530 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f34,plain,
    ( ( $true = sP19 )
  <=> ! [X525: term > $o,X526: subst,X527: term] :
        ( ( $true
          = ( sP17 @ X525 ) )
        | ( $true
          = ( X525 @ ( sub @ X527 @ X526 ) ) )
        | ( $true
          = ( sP18 @ X525 ) )
        | ? [X532: term] :
            ( ( $true
             != ( X525 @ ( sub @ X532 @ X526 ) ) )
            & ( $true
              = ( var @ X532 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f35,plain,
    ! [X197: term > $o] :
      ( ( $true
        = ( sP20 @ X197 ) )
    <=> ! [X200: term,X201: term] :
          ( ( $true
            = ( X197 @ ( ap @ X201 @ X200 ) ) )
          | ( $true
           != ( X197 @ X200 ) )
          | ( $true
           != ( X197 @ X201 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f36,plain,
    ! [X197: term > $o] :
      ( ( $true
        = ( sP21 @ X197 ) )
    <=> ! [X202: term] :
          ( ( $true
            = ( X197 @ ( lam @ X202 ) ) )
          | ? [X203: term] :
              ( ( $true
               != ( X197 @ ( sub @ X202 @ ( push @ X203 @ id ) ) ) )
              & ( ( X197 @ X203 )
                = $true ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f38,plain,
    ! [X216: subst > term > subst > $o] :
      ( ( $true
        = ( sP23 @ X216 ) )
    <=> ? [X221: subst > term > term] :
          ( ( $true
           != ( X216 @ id @ ( lam @ ( X221 @ sh @ one ) ) @ id ) )
          & ! [X222: subst,X223: term,X224: subst] :
              ( ( X221 @ ( comp @ X222 @ X224 ) @ ( sub @ X223 @ X224 ) )
              = ( sub @ ( X221 @ X222 @ X223 ) @ X224 ) )
          & ! [X225: term] :
              ( ( $true
                = ( X216 @ id @ ( X221 @ id @ X225 ) @ id ) )
              | ( $true
               != ( X216 @ id @ X225 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

thf(f41,plain,
    ! [X216: subst > term > subst > $o] :
      ( ( $true
        = ( sP26 @ X216 ) )
    <=> ? [X230: term] :
          ( ( $true
           != ( X216 @ id @ X230 @ id ) )
          & ( $true
            = ( var @ ( sub @ X230 @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f42,plain,
    ( ( $true = sP27 )
  <=> ! [X215: term,X216: subst > term > subst > $o] :
        ( ( $true
          = ( X216 @ id @ X215 @ id ) )
        | ( $true
          = ( sP24 @ X216 ) )
        | ? [X226: subst,X227: term,X228: subst,X229: subst] :
            ( ( $true
             != ( X216 @ X229 @ X227 @ ( comp @ X226 @ X228 ) ) )
            & ( $true
              = ( X216 @ ( comp @ X229 @ X226 ) @ ( sub @ X227 @ X226 ) @ X228 ) ) )
        | ( $true
          = ( sP23 @ X216 ) )
        | ( $true
          = ( sP26 @ X216 ) )
        | ( ( sP25 @ X216 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f43,plain,
    ( ( $true = sP28 )
  <=> ? [X197: term > $o,X198: term] :
        ( ! [X199: term] :
            ( ( $true
              = ( X197 @ X199 ) )
            | ( $true
             != ( var @ X199 ) ) )
        & ( $true
         != ( X197 @ X198 ) )
        & ( $true
          = ( sP21 @ X197 ) )
        & ( $true
          = ( sP20 @ X197 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f44,plain,
    ( ( $true = sP29 )
  <=> ? [X205: term > $o,X206: term,X207: subst > term > subst > $o] :
        ( ! [X213: term] :
            ( ( ( X205 @ ( sub @ X206 @ ( push @ X213 @ id ) ) )
              = $true )
            | ( $true
             != ( X205 @ X213 ) ) )
        & ! [X214: term] :
            ( ( X205 @ X214 )
            = ( X207 @ id @ X214 @ id ) )
        & ( $true
          = ( sP22 @ X207 ) )
        & ( $true
         != ( X205 @ ( lam @ X206 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f45,plain,
    ( ( $true = sP30 )
  <=> ! [X404: term,X405: subst > term > term,X406: subst,X407: subst > term > term] :
        ( ( ( X407 @ X406 @ X404 )
          = ( X405 @ X406 @ X404 ) )
        | ( ( lam @ ( X405 @ sh @ one ) )
         != ( lam @ ( X407 @ sh @ one ) ) )
        | ? [X408: subst,X409: term,X410: subst] :
            ( ( X405 @ ( comp @ X410 @ X408 ) @ ( sub @ X409 @ X408 ) )
           != ( sub @ ( X405 @ X410 @ X409 ) @ X408 ) )
        | ? [X411: term,X412: subst,X413: subst] :
            ( ( sub @ ( X407 @ X412 @ X411 ) @ X413 )
           != ( X407 @ ( comp @ X412 @ X413 ) @ ( sub @ X411 @ X413 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f46,plain,
    ( ( $true = sP31 )
  <=> ( ? [X400: term,X401: subst] :
          ( ( comp @ sh @ ( push @ X400 @ X401 ) )
         != X401 )
      | ( $true = sP30 )
      | ? [X402: term,X403: term] :
          ( ( ( lam @ X403 )
            = ( lam @ X402 ) )
          & ( X402 != X403 ) )
      | ? [X398: term,X399: subst] :
          ( ( sub @ one @ ( push @ X398 @ X399 ) )
         != X398 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f47,plain,
    ! [X233: subst > term > subst > $o] :
      ( ( $true
        = ( sP32 @ X233 ) )
    <=> ? [X239: subst > term > term] :
          ( ! [X241: subst,X242: subst,X243: term] :
              ( ( X239 @ ( comp @ X242 @ X241 ) @ ( sub @ X243 @ X241 ) )
              = ( sub @ ( X239 @ X242 @ X243 ) @ X241 ) )
          & ! [X240: term] :
              ( ( $true
                = ( X233 @ id @ ( X239 @ id @ X240 ) @ id ) )
              | ( $true
               != ( X233 @ id @ X240 @ id ) ) )
          & ( $true
           != ( X233 @ id @ ( lam @ ( X239 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f48,plain,
    ! [X233: subst > term > subst > $o] :
      ( ( $true
        = ( sP33 @ X233 ) )
    <=> ? [X235: subst,X236: subst,X237: subst,X238: term] :
          ( ( $true
            = ( X233 @ X236 @ X238 @ ( comp @ X235 @ X237 ) ) )
          & ( $true
           != ( X233 @ ( comp @ X236 @ X235 ) @ ( sub @ X238 @ X235 ) @ X237 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f49,plain,
    ! [X233: subst > term > subst > $o,X234: term] :
      ( ( $true
        = ( sP34 @ X234 @ X233 ) )
    <=> ? [X244: term] :
          ( ( $true
            = ( X233 @ id @ X244 @ id ) )
          & ( $true
           != ( X233 @ id @ ( sub @ X234 @ ( push @ X244 @ id ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f50,plain,
    ( ( $true = sP35 )
  <=> ! [X233: subst > term > subst > $o,X234: term] :
        ( ( $true
          = ( sP32 @ X233 ) )
        | ? [X245: term,X246: subst,X247: subst,X248: subst] :
            ( ( $true
              = ( X233 @ ( comp @ X248 @ X247 ) @ ( sub @ X245 @ X247 ) @ X246 ) )
            & ( $true
             != ( X233 @ X248 @ X245 @ ( comp @ X247 @ X246 ) ) ) )
        | ( $true
          = ( sP34 @ X234 @ X233 ) )
        | ( $true
          = ( sP33 @ X233 ) )
        | ( $true
          = ( X233 @ id @ ( lam @ X234 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f51,plain,
    ! [X57: term > $o] :
      ( ( $true
        = ( sP36 @ X57 ) )
    <=> ? [X61: term,X62: term] :
          ( ( $true
            = ( X57 @ X62 ) )
          & ( $true
           != ( X57 @ ( ap @ X62 @ X61 ) ) )
          & ( $true
            = ( X57 @ X61 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f52,plain,
    ! [X57: term > $o] :
      ( ( $true
        = ( sP37 @ X57 ) )
    <=> ? [X59: term] :
          ( ( $true
            = ( var @ X59 ) )
          & ( $true
           != ( X57 @ X59 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f53,plain,
    ( ( $true = sP38 )
  <=> ! [X57: term > $o,X58: term] :
        ( ? [X60: term] :
            ( ( $true
              = ( X57 @ X60 ) )
            & ( $true
             != ( X57 @ ( lam @ X60 ) ) ) )
        | ( $true
          = ( sP36 @ X57 ) )
        | ( $true
          = ( sP37 @ X57 ) )
        | ( $true
          = ( X57 @ X58 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f54,plain,
    ! [X331: term > $o] :
      ( ( ( sP39 @ X331 )
        = $true )
    <=> ! [X332: term,X333: term] :
          ( ( $true
            = ( X331 @ ( ap @ X332 @ X333 ) ) )
          | ( $true
           != ( X331 @ X332 ) )
          | ( $true
           != ( X331 @ X333 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f55,plain,
    ! [X331: term > $o] :
      ( ( $true
        = ( sP40 @ X331 ) )
    <=> ! [X335: term] :
          ( ? [X336: term] :
              ( ( $true
                = ( X331 @ X336 ) )
              & ( $true
               != ( X331 @ ( sub @ X335 @ ( push @ X336 @ id ) ) ) ) )
          | ( $true
            = ( X331 @ ( lam @ X335 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f56,plain,
    ! [X337: term > $o] :
      ( ( $true
        = ( sP41 @ X337 ) )
    <=> ? [X342: term] :
          ( ( $true
           != ( X337 @ ( lam @ X342 ) ) )
          & ! [X343: term] :
              ( ( $true
                = ( X337 @ ( sub @ X342 @ ( push @ X343 @ id ) ) ) )
              | ( $true
               != ( X337 @ X343 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f57,plain,
    ! [X337: term > $o] :
      ( ( $true
        = ( sP42 @ X337 ) )
    <=> ? [X339: term,X340: term] :
          ( ( $true
            = ( X337 @ X340 ) )
          & ( $true
           != ( X337 @ ( ap @ X339 @ X340 ) ) )
          & ( $true
            = ( X337 @ X339 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f58,plain,
    ( ( sP43 = $true )
  <=> ! [X337: term > $o,X338: term] :
        ( ( $true
          = ( sP41 @ X337 ) )
        | ( $true
          = ( sP42 @ X337 ) )
        | ( $true
          = ( X337 @ X338 ) )
        | ? [X341: term] :
            ( ( $true
             != ( X337 @ X341 ) )
            & ( $true
              = ( var @ X341 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f59,plain,
    ( ( $true = sP44 )
  <=> ? [X329: term,X330: subst,X331: term > $o] :
        ( ( ( sP39 @ X331 )
          = $true )
        & ! [X334: term] :
            ( ( $true
             != ( var @ X334 ) )
            | ( $true
              = ( X331 @ ( sub @ X334 @ X330 ) ) ) )
        & ( ( X331 @ ( sub @ X329 @ X330 ) )
         != $true )
        & ( $true
          = ( sP40 @ X331 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f60,plain,
    ! [X374: term > $o] :
      ( ( $true
        = ( sP45 @ X374 ) )
    <=> ? [X376: term] :
          ( ! [X377: term] :
              ( ( $true
               != ( X374 @ X377 ) )
              | ( $true
                = ( X374 @ ( sub @ X376 @ ( push @ X377 @ id ) ) ) ) )
          & ( $true
           != ( X374 @ ( lam @ X376 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f61,plain,
    ! [X374: term > $o] :
      ( ( $true
        = ( sP46 @ X374 ) )
    <=> ? [X379: term,X380: term] :
          ( ( $true
           != ( X374 @ ( ap @ X380 @ X379 ) ) )
          & ( $true
            = ( X374 @ X379 ) )
          & ( $true
            = ( X374 @ X380 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f62,plain,
    ( ( $true = sP47 )
  <=> ! [X374: term > $o,X375: term] :
        ( ( $true
          = ( sP46 @ X374 ) )
        | ( ( X374 @ X375 )
          = $true )
        | ( $true
          = ( sP45 @ X374 ) )
        | ? [X378: term] :
            ( ( $true
              = ( var @ X378 ) )
            & ( $true
             != ( X374 @ X378 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f63,plain,
    ( ( $true = sP48 )
  <=> ( ? [X72: subst] :
          ( ( comp @ X72 @ id )
         != X72 )
      | ( ! [X73: subst] :
            ( ( comp @ X73 @ id )
            = X73 )
        & ! [X74: subst] :
            ( ( comp @ id @ X74 )
            = X74 ) )
      | ? [X71: subst] :
          ( ( comp @ id @ X71 )
         != X71 ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f65,plain,
    ( ( $true = sP50 )
  <=> ! [X449: term,X450: subst > term > subst > $o,X451: term > $o] :
        ( ( $true
          = ( X451 @ ( lam @ X449 ) ) )
        | ( $true
          = ( sP49 @ X450 ) )
        | ? [X452: term] :
            ( ( X450 @ id @ X452 @ id )
           != ( X451 @ X452 ) )
        | ? [X458: term] :
            ( ( $true
             != ( X451 @ ( sub @ X449 @ ( push @ X458 @ id ) ) ) )
            & ( $true
              = ( X451 @ X458 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

thf(f68,plain,
    ! [X3: subst > term > subst > $o] :
      ( ( $true
        = ( sP53 @ X3 ) )
    <=> ? [X4: subst > term > term] :
          ( ! [X5: term] :
              ( ( $true
               != ( X3 @ id @ X5 @ id ) )
              | ( $true
                = ( X3 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
          & ( ( X3 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id )
           != $true )
          & ! [X6: subst,X7: subst,X8: term] :
              ( ( X4 @ ( comp @ X7 @ X6 ) @ ( sub @ X8 @ X6 ) )
              = ( sub @ ( X4 @ X7 @ X8 ) @ X6 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f69,plain,
    ( ( sP54 = $true )
  <=> ! [X2: term,X3: subst > term > subst > $o] :
        ( ( $true
          = ( sP53 @ X3 ) )
        | ( $true
          = ( X3 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
        | ? [X9: term] :
            ( ( $true
              = ( X3 @ id @ X9 @ id ) )
            & ( $true
             != ( X3 @ id @ ( sub @ X2 @ ( push @ X9 @ id ) ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f71,plain,
    ( ( $true = sP56 )
  <=> ! [X511: term,X512: subst > term > subst > $o] :
        ( ? [X522: term] :
            ( ( ( X512 @ id @ ( sub @ X511 @ ( push @ X522 @ id ) ) @ id )
             != $true )
            & ( $true
              = ( X512 @ id @ X522 @ id ) ) )
        | ( $true
          = ( sP55 @ X512 ) )
        | ( $true
          = ( X512 @ id @ ( lam @ ( sub @ X511 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f73,plain,
    ! [X310: subst > term > subst > $o] :
      ( ( $true
        = ( sP58 @ X310 ) )
    <=> ? [X312: term,X313: term] :
          ( ( $true
           != ( X310 @ id @ ( ap @ ( sub @ X312 @ id ) @ X313 ) @ id ) )
          & ( $true
            = ( X310 @ id @ X313 @ id ) )
          & ( $true
            = ( X310 @ id @ X312 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f74,plain,
    ! [X310: subst > term > subst > $o] :
      ( ( $true
        = ( sP59 @ X310 ) )
    <=> ? [X314: term,X315: subst,X316: subst,X317: subst] :
          ( ( $true
            = ( X310 @ ( comp @ X316 @ X315 ) @ ( sub @ X314 @ X315 ) @ X317 ) )
          & ( $true
           != ( X310 @ X316 @ X314 @ ( comp @ X315 @ X317 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f75,plain,
    ! [X310: subst > term > subst > $o] :
      ( ( $true
        = ( sP60 @ X310 ) )
    <=> ? [X323: term] :
          ( ( $true
            = ( var @ ( sub @ X323 @ id ) ) )
          & ( $true
           != ( X310 @ id @ X323 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f76,plain,
    ! [X294: subst > term > subst > $o] :
      ( ( $true
        = ( sP61 @ X294 ) )
    <=> ! [X301: subst > term > term] :
          ( ? [X303: term,X304: subst,X305: subst] :
              ( ( sub @ ( X301 @ X305 @ X303 ) @ X304 )
             != ( X301 @ ( comp @ X305 @ X304 ) @ ( sub @ X303 @ X304 ) ) )
          | ? [X302: term] :
              ( ( $true
               != ( X294 @ id @ ( X301 @ id @ X302 ) @ id ) )
              & ( $true
                = ( X294 @ id @ X302 @ id ) ) )
          | ( $true
            = ( X294 @ id @ ( lam @ ( X301 @ sh @ one ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f77,plain,
    ! [X294: subst > term > subst > $o] :
      ( ( $true
        = ( sP62 @ X294 ) )
    <=> ! [X297: subst,X298: term,X299: subst,X300: subst] :
          ( ( $true
            = ( X294 @ X300 @ X298 @ ( comp @ X297 @ X299 ) ) )
          | ( ( X294 @ ( comp @ X300 @ X297 ) @ ( sub @ X298 @ X297 ) @ X299 )
           != $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f78,plain,
    ! [X295: term,X294: subst > term > subst > $o] :
      ( ( $true
        = ( sP63 @ X294 @ X295 ) )
    <=> ! [X296: term] :
          ( ( ( X294 @ id @ ( sub @ X295 @ ( push @ X296 @ id ) ) @ id )
            = $true )
          | ( $true
           != ( X294 @ id @ X296 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f79,plain,
    ! [X274: term > $o] :
      ( ( $true
        = ( sP64 @ X274 ) )
    <=> ! [X279: term,X280: term] :
          ( ( $true
           != ( X274 @ X279 ) )
          | ( $true
           != ( X274 @ X280 ) )
          | ( $true
            = ( X274 @ ( ap @ X280 @ X279 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f80,plain,
    ! [X274: term > $o] :
      ( ( $true
        = ( sP65 @ X274 ) )
    <=> ! [X276: term] :
          ( ? [X277: term] :
              ( ( ( X274 @ X277 )
                = $true )
              & ( $true
               != ( X274 @ ( sub @ X276 @ ( push @ X277 @ id ) ) ) ) )
          | ( $true
            = ( X274 @ ( lam @ X276 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f81,plain,
    ! [X283: subst > term > subst > $o] :
      ( ( $true
        = ( sP66 @ X283 ) )
    <=> ! [X284: term,X285: term] :
          ( ( ( X283 @ id @ X284 @ id )
           != $true )
          | ( $true
            = ( X283 @ id @ ( ap @ ( sub @ X285 @ id ) @ X284 ) @ id ) )
          | ( $true
           != ( X283 @ id @ X285 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f82,plain,
    ! [X283: subst > term > subst > $o] :
      ( ( $true
        = ( sP67 @ X283 ) )
    <=> ! [X286: subst,X287: subst,X288: term,X289: subst] :
          ( ( $true
            = ( X283 @ ( comp @ X286 @ X287 ) @ ( sub @ X288 @ X287 ) @ X289 ) )
          | ( $true
           != ( X283 @ X286 @ X288 @ ( comp @ X287 @ X289 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f83,plain,
    ( ( $true = sP68 )
  <=> ! [X310: subst > term > subst > $o,X311: term] :
        ( ? [X324: subst,X325: term,X326: subst,X327: subst] :
            ( ( $true
              = ( X310 @ X326 @ X325 @ ( comp @ X324 @ X327 ) ) )
            & ( $true
             != ( X310 @ ( comp @ X326 @ X324 ) @ ( sub @ X325 @ X324 ) @ X327 ) ) )
        | ( ( sP57 @ X310 )
          = $true )
        | ( $true
          = ( X310 @ id @ X311 @ id ) )
        | ( $true
          = ( sP58 @ X310 ) )
        | ( $true
          = ( sP60 @ X310 ) )
        | ( $true
          = ( sP59 @ X310 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f84,plain,
    ( ( $true = sP69 )
  <=> ? [X294: subst > term > subst > $o,X295: term] :
        ( ! [X306: term,X307: subst,X308: subst,X309: subst] :
            ( ( $true
              = ( X294 @ ( comp @ X308 @ X309 ) @ ( sub @ X306 @ X309 ) @ X307 ) )
            | ( $true
             != ( X294 @ X308 @ X306 @ ( comp @ X309 @ X307 ) ) ) )
        & ( $true
          = ( sP63 @ X294 @ X295 ) )
        & ( $true
         != ( X294 @ id @ ( lam @ X295 ) @ id ) )
        & ( $true
          = ( sP62 @ X294 ) )
        & ( $true
          = ( sP61 @ X294 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f85,plain,
    ( ( $true = sP70 )
  <=> ? [X274: term > $o,X275: term] :
        ( ( $true
         != ( X274 @ X275 ) )
        & ! [X278: term] :
            ( ( $true
              = ( X274 @ X278 ) )
            | ( $true
             != ( var @ X278 ) ) )
        & ( $true
          = ( sP64 @ X274 ) )
        & ( $true
          = ( sP65 @ X274 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f86,plain,
    ( ( $true = sP71 )
  <=> ? [X281: term,X282: term,X283: subst > term > subst > $o] :
        ( ( $true
          = ( sP66 @ X283 ) )
        & ! [X290: term,X291: subst,X292: subst,X293: subst] :
            ( ( $true
             != ( X283 @ ( comp @ X291 @ X292 ) @ ( sub @ X290 @ X292 ) @ X293 ) )
            | ( $true
              = ( X283 @ X291 @ X290 @ ( comp @ X292 @ X293 ) ) ) )
        & ( $true
          = ( X283 @ id @ X282 @ id ) )
        & ( $true
         != ( X283 @ id @ ( ap @ X282 @ X281 ) @ id ) )
        & ( $true
          = ( sP67 @ X283 ) )
        & ( $true
          = ( X283 @ id @ X281 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f87,plain,
    ! [X481: term > $o] :
      ( ( $true
        = ( sP72 @ X481 ) )
    <=> ! [X483: term,X484: term] :
          ( ( $true
           != ( X481 @ X484 ) )
          | ( $true
           != ( X481 @ X483 ) )
          | ( $true
            = ( X481 @ ( ap @ X484 @ X483 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f88,plain,
    ! [X481: term > $o] :
      ( ( $true
        = ( sP73 @ X481 ) )
    <=> ! [X482: term] :
          ( ( $true
            = ( X481 @ ( lam @ X482 ) ) )
          | ( $true
           != ( X481 @ X482 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f89,plain,
    ! [X487: term > $o] :
      ( ( $true
        = ( sP74 @ X487 ) )
    <=> ? [X492: term] :
          ( ! [X493: term] :
              ( ( $true
               != ( X487 @ X493 ) )
              | ( $true
                = ( X487 @ ( sub @ X492 @ ( push @ X493 @ id ) ) ) ) )
          & ( $true
           != ( X487 @ ( lam @ X492 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f90,plain,
    ! [X487: term > $o] :
      ( ( $true
        = ( sP75 @ X487 ) )
    <=> ? [X489: term,X490: term] :
          ( ( $true
            = ( X487 @ X489 ) )
          & ( $true
            = ( X487 @ X490 ) )
          & ( $true
           != ( X487 @ ( ap @ X490 @ X489 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f91,plain,
    ( ( $true = sP76 )
  <=> ! [X486: term,X487: term > $o,X488: subst] :
        ( ( $true
          = ( X487 @ ( sub @ X486 @ X488 ) ) )
        | ( $true
          = ( sP75 @ X487 ) )
        | ? [X491: term] :
            ( ( $true
              = ( var @ X491 ) )
            & ( $true
             != ( X487 @ ( sub @ X491 @ X488 ) ) ) )
        | ( $true
          = ( sP74 @ X487 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f92,plain,
    ( ( $true = sP77 )
  <=> ? [X480: term,X481: term > $o] :
        ( ! [X485: term] :
            ( ( $true
              = ( X481 @ X485 ) )
            | ( $true
             != ( var @ X485 ) ) )
        & ( $true
          = ( sP73 @ X481 ) )
        & ( $true
         != ( X481 @ X480 ) )
        & ( $true
          = ( sP72 @ X481 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f93,plain,
    ! [X258: subst > term > subst > $o] :
      ( ( $true
        = ( sP78 @ X258 ) )
    <=> ? [X261: subst > term > term] :
          ( ( $true
           != ( X258 @ id @ ( lam @ ( X261 @ sh @ one ) ) @ id ) )
          & ! [X263: term,X264: subst,X265: subst] :
              ( ( sub @ ( X261 @ X265 @ X263 ) @ X264 )
              = ( X261 @ ( comp @ X265 @ X264 ) @ ( sub @ X263 @ X264 ) ) )
          & ! [X262: term] :
              ( ( ( X258 @ id @ X262 @ id )
               != $true )
              | ( $true
                = ( X258 @ id @ ( X261 @ id @ X262 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f94,plain,
    ! [X251: subst > term > subst > $o] :
      ( ( $true
        = ( sP79 @ X251 ) )
    <=> ! [X252: subst > term > term] :
          ( ? [X256: term] :
              ( ( $true
               != ( X251 @ id @ ( X252 @ id @ X256 ) @ id ) )
              & ( ( X251 @ id @ X256 @ id )
                = $true ) )
          | ( $true
            = ( X251 @ id @ ( lam @ ( X252 @ sh @ one ) ) @ id ) )
          | ? [X253: subst,X254: term,X255: subst] :
              ( ( X252 @ ( comp @ X253 @ X255 ) @ ( sub @ X254 @ X255 ) )
             != ( sub @ ( X252 @ X253 @ X254 ) @ X255 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f95,plain,
    ( ( $true = sP80 )
  <=> ! [X258: subst > term > subst > $o,X259: term] :
        ( ? [X260: term] :
            ( ( $true
             != ( X258 @ id @ ( sub @ X259 @ ( push @ X260 @ id ) ) @ id ) )
            & ( $true
              = ( X258 @ id @ X260 @ id ) ) )
        | ( $true
          = ( sP78 @ X258 ) )
        | ( $true
          = ( X258 @ id @ ( lam @ X259 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f96,plain,
    ( ( $true = sP81 )
  <=> ? [X250: term,X251: subst > term > subst > $o] :
        ( ! [X257: term] :
            ( ( $true
              = ( X251 @ id @ ( sub @ X250 @ ( push @ X257 @ id ) ) @ id ) )
            | ( $true
             != ( X251 @ id @ X257 @ id ) ) )
        & ( $true
         != ( X251 @ id @ ( lam @ ( sub @ X250 @ ( push @ one @ sh ) ) ) @ id ) )
        & ( $true
          = ( sP79 @ X251 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f97,plain,
    ! [X138: subst > term > subst > $o] :
      ( ( $true
        = ( sP82 @ X138 ) )
    <=> ? [X140: subst > term > term] :
          ( ( $true
           != ( X138 @ id @ ( lam @ ( X140 @ sh @ one ) ) @ id ) )
          & ! [X141: term] :
              ( ( $true
                = ( X138 @ id @ ( X140 @ id @ X141 ) @ id ) )
              | ( $true
               != ( X138 @ id @ X141 @ id ) ) )
          & ! [X142: term,X143: subst,X144: subst] :
              ( ( sub @ ( X140 @ X144 @ X142 ) @ X143 )
              = ( X140 @ ( comp @ X144 @ X143 ) @ ( sub @ X142 @ X143 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f98,plain,
    ( ( $true = sP83 )
  <=> ! [X137: term,X138: subst > term > subst > $o] :
        ( ? [X139: term] :
            ( ( $true
             != ( X138 @ id @ ( sub @ X137 @ ( push @ X139 @ id ) ) @ id ) )
            & ( $true
              = ( X138 @ id @ X139 @ id ) ) )
        | ( $true
          = ( sP82 @ X138 ) )
        | ( ( X138 @ id @ ( lam @ ( sub @ X137 @ ( push @ one @ sh ) ) ) @ id )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f99,plain,
    ! [X466: subst > term > subst > $o] :
      ( ( $true
        = ( sP84 @ X466 ) )
    <=> ? [X468: subst > term > term] :
          ( ( $true
           != ( X466 @ id @ ( lam @ ( X468 @ sh @ one ) ) @ id ) )
          & ! [X469: term] :
              ( ( $true
                = ( X466 @ id @ ( X468 @ id @ X469 ) @ id ) )
              | ( $true
               != ( X466 @ id @ X469 @ id ) ) )
          & ! [X470: subst,X471: subst,X472: term] :
              ( ( sub @ ( X468 @ X471 @ X472 ) @ X470 )
              = ( X468 @ ( comp @ X471 @ X470 ) @ ( sub @ X472 @ X470 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f100,plain,
    ! [X466: subst > term > subst > $o] :
      ( ( $true
        = ( sP85 @ X466 ) )
    <=> ? [X473: term,X474: term] :
          ( ( $true
            = ( X466 @ id @ X473 @ id ) )
          & ( $true
           != ( X466 @ id @ ( ap @ ( sub @ X474 @ id ) @ X473 ) @ id ) )
          & ( $true
            = ( X466 @ id @ X474 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f101,plain,
    ! [X93: subst > term > subst > $o] :
      ( ( $true
        = ( sP86 @ X93 ) )
    <=> ? [X95: subst > term > term] :
          ( ! [X97: term,X98: subst,X99: subst] :
              ( ( X95 @ ( comp @ X99 @ X98 ) @ ( sub @ X97 @ X98 ) )
              = ( sub @ ( X95 @ X99 @ X97 ) @ X98 ) )
          & ( $true
           != ( X93 @ id @ ( lam @ ( X95 @ sh @ one ) ) @ id ) )
          & ! [X96: term] :
              ( ( $true
               != ( X93 @ id @ X96 @ id ) )
              | ( $true
                = ( X93 @ id @ ( X95 @ id @ X96 ) @ id ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f102,plain,
    ! [X93: subst > term > subst > $o] :
      ( ( $true
        = ( sP87 @ X93 ) )
    <=> ? [X100: term,X101: term] :
          ( ( $true
            = ( X93 @ id @ X101 @ id ) )
          & ( $true
           != ( X93 @ id @ ( ap @ ( sub @ X100 @ id ) @ X101 ) @ id ) )
          & ( $true
            = ( X93 @ id @ X100 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f103,plain,
    ! [X93: subst > term > subst > $o] :
      ( ( $true
        = ( sP88 @ X93 ) )
    <=> ? [X102: term,X103: subst,X104: subst,X105: subst] :
          ( ( $true
           != ( X93 @ ( comp @ X104 @ X103 ) @ ( sub @ X102 @ X103 ) @ X105 ) )
          & ( $true
            = ( X93 @ X104 @ X102 @ ( comp @ X103 @ X105 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f104,plain,
    ! [X93: subst > term > subst > $o] :
      ( ( $true
        = ( sP89 @ X93 ) )
    <=> ? [X106: subst,X107: subst,X108: subst,X109: term] :
          ( ( $true
            = ( X93 @ ( comp @ X107 @ X106 ) @ ( sub @ X109 @ X106 ) @ X108 ) )
          & ( $true
           != ( X93 @ X107 @ X109 @ ( comp @ X106 @ X108 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f105,plain,
    ( ( $true = sP90 )
  <=> ! [X93: subst > term > subst > $o,X94: term] :
        ( ( $true
          = ( X93 @ id @ X94 @ id ) )
        | ? [X110: term] :
            ( ( $true
             != ( X93 @ id @ X110 @ id ) )
            & ( $true
              = ( var @ ( sub @ X110 @ id ) ) ) )
        | ( $true
          = ( sP89 @ X93 ) )
        | ( $true
          = ( sP87 @ X93 ) )
        | ( $true
          = ( sP88 @ X93 ) )
        | ( $true
          = ( sP86 @ X93 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f107,plain,
    ! [X354: subst > term > subst > $o] :
      ( ( $true
        = ( sP92 @ X354 ) )
    <=> ? [X363: term,X364: subst,X365: subst,X366: subst] :
          ( ( $true
           != ( X354 @ X364 @ X363 @ ( comp @ X365 @ X366 ) ) )
          & ( ( X354 @ ( comp @ X364 @ X365 ) @ ( sub @ X363 @ X365 ) @ X366 )
            = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f108,plain,
    ( ( $true = sP93 )
  <=> ! [X353: term > $o,X354: subst > term > subst > $o,X355: term,X356: term] :
        ( ( $true
          = ( X353 @ ( ap @ X356 @ X355 ) ) )
        | ? [X367: term] :
            ( ( X353 @ X367 )
           != ( X354 @ id @ X367 @ id ) )
        | ( $true
         != ( X353 @ X355 ) )
        | ( $true
          = ( sP91 @ X354 ) )
        | ? [X357: term,X358: subst,X359: subst,X360: subst] :
            ( ( $true
             != ( X354 @ ( comp @ X358 @ X360 ) @ ( sub @ X357 @ X360 ) @ X359 ) )
            & ( $true
              = ( X354 @ X358 @ X357 @ ( comp @ X360 @ X359 ) ) ) )
        | ( $true
          = ( sP92 @ X354 ) )
        | ( $true
         != ( X353 @ X356 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

thf(f111,plain,
    ! [X168: subst > term > subst > $o] :
      ( ( ( sP96 @ X168 )
        = $true )
    <=> ? [X180: term,X181: subst,X182: subst,X183: subst] :
          ( ( ( X168 @ ( comp @ X181 @ X183 ) @ ( sub @ X180 @ X183 ) @ X182 )
            = $true )
          & ( $true
           != ( X168 @ X181 @ X180 @ ( comp @ X183 @ X182 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f112,plain,
    ! [X168: subst > term > subst > $o] :
      ( ( $true
        = ( sP97 @ X168 ) )
    <=> ? [X175: subst,X176: term,X177: subst,X178: subst] :
          ( ( $true
            = ( X168 @ X177 @ X176 @ ( comp @ X178 @ X175 ) ) )
          & ( $true
           != ( X168 @ ( comp @ X177 @ X178 ) @ ( sub @ X176 @ X178 ) @ X175 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f113,plain,
    ( ( $true = sP98 )
  <=> ! [X168: subst > term > subst > $o,X169: term] :
        ( ( $true
          = ( sP95 @ X168 ) )
        | ? [X179: term] :
            ( ( $true
              = ( X168 @ id @ X179 @ id ) )
            & ( $true
             != ( X168 @ id @ ( sub @ X169 @ ( push @ X179 @ id ) ) @ id ) ) )
        | ( $true
          = ( X168 @ id @ ( lam @ X169 ) @ id ) )
        | ( $true
          = ( sP97 @ X168 ) )
        | ( ( sP96 @ X168 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f114,plain,
    ( ( $true = sP99 )
  <=> ? [X160: term,X161: subst > term > subst > $o] :
        ( ( $true
          = ( sP94 @ X161 ) )
        & ! [X162: term] :
            ( ( $true
             != ( X161 @ id @ X162 @ id ) )
            | ( $true
              = ( X161 @ id @ ( sub @ X160 @ ( push @ X162 @ id ) ) @ id ) ) )
        & ( $true
         != ( X161 @ id @ ( lam @ ( sub @ X160 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f115,plain,
    ! [X31: subst > term > subst > $o] :
      ( ( ( sP100 @ X31 )
        = $true )
    <=> ? [X35: subst > term > term] :
          ( ( $true
           != ( X31 @ id @ ( lam @ ( X35 @ sh @ one ) ) @ id ) )
          & ! [X36: term] :
              ( ( $true
               != ( X31 @ id @ X36 @ id ) )
              | ( $true
                = ( X31 @ id @ ( X35 @ id @ X36 ) @ id ) ) )
          & ! [X37: subst,X38: subst,X39: term] :
              ( ( X35 @ ( comp @ X38 @ X37 ) @ ( sub @ X39 @ X37 ) )
              = ( sub @ ( X35 @ X38 @ X39 ) @ X37 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f116,plain,
    ! [X31: subst > term > subst > $o] :
      ( ( ( sP101 @ X31 )
        = $true )
    <=> ? [X33: term,X34: term] :
          ( ( $true
            = ( X31 @ id @ X34 @ id ) )
          & ( $true
            = ( X31 @ id @ X33 @ id ) )
          & ( $true
           != ( X31 @ id @ ( ap @ ( sub @ X33 @ id ) @ X34 ) @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f118,plain,
    ! [X14: term > $o] :
      ( ( $true
        = ( sP103 @ X14 ) )
    <=> ! [X15: term,X16: term] :
          ( ( $true
            = ( X14 @ ( ap @ X16 @ X15 ) ) )
          | ( $true
           != ( X14 @ X16 ) )
          | ( $true
           != ( X14 @ X15 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f119,plain,
    ! [X14: term > $o] :
      ( ( $true
        = ( sP104 @ X14 ) )
    <=> ! [X17: term] :
          ( ( $true
            = ( X14 @ X17 ) )
          | ( $true
           != ( var @ X17 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f120,plain,
    ! [X14: term > $o] :
      ( ( $true
        = ( sP105 @ X14 ) )
    <=> ! [X18: term] :
          ( ? [X19: term] :
              ( ( $true
               != ( X14 @ ( sub @ X18 @ ( push @ X19 @ id ) ) ) )
              & ( $true
                = ( X14 @ X19 ) ) )
          | ( $true
            = ( X14 @ ( lam @ X18 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f121,plain,
    ( ( $true = sP106 )
  <=> ! [X31: subst > term > subst > $o,X32: term] :
        ( ( ( sP100 @ X31 )
          = $true )
        | ( $true
          = ( X31 @ id @ X32 @ id ) )
        | ( ( sP101 @ X31 )
          = $true ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

thf(f123,plain,
    ( ( $true = sP108 )
  <=> ? [X13: term,X14: term > $o] :
        ( ( $true
          = ( sP105 @ X14 ) )
        & ( $true
          = ( sP104 @ X14 ) )
        & ( $true
          = ( sP103 @ X14 ) )
        & ( $true
         != ( X14 @ X13 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

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

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

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

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

thf(f1283,plain,
    ! [X262: term] :
      ( ( d2term @ ( sK644 @ X262 ) )
      = X262 ),
    inference(cnf_transformation,[status(thm)],[f745]) ).

thf(f3067,plain,
    ( ( $true
     != ( sK485 @ ( d2subst @ d_id ) @ ( ap @ sK486 @ sK487 ) @ ( d2subst @ d_id ) ) )
    | spl658_285 ),
    inference(avatar_component_clause,[status(thm)],[f3066]) ).

thf(f3066,definition,
    ( spl658_285
  <=> ( $true
      = ( sK485 @ ( d2subst @ d_id ) @ ( ap @ sK486 @ sK487 ) @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_285])],[avatar_definition]) ).

thf(f6787,plain,
    ( ~ spl658_383
    | ~ spl658_474 ),
    inference(avatar_contradiction_clause,[status(thm)],[f6786]) ).

thf(f6786,plain,
    ( $false
    | ~ spl658_383
    | ~ spl658_474 ),
    inference(subsumption_resolution,[status(thm)],[f3506,f6757]) ).

thf(f6757,plain,
    ( ! [X6: subst,X4: term] :
        ( $true
       != ( sK485 @ X6 @ X4 @ ( d2subst @ d_id ) ) )
    | ~ spl658_474 ),
    inference(avatar_component_clause,[status(thm)],[f6756]) ).

thf(f6756,definition,
    ( spl658_474
  <=> ! [X6: subst,X4: term] :
        ( $true
       != ( sK485 @ X6 @ X4 @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_474])],[avatar_definition]) ).

thf(f3506,plain,
    ( ( $true
      = ( sK485 @ ( d2subst @ d_id ) @ sK486 @ ( d2subst @ d_id ) ) )
    | ~ spl658_383 ),
    inference(avatar_component_clause,[status(thm)],[f3505]) ).

thf(f3505,definition,
    ( spl658_383
  <=> ( $true
      = ( sK485 @ ( d2subst @ d_id ) @ sK486 @ ( d2subst @ d_id ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_383])],[avatar_definition]) ).

thf(f6758,plain,
    ( spl658_473
    | spl658_474
    | ~ spl658_326 ),
    inference(avatar_split_clause,[status(thm)],[f6751,f3237,f6756,f6753]) ).

thf(f3237,definition,
    ( spl658_326
  <=> ! [X5: subst,X4: term,X6: subst,X3: subst] :
        ( ( $true
          = ( sK485 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
        | ( $true
         != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_326])],[avatar_definition]) ).

thf(f6751,plain,
    ( ! [X6: subst,X4: term,X5: subst] :
        ( ( $true
         != ( sK485 @ X6 @ X4 @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK485 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ X5 ) ) )
    | ~ spl658_326 ),
    inference(forward_demodulation,[status(thm)],[f6750,f3870]) ).

thf(f6750,plain,
    ( ! [X3: subst,X6: subst,X4: term,X5: subst] :
        ( ( $true
         != ( sK485 @ X6 @ X4 @ ( d2subst @ d_id ) ) )
        | ( $true
          = ( sK485 @ ( d2subst @ d_id ) @ ( sub @ X4 @ X3 ) @ X5 ) ) )
    | ~ spl658_326 ),
    inference(forward_demodulation,[status(thm)],[f6749,f3901]) ).

thf(f3901,plain,
    ! [X195: subst] :
      ( ( d2subst @ d_id )
      = X195 ),
    inference(forward_demodulation,[status(thm)],[f1351,f1338]) ).

thf(f1338,plain,
    ! [X207: d_subst] : ( d_id = X207 ),
    inference(cnf_transformation,[status(thm)],[f745]) ).

thf(f1351,plain,
    ! [X195: subst] :
      ( ( d2subst @ ( sK611 @ X195 ) )
      = X195 ),
    inference(cnf_transformation,[status(thm)],[f745]) ).

thf(f6749,plain,
    ( ! [X3: subst,X6: subst,X4: term,X5: subst] :
        ( ( $true
         != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) )
        | ( $true
          = ( sK485 @ ( d2subst @ d_id ) @ ( sub @ X4 @ X3 ) @ X5 ) ) )
    | ~ spl658_326 ),
    inference(forward_demodulation,[status(thm)],[f3238,f3901]) ).

thf(f3238,plain,
    ( ! [X3: subst,X6: subst,X4: term,X5: subst] :
        ( ( $true
          = ( sK485 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
        | ( $true
         != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) )
    | ~ spl658_326 ),
    inference(avatar_component_clause,[status(thm)],[f3237]) ).

thf(f6748,plain,
    spl658_313,
    inference(avatar_contradiction_clause,[status(thm)],[f6747]) ).

thf(f6747,plain,
    ( $false
    | spl658_313 ),
    inference(trivial_inequality_removal,[status(thm)],[f6746]) ).

thf(f6746,plain,
    ( ( $true != $true )
    | spl658_313 ),
    inference(superposition,[status(thm)],[f3185,f6745]) ).

thf(f6745,plain,
    ! [X0: subst > term > subst > $o] :
      ( $true
      = ( sP109 @ X0 ) ),
    inference(subsumption_resolution,[status(thm)],[f6744,f6455]) ).

thf(f6455,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( ( X0 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
        = $true )
      | ( $true
        = ( sP109 @ X0 ) ) ),
    inference(forward_demodulation,[status(thm)],[f1851,f3870]) ).

thf(f1851,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( X0 @ ( d2subst @ d_id ) @ ( sK656 @ X0 ) @ ( d2subst @ d_id ) ) )
      | ( $true
        = ( sP109 @ X0 ) ) ),
    inference(definition_unfolding,[status(thm)],[f1526,f1486,f1486]) ).

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

thf(f1526,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP109 @ X0 ) )
      | ( $true
        = ( X0 @ id @ ( sK656 @ X0 ) @ id ) ) ),
    inference(cnf_transformation,[status(thm)],[f762]) ).

thf(f762,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( ( $true
          = ( sP109 @ X0 ) )
        | ( ( $true
            = ( X0 @ id @ ( sK656 @ X0 ) @ id ) )
          & ( $true
           != ( X0 @ id @ ( ap @ ( sK656 @ X0 ) @ ( sK657 @ X0 ) ) @ id ) )
          & ( $true
            = ( X0 @ id @ ( sK657 @ X0 ) @ id ) ) ) )
      & ( ! [X3: term,X4: term] :
            ( ( $true
             != ( X0 @ id @ X3 @ id ) )
            | ( $true
              = ( X0 @ id @ ( ap @ X3 @ X4 ) @ id ) )
            | ( $true
             != ( X0 @ id @ X4 @ id ) ) )
        | ( $true
         != ( sP109 @ X0 ) ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK656,sK657])],[f760,f761]) ).

thf(f761,plain,
    ! [X0: subst > term > subst > $o] :
      ( ? [X1: term,X2: term] :
          ( ( ( X0 @ id @ X1 @ id )
            = $true )
          & ( ( X0 @ id @ ( ap @ X1 @ X2 ) @ id )
           != $true )
          & ( $true
            = ( X0 @ id @ X2 @ id ) ) )
     => ( ( $true
          = ( X0 @ id @ ( sK656 @ X0 ) @ id ) )
        & ( $true
         != ( X0 @ id @ ( ap @ ( sK656 @ X0 ) @ ( sK657 @ X0 ) ) @ id ) )
        & ( $true
          = ( X0 @ id @ ( sK657 @ X0 ) @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f760,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( ( $true
          = ( sP109 @ X0 ) )
        | ? [X1: term,X2: term] :
            ( ( ( X0 @ id @ X1 @ id )
              = $true )
            & ( ( X0 @ id @ ( ap @ X1 @ X2 ) @ id )
             != $true )
            & ( $true
              = ( X0 @ id @ X2 @ id ) ) ) )
      & ( ! [X3: term,X4: term] :
            ( ( $true
             != ( X0 @ id @ X3 @ id ) )
            | ( $true
              = ( X0 @ id @ ( ap @ X3 @ X4 ) @ id ) )
            | ( $true
             != ( X0 @ id @ X4 @ id ) ) )
        | ( $true
         != ( sP109 @ X0 ) ) ) ),
    inference(rectify,[status(thm)],[f759]) ).

thf(f759,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( ( $true
          = ( sP109 @ X0 ) )
        | ? [X11: term,X12: term] :
            ( ( $true
              = ( X0 @ id @ X11 @ id ) )
            & ( $true
             != ( X0 @ id @ ( ap @ X11 @ X12 ) @ id ) )
            & ( $true
              = ( X0 @ id @ X12 @ id ) ) ) )
      & ( ! [X11: term,X12: term] :
            ( ( $true
             != ( X0 @ id @ X11 @ id ) )
            | ( $true
              = ( X0 @ id @ ( ap @ X11 @ X12 ) @ id ) )
            | ( $true
             != ( X0 @ id @ X12 @ id ) ) )
        | ( $true
         != ( sP109 @ X0 ) ) ) ),
    inference(nnf_transformation,[status(thm)],[f125]) ).

thf(f125,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP109 @ X0 ) )
    <=> ! [X11: term,X12: term] :
          ( ( $true
           != ( X0 @ id @ X11 @ id ) )
          | ( $true
            = ( X0 @ id @ ( ap @ X11 @ X12 ) @ id ) )
          | ( $true
           != ( X0 @ id @ X12 @ id ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f6744,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP109 @ X0 ) )
      | ( ( X0 @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
       != $true ) ),
    inference(forward_demodulation,[status(thm)],[f1852,f3870]) ).

thf(f1852,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
       != ( X0 @ ( d2subst @ d_id ) @ ( ap @ ( sK656 @ X0 ) @ ( sK657 @ X0 ) ) @ ( d2subst @ d_id ) ) )
      | ( $true
        = ( sP109 @ X0 ) ) ),
    inference(definition_unfolding,[status(thm)],[f1525,f1486,f1486]) ).

thf(f1525,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP109 @ X0 ) )
      | ( $true
       != ( X0 @ id @ ( ap @ ( sK656 @ X0 ) @ ( sK657 @ X0 ) ) @ id ) ) ),
    inference(cnf_transformation,[status(thm)],[f762]) ).

thf(f3185,plain,
    ( ( $true
     != ( sP109 @ sK645 ) )
    | spl658_313 ),
    inference(avatar_component_clause,[status(thm)],[f3184]) ).

thf(f3184,definition,
    ( spl658_313
  <=> ( $true
      = ( sP109 @ sK645 ) ) ),
    introduced(definition,[new_symbols(naming,[spl658_313])],[avatar_definition]) ).

thf(f3743,plain,
    ( ~ spl658_176
    | ~ spl658_81 ),
    inference(avatar_split_clause,[status(thm)],[f1528,f2225,f2614]) ).

thf(f2614,definition,
    ( spl658_176
  <=> ( $true = sP112 ) ),
    introduced(definition,[new_symbols(naming,[spl658_176])],[avatar_definition]) ).

thf(f2225,definition,
    ( spl658_81
  <=> ( hoasinduction_lem2 = $true ) ),
    introduced(definition,[new_symbols(naming,[spl658_81])],[avatar_definition]) ).

thf(f1528,plain,
    ( ( hoasinduction_lem2 != $true )
    | ( $true != sP112 ) ),
    inference(cnf_transformation,[status(thm)],[f763]) ).

thf(f763,plain,
    ( ( ( hoasinduction_lem2 != $true )
      | ( $true != sP112 ) )
    & ( ( hoasinduction_lem2 = $true )
      | ( $true = sP112 ) ) ),
    inference(nnf_transformation,[status(thm)],[f129]) ).

thf(f129,plain,
    ( ( $true = sP112 )
  <~> ( hoasinduction_lem2 = $true ) ),
    inference(definition_folding,[status(thm)],[f12,f128,f127,f126,f125]) ).

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

thf(f127,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( $true
        = ( sP111 @ X0 ) )
    <=> ? [X1: subst,X2: subst,X3: subst,X4: term] :
          ( ( $true
           != ( X0 @ ( comp @ X3 @ X1 ) @ ( sub @ X4 @ X1 ) @ X2 ) )
          & ( $true
            = ( X0 @ X3 @ X4 @ ( comp @ X1 @ X2 ) ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

thf(f128,plain,
    ( ( $true = sP112 )
  <=> ! [X0: subst > term > subst > $o] :
        ( ? [X5: subst,X6: subst,X7: term,X8: subst] :
            ( ( $true
             != ( X0 @ X8 @ X7 @ ( comp @ X5 @ X6 ) ) )
            & ( $true
              = ( X0 @ ( comp @ X8 @ X5 ) @ ( sub @ X7 @ X5 ) @ X6 ) ) )
        | ( $true
          = ( sP110 @ X0 ) )
        | ( $true
          = ( sP111 @ X0 ) )
        | ( $true
          = ( sP109 @ X0 ) ) ) ),
    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction]) ).

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

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

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

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

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

thf(f2,conjecture,
    ! [X10: subst > term > subst > $o] :
      ( ( ! [X26: subst,X25: subst,X14: subst,X13: term] :
            ( ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) )
           => ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 ) )
       => ( ! [X26: subst,X25: subst,X13: term,X14: subst] :
              ( ( X10 @ ( comp @ X14 @ X26 ) @ ( sub @ X13 @ X26 ) @ X25 )
             => ( X10 @ X14 @ X13 @ ( comp @ X26 @ X25 ) ) )
         => ( ! [X15: term,X13: term] :
                ( ( X10 @ id @ X13 @ id )
               => ( ( X10 @ id @ X15 @ id )
                 => ( X10 @ id @ ( hoasap @ id @ X13 @ id @ X15 ) @ id ) ) )
           => ! [X13: term,X15: term] :
                ( ( X10 @ id @ X13 @ id )
               => ( ( X10 @ id @ X15 @ id )
                 => ( X10 @ id @ ( ap @ X13 @ X15 ) @ id ) ) ) ) ) )
      = hoasinduction_lem2 ),
    file('/export/starexec/sandbox/tmp/tmp.O26DLJ38OJ/DTF2THF_7038.p',hoasinduction_lem2) ).

thf(f3507,plain,
    ( spl658_383
    | spl658_43 ),
    inference(avatar_split_clause,[status(thm)],[f1764,f2083,f3505]) ).

thf(f2083,definition,
    ( spl658_43
  <=> ( $true = sP6 ) ),
    introduced(definition,[new_symbols(naming,[spl658_43])],[avatar_definition]) ).

thf(f1764,plain,
    ( ( $true
      = ( sK485 @ ( d2subst @ d_id ) @ sK486 @ ( d2subst @ d_id ) ) )
    | ( $true = sP6 ) ),
    inference(definition_unfolding,[status(thm)],[f1247,f1486,f1486]) ).

thf(f1247,plain,
    ( ( $true = sP6 )
    | ( $true
      = ( sK485 @ id @ sK486 @ id ) ) ),
    inference(cnf_transformation,[status(thm)],[f638]) ).

thf(f638,plain,
    ( ( ( $true = sP6 )
      | ( ( $true
          = ( sK485 @ id @ sK487 @ id ) )
        & ! [X3: subst,X4: term,X5: subst,X6: subst] :
            ( ( $true
              = ( sK485 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
            | ( $true
             != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) )
        & ( $true
         != ( sP4 @ sK485 ) )
        & ( ( sK485 @ id @ ( ap @ sK486 @ sK487 ) @ id )
         != $true )
        & ( ( sP5 @ sK485 )
         != $true )
        & ( $true
          = ( sK485 @ id @ sK486 @ id ) ) ) )
    & ( ! [X7: subst > term > subst > $o,X8: term,X9: term] :
          ( ( $true
           != ( X7 @ id @ X9 @ id ) )
          | ( ( $true
             != ( X7 @ ( comp @ ( sK491 @ X7 ) @ ( sK488 @ X7 ) ) @ ( sub @ ( sK489 @ X7 ) @ ( sK488 @ X7 ) ) @ ( sK490 @ X7 ) ) )
            & ( $true
              = ( X7 @ ( sK491 @ X7 ) @ ( sK489 @ X7 ) @ ( comp @ ( sK488 @ X7 ) @ ( sK490 @ X7 ) ) ) ) )
          | ( $true
            = ( sP4 @ X7 ) )
          | ( $true
            = ( X7 @ id @ ( ap @ X8 @ X9 ) @ id ) )
          | ( $true
            = ( sP5 @ X7 ) )
          | ( $true
           != ( X7 @ id @ X8 @ id ) ) )
      | ( $true != sP6 ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK485,sK486,sK487,sK488,sK489,sK490,sK491])],[f635,f637,f636]) ).

thf(f636,plain,
    ( ? [X0: subst > term > subst > $o,X1: term,X2: term] :
        ( ( $true
          = ( X0 @ id @ X2 @ id ) )
        & ! [X3: subst,X4: term,X5: subst,X6: subst] :
            ( ( $true
              = ( X0 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
            | ( $true
             != ( X0 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) )
        & ( $true
         != ( sP4 @ X0 ) )
        & ( ( X0 @ id @ ( ap @ X1 @ X2 ) @ id )
         != $true )
        & ( $true
         != ( sP5 @ X0 ) )
        & ( ( X0 @ id @ X1 @ id )
          = $true ) )
   => ( ( $true
        = ( sK485 @ id @ sK487 @ id ) )
      & ! [X6: subst,X5: subst,X4: term,X3: subst] :
          ( ( $true
            = ( sK485 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
          | ( $true
           != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) )
      & ( $true
       != ( sP4 @ sK485 ) )
      & ( ( sK485 @ id @ ( ap @ sK486 @ sK487 ) @ id )
       != $true )
      & ( ( sP5 @ sK485 )
       != $true )
      & ( $true
        = ( sK485 @ id @ sK486 @ id ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f637,plain,
    ! [X7: subst > term > subst > $o] :
      ( ? [X10: subst,X11: term,X12: subst,X13: subst] :
          ( ( $true
           != ( X7 @ ( comp @ X13 @ X10 ) @ ( sub @ X11 @ X10 ) @ X12 ) )
          & ( $true
            = ( X7 @ X13 @ X11 @ ( comp @ X10 @ X12 ) ) ) )
     => ( ( $true
         != ( X7 @ ( comp @ ( sK491 @ X7 ) @ ( sK488 @ X7 ) ) @ ( sub @ ( sK489 @ X7 ) @ ( sK488 @ X7 ) ) @ ( sK490 @ X7 ) ) )
        & ( $true
          = ( X7 @ ( sK491 @ X7 ) @ ( sK489 @ X7 ) @ ( comp @ ( sK488 @ X7 ) @ ( sK490 @ X7 ) ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f635,plain,
    ( ( ( $true = sP6 )
      | ? [X0: subst > term > subst > $o,X1: term,X2: term] :
          ( ( $true
            = ( X0 @ id @ X2 @ id ) )
          & ! [X3: subst,X4: term,X5: subst,X6: subst] :
              ( ( $true
                = ( X0 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
              | ( $true
               != ( X0 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) )
          & ( $true
           != ( sP4 @ X0 ) )
          & ( ( X0 @ id @ ( ap @ X1 @ X2 ) @ id )
           != $true )
          & ( $true
           != ( sP5 @ X0 ) )
          & ( ( X0 @ id @ X1 @ id )
            = $true ) ) )
    & ( ! [X7: subst > term > subst > $o,X8: term,X9: term] :
          ( ( $true
           != ( X7 @ id @ X9 @ id ) )
          | ? [X10: subst,X11: term,X12: subst,X13: subst] :
              ( ( $true
               != ( X7 @ ( comp @ X13 @ X10 ) @ ( sub @ X11 @ X10 ) @ X12 ) )
              & ( $true
                = ( X7 @ X13 @ X11 @ ( comp @ X10 @ X12 ) ) ) )
          | ( $true
            = ( sP4 @ X7 ) )
          | ( $true
            = ( X7 @ id @ ( ap @ X8 @ X9 ) @ id ) )
          | ( $true
            = ( sP5 @ X7 ) )
          | ( $true
           != ( X7 @ id @ X8 @ id ) ) )
      | ( $true != sP6 ) ) ),
    inference(rectify,[status(thm)],[f634]) ).

thf(f634,plain,
    ( ( ( $true = sP6 )
      | ? [X432: subst > term > subst > $o,X433: term,X434: term] :
          ( ( $true
            = ( X432 @ id @ X434 @ id ) )
          & ! [X435: subst,X436: term,X437: subst,X438: subst] :
              ( ( $true
                = ( X432 @ ( comp @ X438 @ X435 ) @ ( sub @ X436 @ X435 ) @ X437 ) )
              | ( $true
               != ( X432 @ X438 @ X436 @ ( comp @ X435 @ X437 ) ) ) )
          & ( $true
           != ( sP4 @ X432 ) )
          & ( ( X432 @ id @ ( ap @ X433 @ X434 ) @ id )
           != $true )
          & ( $true
           != ( sP5 @ X432 ) )
          & ( $true
            = ( X432 @ id @ X433 @ id ) ) ) )
    & ( ! [X432: subst > term > subst > $o,X433: term,X434: term] :
          ( ( $true
           != ( X432 @ id @ X434 @ id ) )
          | ? [X435: subst,X436: term,X437: subst,X438: subst] :
              ( ( $true
               != ( X432 @ ( comp @ X438 @ X435 ) @ ( sub @ X436 @ X435 ) @ X437 ) )
              & ( $true
                = ( X432 @ X438 @ X436 @ ( comp @ X435 @ X437 ) ) ) )
          | ( $true
            = ( sP4 @ X432 ) )
          | ( ( X432 @ id @ ( ap @ X433 @ X434 ) @ id )
            = $true )
          | ( $true
            = ( sP5 @ X432 ) )
          | ( $true
           != ( X432 @ id @ X433 @ id ) ) )
      | ( $true != sP6 ) ) ),
    inference(nnf_transformation,[status(thm)],[f21]) ).

thf(f3239,plain,
    ( spl658_326
    | spl658_43 ),
    inference(avatar_split_clause,[status(thm)],[f1251,f2083,f3237]) ).

thf(f1251,plain,
    ! [X3: subst,X6: subst,X4: term,X5: subst] :
      ( ( $true = sP6 )
      | ( $true
        = ( sK485 @ ( comp @ X6 @ X3 ) @ ( sub @ X4 @ X3 ) @ X5 ) )
      | ( $true
       != ( sK485 @ X6 @ X4 @ ( comp @ X3 @ X5 ) ) ) ),
    inference(cnf_transformation,[status(thm)],[f638]) ).

thf(f3186,plain,
    ( spl658_176
    | ~ spl658_313 ),
    inference(avatar_split_clause,[status(thm)],[f1512,f3184,f2614]) ).

thf(f1512,plain,
    ( ( $true = sP112 )
    | ( $true
     != ( sP109 @ sK645 ) ) ),
    inference(cnf_transformation,[status(thm)],[f750]) ).

thf(f750,plain,
    ( ( ( $true = sP112 )
      | ( ! [X1: subst,X2: subst,X3: term,X4: subst] :
            ( ( $true
              = ( sK645 @ X4 @ X3 @ ( comp @ X1 @ X2 ) ) )
            | ( $true
             != ( sK645 @ ( comp @ X4 @ X1 ) @ ( sub @ X3 @ X1 ) @ X2 ) ) )
        & ( $true
         != ( sP110 @ sK645 ) )
        & ( $true
         != ( sP111 @ sK645 ) )
        & ( $true
         != ( sP109 @ sK645 ) ) ) )
    & ( ! [X5: subst > term > subst > $o] :
          ( ( ( $true
             != ( X5 @ ( sK649 @ X5 ) @ ( sK648 @ X5 ) @ ( comp @ ( sK646 @ X5 ) @ ( sK647 @ X5 ) ) ) )
            & ( $true
              = ( X5 @ ( comp @ ( sK649 @ X5 ) @ ( sK646 @ X5 ) ) @ ( sub @ ( sK648 @ X5 ) @ ( sK646 @ X5 ) ) @ ( sK647 @ X5 ) ) ) )
          | ( $true
            = ( sP110 @ X5 ) )
          | ( ( sP111 @ X5 )
            = $true )
          | ( $true
            = ( sP109 @ X5 ) ) )
      | ( $true != sP112 ) ) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK645,sK646,sK647,sK648,sK649])],[f747,f749,f748]) ).

thf(f748,plain,
    ( ? [X0: subst > term > subst > $o] :
        ( ! [X1: subst,X2: subst,X3: term,X4: subst] :
            ( ( $true
              = ( X0 @ X4 @ X3 @ ( comp @ X1 @ X2 ) ) )
            | ( $true
             != ( X0 @ ( comp @ X4 @ X1 ) @ ( sub @ X3 @ X1 ) @ X2 ) ) )
        & ( $true
         != ( sP110 @ X0 ) )
        & ( $true
         != ( sP111 @ X0 ) )
        & ( $true
         != ( sP109 @ X0 ) ) )
   => ( ! [X4: subst,X3: term,X2: subst,X1: subst] :
          ( ( $true
            = ( sK645 @ X4 @ X3 @ ( comp @ X1 @ X2 ) ) )
          | ( $true
           != ( sK645 @ ( comp @ X4 @ X1 ) @ ( sub @ X3 @ X1 ) @ X2 ) ) )
      & ( $true
       != ( sP110 @ sK645 ) )
      & ( $true
       != ( sP111 @ sK645 ) )
      & ( $true
       != ( sP109 @ sK645 ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f749,plain,
    ! [X5: subst > term > subst > $o] :
      ( ? [X6: subst,X7: subst,X8: term,X9: subst] :
          ( ( $true
           != ( X5 @ X9 @ X8 @ ( comp @ X6 @ X7 ) ) )
          & ( ( X5 @ ( comp @ X9 @ X6 ) @ ( sub @ X8 @ X6 ) @ X7 )
            = $true ) )
     => ( ( $true
         != ( X5 @ ( sK649 @ X5 ) @ ( sK648 @ X5 ) @ ( comp @ ( sK646 @ X5 ) @ ( sK647 @ X5 ) ) ) )
        & ( $true
          = ( X5 @ ( comp @ ( sK649 @ X5 ) @ ( sK646 @ X5 ) ) @ ( sub @ ( sK648 @ X5 ) @ ( sK646 @ X5 ) ) @ ( sK647 @ X5 ) ) ) ) ),
    introduced(definition,[],[choice_axiom]) ).

thf(f747,plain,
    ( ( ( $true = sP112 )
      | ? [X0: subst > term > subst > $o] :
          ( ! [X1: subst,X2: subst,X3: term,X4: subst] :
              ( ( $true
                = ( X0 @ X4 @ X3 @ ( comp @ X1 @ X2 ) ) )
              | ( $true
               != ( X0 @ ( comp @ X4 @ X1 ) @ ( sub @ X3 @ X1 ) @ X2 ) ) )
          & ( $true
           != ( sP110 @ X0 ) )
          & ( $true
           != ( sP111 @ X0 ) )
          & ( $true
           != ( sP109 @ X0 ) ) ) )
    & ( ! [X5: subst > term > subst > $o] :
          ( ? [X6: subst,X7: subst,X8: term,X9: subst] :
              ( ( $true
               != ( X5 @ X9 @ X8 @ ( comp @ X6 @ X7 ) ) )
              & ( ( X5 @ ( comp @ X9 @ X6 ) @ ( sub @ X8 @ X6 ) @ X7 )
                = $true ) )
          | ( $true
            = ( sP110 @ X5 ) )
          | ( ( sP111 @ X5 )
            = $true )
          | ( $true
            = ( sP109 @ X5 ) ) )
      | ( $true != sP112 ) ) ),
    inference(rectify,[status(thm)],[f746]) ).

thf(f746,plain,
    ( ( ( $true = sP112 )
      | ? [X0: subst > term > subst > $o] :
          ( ! [X5: subst,X6: subst,X7: term,X8: subst] :
              ( ( $true
                = ( X0 @ X8 @ X7 @ ( comp @ X5 @ X6 ) ) )
              | ( $true
               != ( X0 @ ( comp @ X8 @ X5 ) @ ( sub @ X7 @ X5 ) @ X6 ) ) )
          & ( $true
           != ( sP110 @ X0 ) )
          & ( $true
           != ( sP111 @ X0 ) )
          & ( $true
           != ( sP109 @ X0 ) ) ) )
    & ( ! [X0: subst > term > subst > $o] :
          ( ? [X5: subst,X6: subst,X7: term,X8: subst] :
              ( ( $true
               != ( X0 @ X8 @ X7 @ ( comp @ X5 @ X6 ) ) )
              & ( $true
                = ( X0 @ ( comp @ X8 @ X5 ) @ ( sub @ X7 @ X5 ) @ X6 ) ) )
          | ( $true
            = ( sP110 @ X0 ) )
          | ( $true
            = ( sP111 @ X0 ) )
          | ( $true
            = ( sP109 @ X0 ) ) )
      | ( $true != sP112 ) ) ),
    inference(nnf_transformation,[status(thm)],[f128]) ).

thf(f3068,plain,
    ( spl658_43
    | ~ spl658_285 ),
    inference(avatar_split_clause,[status(thm)],[f1763,f3066,f2083]) ).

thf(f1763,plain,
    ( ( $true
     != ( sK485 @ ( d2subst @ d_id ) @ ( ap @ sK486 @ sK487 ) @ ( d2subst @ d_id ) ) )
    | ( $true = sP6 ) ),
    inference(definition_unfolding,[status(thm)],[f1249,f1486,f1486]) ).

thf(f1249,plain,
    ( ( $true = sP6 )
    | ( ( sK485 @ id @ ( ap @ sK486 @ sK487 ) @ id )
     != $true ) ),
    inference(cnf_transformation,[status(thm)],[f638]) ).

thf(f2319,plain,
    ( ~ spl658_43
    | spl658_81 ),
    inference(avatar_split_clause,[status(thm)],[f1289,f2225,f2083]) ).

thf(f1289,plain,
    ( ( $true != sP6 )
    | ( hoasinduction_lem2 = $true ) ),
    inference(cnf_transformation,[status(thm)],[f745]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.12/0.13  % Command  : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.17/0.34  % Computer : n001.cluster.edu
% 0.17/0.34  % Model    : x86_64 x86_64
% 0.17/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.34  % Memory   : 8042.1875MB
% 0.17/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.17/0.34  % CPULimit : 300
% 0.17/0.34  % WCLimit  : 300
% 0.17/0.34  % DateTime : Tue May  5 09:09:03 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.17/0.34  Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.27/0.46  ---- Original DTF file ---
% 0.27/0.46  thf(spec,logic,$$dhol).
% 0.27/0.46  %------------------------------------------------------------------------------
% 0.27/0.46  % File     : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.27/0.46  % Domain   : Software Verification
% 0.27/0.46  % Problem  : Benchmark: ALG444^1, Active target: hoasinduction_lem2
% 0.27/0.46  % Version  : Especial.
% 0.27/0.46  % English  :
% 0.27/0.46  
% 0.27/0.46  % Refs     : [Kon26] Kondylidou (2026), Email to Geoff Sutcliffe
% 0.27/0.46  % Source   : [Kon26]
% 0.27/0.46  % Names    : ALG444^1__005__axclos.verify [Kon26]
% 0.27/0.46  
% 0.27/0.46  % Status   : Theorem
% 0.27/0.46  % Rating   : ? v9.3.0
% 0.27/0.46  % Syntax   : Number of formulae    :  132 (   1 unt; 130 typ;   0 def)
% 0.27/0.46  %            Number of atoms       :  254 ( 128 equ;   0 cnn)
% 0.27/0.46  %            Maximal formula atoms :  248 ( 127 avg)
% 0.27/0.46  %            Number of connectives : 2626 ( 333   ~; 306   |; 129   &;1755   @)
% 0.27/0.46  %                                         (  56 <=>;  47  =>;   0  <=;   0 <~>)
% 0.27/0.46  %            Maximal formula depth :  151 (  76 avg)
% 0.27/0.46  %            Number of types       :    5 (   4 usr)
% 0.27/0.46  %            Number of type conns  :  225 ( 225   >;   0   *;   0   +;   0  <<)
% 0.27/0.46  %            Number of symbols     :  127 ( 126 usr; 113 con; 0-4 aty)
% 0.27/0.46  %            Number of variables   :  563 (   8   ^; 553   !;   2   ?; 563   :)
% 0.27/0.46  % SPC      : TH0_THM_EQU_NAR
% 0.27/0.46  
% 0.27/0.46  % Comments :
% 0.27/0.46  %------------------------------------------------------------------------------
% 0.27/0.46  thf(term_type,type,
% 0.27/0.46      term: $tType ).
% 0.27/0.46  
% 0.27/0.46  thf(subst_type,type,
% 0.27/0.46      subst: $tType ).
% 0.27/0.46  
% 0.27/0.46  thf(one_decl,type,
% 0.27/0.46      one: term ).
% 0.27/0.46  
% 0.27/0.46  thf(ap_decl,type,
% 0.27/0.46      ap: term > term > term ).
% 0.27/0.46  
% 0.27/0.46  thf(lam_decl,type,
% 0.27/0.46      lam: term > term ).
% 0.27/0.46  
% 0.27/0.46  thf(sub_decl,type,
% 0.27/0.46      sub: term > subst > term ).
% 0.27/0.46  
% 0.27/0.46  thf(id_decl,type,
% 0.27/0.46      id: subst ).
% 0.27/0.46  
% 0.27/0.46  thf(sh_decl,type,
% 0.27/0.46      sh: subst ).
% 0.27/0.46  
% 0.27/0.46  thf(push_decl,type,
% 0.27/0.46      push: term > subst > subst ).
% 0.27/0.46  
% 0.27/0.46  thf(comp_decl,type,
% 0.27/0.46      comp: subst > subst > subst ).
% 0.27/0.46  
% 0.27/0.46  thf(var_decl,type,
% 0.27/0.46      var: term > $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1v2_decl,type,
% 0.27/0.46      pushprop_lem1v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1_gthm_decl,type,
% 0.27/0.46      pushprop_lem1_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axmap_decl,type,
% 0.27/0.46      axmap: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem0_gthm_decl,type,
% 0.27/0.46      pushprop_lem0_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(shinj_decl,type,
% 0.27/0.46      shinj: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem1v2_decl,type,
% 0.27/0.46      hoasinduction_lem1v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem1v2_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem1v2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasap_decl,type,
% 0.27/0.46      hoasap: subst > term > subst > term > term ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2lem_decl,type,
% 0.27/0.46      induction2lem: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2_f_decl,type,
% 0.27/0.46      hoasinduction_lem3v2_f: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axvarshift_decl,type,
% 0.27/0.46      axvarshift: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj2_decl,type,
% 0.27/0.46      hoasapinj2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapnotvar_gthm_decl,type,
% 0.27/0.46      hoasapnotvar_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj1_decl,type,
% 0.27/0.46      hoasapinj1: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(ulamvar1_decl,type,
% 0.27/0.46      ulamvar1: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2lem_lthm_decl,type,
% 0.27/0.46      induction2lem_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem3v2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(apnotvar_decl,type,
% 0.27/0.46      apnotvar: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lthm_orig_decl,type,
% 0.27/0.46      pushprop_lthm_orig: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3v2_f_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lthm_decl,type,
% 0.27/0.46      hoasinduction_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 0.27/0.46      hoasinduction_no_psi_cond_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslaminj_decl,type,
% 0.27/0.46      hoaslaminj: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3aaa_decl,type,
% 0.27/0.46      hoasinduction_lem3aaa: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2lem_gthm_decl,type,
% 0.27/0.46      induction2lem_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3aa_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3aa_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3_decl,type,
% 0.27/0.46      hoasinduction_lem3: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2_decl,type,
% 0.27/0.46      hoasinduction_lem2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(termmset_lthm_decl,type,
% 0.27/0.46      termmset_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem1_decl,type,
% 0.27/0.46      hoasinduction_lem1: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotap_lthm_decl,type,
% 0.27/0.46      hoaslamnotap_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1v2_lthm_decl,type,
% 0.27/0.46      pushprop_lem1v2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapnotvar_decl,type,
% 0.27/0.46      hoasapnotvar: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem0_decl,type,
% 0.27/0.46      hoasinduction_lem0: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_decl,type,
% 0.27/0.46      hoasinduction: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_gthm_decl,type,
% 0.27/0.46      hoasinduction_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axapp_decl,type,
% 0.27/0.46      axapp: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotvar_lthm_decl,type,
% 0.27/0.46      hoaslamnotvar_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem3v2_lthm_decl,type,
% 0.27/0.46      pushprop_lem3v2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3b_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3b_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(ulamvarind_decl,type,
% 0.27/0.46      ulamvarind: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction_decl,type,
% 0.27/0.46      induction: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3a_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3a_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(termmset_gthm_decl,type,
% 0.27/0.46      termmset_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3aa_decl,type,
% 0.27/0.46      hoasinduction_lem3aa: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1v2_gthm_decl,type,
% 0.27/0.46      pushprop_lem1v2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotap_gthm_decl,type,
% 0.27/0.46      hoaslamnotap_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotvar_gthm_decl,type,
% 0.27/0.46      hoaslamnotvar_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3b_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem3b_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem2v2_decl,type,
% 0.27/0.46      pushprop_lem2v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3a_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem3a_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axclos_decl,type,
% 0.27/0.46      axclos: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axassoc_decl,type,
% 0.27/0.46      axassoc: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2v2_decl,type,
% 0.27/0.46      hoasinduction_lem2v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lthm_decl,type,
% 0.27/0.46      pushprop_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(apinj2_decl,type,
% 0.27/0.46      apinj2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(apinj1_decl,type,
% 0.27/0.46      apinj1: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj2_lthm_decl,type,
% 0.27/0.46      hoasapinj2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2a_decl,type,
% 0.27/0.46      hoasinduction_lem3v2a: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj1_lthm_decl,type,
% 0.27/0.46      hoasapinj1_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslaminj_lthm_decl,type,
% 0.27/0.46      hoaslaminj_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axvarcons_decl,type,
% 0.27/0.46      axvarcons: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslam_decl,type,
% 0.27/0.46      hoaslam: subst > ( subst > term > term ) > term ).
% 0.27/0.46  
% 0.27/0.46  thf(axscons_decl,type,
% 0.27/0.46      axscons: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2v2_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem2v2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axidr_decl,type,
% 0.27/0.46      axidr: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1_decl,type,
% 0.27/0.46      pushprop_lem1: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(laminj_decl,type,
% 0.27/0.46      laminj: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem0_decl,type,
% 0.27/0.46      pushprop_lem0: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_gthm_decl,type,
% 0.27/0.46      pushprop_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axabs_decl,type,
% 0.27/0.46      axabs: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3v2a_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj2_gthm_decl,type,
% 0.27/0.46      hoasapinj2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_p_and_p_prime_decl,type,
% 0.27/0.46      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem1_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem1_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(lamnotap_decl,type,
% 0.27/0.46      lamnotap: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapinj1_gthm_decl,type,
% 0.27/0.46      hoasapinj1_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotvar_decl,type,
% 0.27/0.46      hoaslamnotvar: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axidl_decl,type,
% 0.27/0.46      axidl: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslaminj_gthm_decl,type,
% 0.27/0.46      hoaslaminj_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2_lthm_decl,type,
% 0.27/0.46      induction2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem0_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem0_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(substmonoid_lthm_decl,type,
% 0.27/0.46      substmonoid_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_decl,type,
% 0.27/0.46      pushprop: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem3_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3b_decl,type,
% 0.27/0.46      hoasinduction_lem3b: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(substmonoid_decl,type,
% 0.27/0.46      substmonoid: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(lamnotvar_decl,type,
% 0.27/0.46      lamnotvar: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3a_decl,type,
% 0.27/0.46      hoasinduction_lem3a: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem1_gthm_decl,type,
% 0.27/0.46      hoasinduction_lem1_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_no_psi_cond_decl,type,
% 0.27/0.46      hoasinduction_no_psi_cond: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2_gthm_decl,type,
% 0.27/0.46      induction2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem2v2_lthm_decl,type,
% 0.27/0.46      pushprop_lem2v2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasvar_decl,type,
% 0.27/0.46      hoasvar: subst > term > subst > $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoaslamnotap_decl,type,
% 0.27/0.46      hoaslamnotap: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(substmonoid_gthm_decl,type,
% 0.27/0.46      substmonoid_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(ulamvarsh_decl,type,
% 0.27/0.46      ulamvarsh: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(induction2_decl,type,
% 0.27/0.46      induction2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem3v2_decl,type,
% 0.27/0.46      pushprop_lem3v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem2v2_gthm_decl,type,
% 0.27/0.46      pushprop_lem2v2_gthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem1_lthm_decl,type,
% 0.27/0.46      pushprop_lem1_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2_decl,type,
% 0.27/0.46      hoasinduction_lem3v2: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axshiftcons_decl,type,
% 0.27/0.46      axshiftcons: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(termmset_decl,type,
% 0.27/0.46      termmset: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_lem0_lthm_decl,type,
% 0.27/0.46      pushprop_lem0_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasapnotvar_lthm_decl,type,
% 0.27/0.46      hoasapnotvar_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem3v2_lthm_decl,type,
% 0.27/0.46      hoasinduction_lem3v2_lthm: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(pushprop_p_and_p_prime_decl,type,
% 0.27/0.46      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 0.27/0.46  
% 0.27/0.46  thf(axvarid_decl,type,
% 0.27/0.46      axvarid: $o ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lthm_3_decl,type,
% 0.27/0.46      hoasinduction_lthm_3: $o ).
% 0.27/0.46  
% 0.27/0.46  %----Types of the domains
% 0.27/0.46  thf(d_term_type,type,
% 0.27/0.46      d_term: $tType ).
% 0.27/0.46  
% 0.27/0.46  thf(d_subst_type,type,
% 0.27/0.46      d_subst: $tType ).
% 0.27/0.46  
% 0.27/0.46  %----Types of the promotion functions
% 0.27/0.46  thf(d2term_decl,type,
% 0.27/0.46      d2term: d_term > term ).
% 0.27/0.46  
% 0.27/0.46  thf(d2subst_decl,type,
% 0.27/0.46      d2subst: d_subst > subst ).
% 0.27/0.46  
% 0.27/0.46  %----Types of the domain elements
% 0.27/0.46  thf(d_one_decl,type,
% 0.27/0.46      d_one: d_term ).
% 0.27/0.46  
% 0.27/0.46  thf(d_id_decl,type,
% 0.27/0.46      d_id: d_subst ).
% 0.27/0.46  
% 0.27/0.46  thf(alg444_1,axiom,
% 0.27/0.46      ( ! [T: term] :
% 0.27/0.46        ? [DT: d_term] :
% 0.27/0.46          ( T
% 0.27/0.46          = ( d2term @ DT ) )
% 0.27/0.46      & ! [DT: d_term] : ( DT = d_one )
% 0.27/0.46      & ! [DT1: d_term,DT2: d_term] :
% 0.27/0.46          ( ( ( d2term @ DT1 )
% 0.27/0.46            = ( d2term @ DT2 ) )
% 0.27/0.46         => ( DT1 = DT2 ) )
% 0.27/0.46      & ! [S: subst] :
% 0.27/0.46        ? [DS: d_subst] :
% 0.27/0.46          ( S
% 0.27/0.46          = ( d2subst @ DS ) )
% 0.27/0.46      & ! [DS: d_subst] : ( DS = d_id )
% 0.27/0.46      & ! [DS1: d_subst,DS2: d_subst] :
% 0.27/0.46          ( ( ( d2subst @ DS1 )
% 0.27/0.46            = ( d2subst @ DS2 ) )
% 0.27/0.46         => ( DS1 = DS2 ) )
% 0.27/0.46      & ( one
% 0.27/0.46        = ( d2term @ d_one ) )
% 0.27/0.46      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 0.27/0.46        = ( d2term @ d_one ) )
% 0.27/0.46      & ( ( lam @ ( d2term @ d_one ) )
% 0.27/0.46        = ( d2term @ d_one ) )
% 0.27/0.46      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.27/0.46        = ( d2term @ d_one ) )
% 0.27/0.46      & ( id
% 0.27/0.46        = ( d2subst @ d_id ) )
% 0.27/0.46      & ( sh
% 0.27/0.46        = ( d2subst @ d_id ) )
% 0.27/0.46      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.27/0.46        = ( d2subst @ d_id ) )
% 0.27/0.46      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 0.27/0.46        = ( d2subst @ d_id ) )
% 0.27/0.46      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 0.27/0.46        = ( d2term @ d_one ) )
% 0.27/0.46      & ( hoaslam
% 0.27/0.46        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 0.27/0.46      & ( hoasinduction_p_and_p_prime
% 0.27/0.46        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 0.27/0.46            ! [X: term] :
% 0.27/0.46              ( ( Q @ X )
% 0.27/0.46              = ( P @ id @ X @ id ) ) ) )
% 0.27/0.46      & ( pushprop_p_and_p_prime
% 0.27/0.46        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 0.27/0.46            ! [X: term] :
% 0.27/0.46              ( ( Q @ X )
% 0.27/0.46              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 0.27/0.46      & ~ ( var @ ( d2term @ d_one ) )
% 0.27/0.46      & ( pushprop_lem1v2
% 0.27/0.46      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.27/0.46            ( ~ ( P @ A )
% 0.27/0.46            | ~ ! [X: term] :
% 0.27/0.46                  ( ( Q @ X )
% 0.27/0.46                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.27/0.46            | ( Q @ one ) ) )
% 0.27/0.46      & pushprop_lem1_gthm
% 0.27/0.46      & axmap
% 0.27/0.46      & pushprop_lem0_gthm
% 0.27/0.46      & ( shinj
% 0.27/0.46      <=> ! [A: term,B: term] :
% 0.27/0.46            ( ( ( sub @ A @ sh )
% 0.27/0.46             != ( sub @ B @ sh ) )
% 0.27/0.46            | ( A = B ) ) )
% 0.27/0.46      & hoasinduction_lem1v2
% 0.27/0.46      & hoasinduction_lem1v2_gthm
% 0.27/0.46      & ( induction2lem
% 0.27/0.46      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.27/0.46            ( ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ A )
% 0.27/0.46                  | ~ ( P @ B )
% 0.27/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46            | ~ ! [A: term] :
% 0.27/0.46                  ( ~ ! [B: term] :
% 0.27/0.46                        ( ~ ( P @ B )
% 0.27/0.46                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                  | ( P @ ( lam @ A ) ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( var @ B )
% 0.27/0.46                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.27/0.46            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 0.27/0.46      & ( hoasinduction_lem3v2_f
% 0.27/0.46      <=> ! [B: term] :
% 0.27/0.46            ~ ! [F: subst > term > term] :
% 0.27/0.46                ~ ! [A: term,M: subst] :
% 0.27/0.46                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.27/0.46                    = ( F @ M @ A ) ) )
% 0.27/0.46      & axvarshift
% 0.27/0.46      & ( hoasapinj2
% 0.27/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.27/0.46             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.27/0.46            | ( C = D ) ) )
% 0.27/0.46      & hoasapnotvar_gthm
% 0.27/0.46      & ( hoasapinj1
% 0.27/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.27/0.46             != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.27/0.46            | ( A = B ) ) )
% 0.27/0.46      & ~ ulamvar1
% 0.27/0.46      & ( induction2lem_lthm
% 0.27/0.46      <=> ( ! [A: term,M: subst] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.27/0.46         => ( ! [A: term,M: subst] :
% 0.27/0.46                ( M
% 0.27/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.27/0.46           => ( ! [M: subst] :
% 0.27/0.46                  ( M
% 0.27/0.46                  = ( comp @ M @ id ) )
% 0.27/0.46             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 0.27/0.46                    ( ~ ! [A: term] :
% 0.27/0.46                          ( ~ ( var @ A )
% 0.27/0.46                          | ( P @ A ) )
% 0.27/0.46                    | ~ ! [A: term,B: term] :
% 0.27/0.46                          ( ~ ( P @ A )
% 0.27/0.46                          | ~ ( P @ B )
% 0.27/0.46                          | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                    | ~ ! [A: term] :
% 0.27/0.46                          ( ~ ( P @ A )
% 0.27/0.46                          | ( P @ ( lam @ A ) ) )
% 0.27/0.46                    | ( P @ Bound_variable_2140 ) )
% 0.27/0.46               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.27/0.46                    ( ~ ! [A: term,B: term] :
% 0.27/0.46                          ( ~ ( P @ A )
% 0.27/0.46                          | ~ ( P @ B )
% 0.27/0.46                          | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                    | ~ ! [A: term] :
% 0.27/0.46                          ( ~ ! [B: term] :
% 0.27/0.46                                ( ~ ( P @ B )
% 0.27/0.46                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                          | ( P @ ( lam @ A ) ) )
% 0.27/0.46                    | ~ ! [B: term] :
% 0.27/0.46                          ( ~ ( var @ B )
% 0.27/0.46                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.27/0.46                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 0.27/0.46      & hoasinduction_lem3v2_gthm
% 0.27/0.46      & apnotvar
% 0.27/0.46      & pushprop_lthm_orig
% 0.27/0.46      & ( hoasinduction_lem3v2_f_lthm
% 0.27/0.46      <=> ! [B: term] :
% 0.27/0.46            ~ ! [F: subst > term > term] :
% 0.27/0.46                ~ ! [A: term,M: subst] :
% 0.27/0.46                    ( ( sub @ B @ ( push @ A @ M ) )
% 0.27/0.46                    = ( F @ M @ A ) ) )
% 0.27/0.46      & ( hoasinduction_lthm
% 0.27/0.46      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.27/0.46              ( ~ ! [A: term] :
% 0.27/0.46                    ( ~ ( var @ A )
% 0.27/0.46                    | ( P @ A ) )
% 0.27/0.46              | ~ ! [A: term,B: term] :
% 0.27/0.46                    ( ~ ( P @ A )
% 0.27/0.46                    | ~ ( P @ B )
% 0.27/0.46                    | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46              | ~ ! [A: term] :
% 0.27/0.46                    ( ~ ! [B: term] :
% 0.27/0.46                          ( ~ ( P @ B )
% 0.27/0.46                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                    | ( P @ ( lam @ A ) ) )
% 0.27/0.46              | ( P @ Bound_variable_2367 ) )
% 0.27/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.27/0.46                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46                | ~ ! [A: term,B: term] :
% 0.27/0.46                      ( ~ ( P @ id @ A @ id )
% 0.27/0.46                      | ~ ( P @ id @ B @ id )
% 0.27/0.46                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.27/0.46                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.27/0.46                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 0.27/0.46           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46                  | ~ ! [F: subst > term > term] :
% 0.27/0.46                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                        | ~ ! [A: term] :
% 0.27/0.46                              ( ~ ( P @ id @ A @ id )
% 0.27/0.46                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                  | ~ ! [B: term] :
% 0.27/0.46                        ( ~ ( P @ id @ B @ id )
% 0.27/0.46                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 0.27/0.46             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( var @ ( sub @ A @ id ) )
% 0.27/0.46                        | ( P @ id @ A @ id ) )
% 0.27/0.46                  | ~ ! [A: term,B: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ~ ( P @ id @ B @ id )
% 0.27/0.46                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46                  | ~ ! [F: subst > term > term] :
% 0.27/0.46                        ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                              ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                        | ~ ! [A: term] :
% 0.27/0.46                              ( ~ ( P @ id @ A @ id )
% 0.27/0.46                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 0.27/0.46      & ( hoasinduction_no_psi_cond_lthm
% 0.27/0.46      <=> ( ! [P: subst > term > subst > $o] :
% 0.27/0.46              ~ ! [Q: term > $o] :
% 0.27/0.46                  ~ ! [X: term] :
% 0.27/0.46                      ( ( Q @ X )
% 0.27/0.46                      = ( P @ id @ X @ id ) )
% 0.27/0.46         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.27/0.46                ( ~ ! [A: term] :
% 0.27/0.46                      ( ~ ( var @ A )
% 0.27/0.46                      | ( P @ A ) )
% 0.27/0.46                | ~ ! [A: term,B: term] :
% 0.27/0.46                      ( ~ ( P @ A )
% 0.27/0.46                      | ~ ( P @ B )
% 0.27/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                | ~ ! [A: term] :
% 0.27/0.46                      ( ~ ! [B: term] :
% 0.27/0.46                            ( ~ ( P @ B )
% 0.27/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                      | ( P @ ( lam @ A ) ) )
% 0.27/0.46                | ( P @ Bound_variable_2367 ) )
% 0.27/0.46           => ( ! [A: term] :
% 0.27/0.46                  ( A
% 0.27/0.46                  = ( sub @ A @ id ) )
% 0.27/0.46             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.27/0.46                    ( ~ ! [F: subst > term > term] :
% 0.27/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                          | ~ ! [A: term] :
% 0.27/0.46                                ( ~ ( P @ id @ A @ id )
% 0.27/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                    | ~ ! [X: term] :
% 0.27/0.46                          ( ( Q @ X )
% 0.27/0.46                          = ( P @ id @ X @ id ) )
% 0.27/0.46                    | ~ ! [B: term] :
% 0.27/0.46                          ( ~ ( Q @ B )
% 0.27/0.46                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.27/0.46                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.27/0.46               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.27/0.46                    ( ~ ! [A: term,B: term] :
% 0.27/0.46                          ( ~ ( P @ id @ A @ id )
% 0.27/0.46                          | ~ ( P @ id @ B @ id )
% 0.27/0.46                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46                    | ~ ! [F: subst > term > term] :
% 0.27/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                          | ~ ! [A: term] :
% 0.27/0.46                                ( ~ ( P @ id @ A @ id )
% 0.27/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 0.27/0.46      & ( hoaslaminj
% 0.27/0.46      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.27/0.46                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46            | ( ( lam @ ( F @ sh @ one ) )
% 0.27/0.46             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.27/0.46            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.27/0.46              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 0.27/0.46      & ( hoasinduction_lem3aaa
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 0.27/0.46            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 0.27/0.46                  ( ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 0.27/0.46                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 0.27/0.46                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 0.27/0.46                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 0.27/0.46                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 0.27/0.46                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.27/0.46      & induction2lem_gthm
% 0.27/0.46      & ( hoasinduction_lem3aa_lthm
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.27/0.46            ( ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.27/0.46      & ( hoasinduction_lem3
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46            | ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 0.27/0.46      & ( hoasinduction_lem2
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46            | ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ A @ id )
% 0.27/0.46                  | ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 0.27/0.46            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 0.27/0.46            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 0.27/0.46      & ( termmset_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) ) ) )
% 0.27/0.46      & hoasinduction_lem1
% 0.27/0.46      & hoaslamnotap_lthm
% 0.27/0.46      & ( pushprop_lem1v2_lthm
% 0.27/0.46      <=> ( ! [A: term,M: subst] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.27/0.46         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 0.27/0.46              ( ~ ( P @ A )
% 0.27/0.46              | ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 0.27/0.46              | ( Q @ one ) ) ) )
% 0.27/0.46      & hoasapnotvar
% 0.27/0.46      & ( hoasinduction_lem0
% 0.27/0.46      <=> ! [P: subst > term > subst > $o] :
% 0.27/0.46            ~ ! [Q: term > $o] :
% 0.27/0.46                ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ id @ X @ id ) ) )
% 0.27/0.46      & ( hoasinduction
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46            | ~ ! [A: term] :
% 0.27/0.46                  ( ~ ( var @ ( sub @ A @ id ) )
% 0.27/0.46                  | ( P @ id @ A @ id ) )
% 0.27/0.46            | ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ A @ id )
% 0.27/0.46                  | ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46            | ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 0.27/0.46      & hoasinduction_gthm
% 0.27/0.46      & axapp
% 0.27/0.46      & hoaslamnotvar_lthm
% 0.27/0.46      & pushprop_lem3v2_lthm
% 0.27/0.46      & ( hoasinduction_lem3b_lthm
% 0.27/0.46      <=> ! [B: term] :
% 0.27/0.46            ~ ! [F: subst > term > term] :
% 0.27/0.46                ( ( F @ sh @ one )
% 0.27/0.46               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.27/0.46      & ulamvarind
% 0.27/0.46      & ( induction
% 0.27/0.46      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 0.27/0.46            ( ~ ! [A: term] :
% 0.27/0.46                  ( ~ ( var @ A )
% 0.27/0.46                  | ( P @ A ) )
% 0.27/0.46            | ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ A )
% 0.27/0.46                  | ~ ( P @ B )
% 0.27/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46            | ~ ! [A: term] :
% 0.27/0.46                  ( ~ ( P @ A )
% 0.27/0.46                  | ( P @ ( lam @ A ) ) )
% 0.27/0.46            | ( P @ Bound_variable_2140 ) ) )
% 0.27/0.46      & ( hoasinduction_lem3a_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.27/0.46                ( ~ ! [F: subst > term > term] :
% 0.27/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                      | ~ ! [A: term] :
% 0.27/0.46                            ( ~ ( P @ id @ A @ id )
% 0.27/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( P @ id @ B @ id )
% 0.27/0.46                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.27/0.46           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.27/0.46                ( ~ ! [F: subst > term > term] :
% 0.27/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                      | ~ ! [A: term] :
% 0.27/0.46                            ( ~ ( P @ id @ A @ id )
% 0.27/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( P @ id @ B @ id )
% 0.27/0.46                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 0.27/0.46      & termmset_gthm
% 0.27/0.46      & ( hoasinduction_lem3aa
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.27/0.46            ( ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 0.27/0.46      & pushprop_lem1v2_gthm
% 0.27/0.46      & hoaslamnotap_gthm
% 0.27/0.46      & hoaslamnotvar_gthm
% 0.27/0.46      & hoasinduction_lem3b_gthm
% 0.27/0.46      & pushprop_lem2v2
% 0.27/0.46      & hoasinduction_lem3a_gthm
% 0.27/0.46      & axclos
% 0.27/0.46      & axassoc
% 0.27/0.46      & ( hoasinduction_lem2v2
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46            | ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ A @ id )
% 0.27/0.46                  | ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46            | ~ ! [X: term] :
% 0.27/0.46                  ( ( Q @ X )
% 0.27/0.46                  = ( P @ id @ X @ id ) )
% 0.27/0.46            | ~ ( Q @ Bound_variable_2820 )
% 0.27/0.46            | ~ ( Q @ Bound_variable_2822 )
% 0.27/0.46            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 0.27/0.46      & pushprop_lthm
% 0.27/0.46      & ( apinj2
% 0.27/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46            ( ( ( ap @ A @ C )
% 0.27/0.46             != ( ap @ B @ D ) )
% 0.27/0.46            | ( C = D ) ) )
% 0.27/0.46      & ( apinj1
% 0.27/0.46      <=> ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46            ( ( ( ap @ A @ C )
% 0.27/0.46             != ( ap @ B @ D ) )
% 0.27/0.46            | ( A = B ) ) )
% 0.27/0.46      & ( hoasapinj2_lthm
% 0.27/0.46      <=> ( ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46              ( ( ( ap @ A @ C )
% 0.27/0.46               != ( ap @ B @ D ) )
% 0.27/0.46              | ( C = D ) )
% 0.27/0.46         => ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.27/0.46               != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.27/0.46              | ( C = D ) ) ) )
% 0.27/0.46      & ( hoasinduction_lem3v2a
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.27/0.46            ( ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [X: term] :
% 0.27/0.46                  ( ( Q @ X )
% 0.27/0.46                  = ( P @ id @ X @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( Q @ B )
% 0.27/0.46                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.27/0.46            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 0.27/0.46      & ( hoasapinj1_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ( ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46                ( ( ( ap @ A @ C )
% 0.27/0.46                 != ( ap @ B @ D ) )
% 0.27/0.46                | ( A = B ) )
% 0.27/0.46           => ! [A: term,B: term,C: term,D: term] :
% 0.27/0.46                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 0.27/0.46                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 0.27/0.46                | ( A = B ) ) ) ) )
% 0.27/0.46      & ( hoaslaminj_lthm
% 0.27/0.46      <=> ( ! [A: term,M: subst] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.27/0.46         => ( ! [A: term,M: subst] :
% 0.27/0.46                ( M
% 0.27/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.27/0.46           => ( ! [A: term,B: term] :
% 0.27/0.46                  ( ( ( lam @ A )
% 0.27/0.46                   != ( lam @ B ) )
% 0.27/0.46                  | ( A = B ) )
% 0.27/0.46             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 0.27/0.46                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ( ( lam @ ( F @ sh @ one ) )
% 0.27/0.46                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 0.27/0.46                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 0.27/0.46                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 0.27/0.46      & ( axvarcons
% 0.27/0.46      <=> ! [A: term,M: subst] :
% 0.27/0.46            ( A
% 0.27/0.46            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 0.27/0.46      & ( axscons
% 0.27/0.46      <=> ! [M: subst] :
% 0.27/0.46            ( M
% 0.27/0.46            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 0.27/0.46      & hoasinduction_lem2v2_gthm
% 0.27/0.46      & ( axidr
% 0.27/0.46      <=> ! [M: subst] :
% 0.27/0.46            ( M
% 0.27/0.46            = ( comp @ M @ id ) ) )
% 0.27/0.46      & ( pushprop_lem1
% 0.27/0.46      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.27/0.46            ( ~ ( P @ A )
% 0.27/0.46            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 0.27/0.46      & ( laminj
% 0.27/0.46      <=> ! [A: term,B: term] :
% 0.27/0.46            ( ( ( lam @ A )
% 0.27/0.46             != ( lam @ B ) )
% 0.27/0.46            | ( A = B ) ) )
% 0.27/0.46      & ( hoasinduction_lem3_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 0.27/0.46                ( ~ ! [F: subst > term > term] :
% 0.27/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                      | ~ ! [A: term] :
% 0.27/0.46                            ( ~ ( P @ id @ A @ id )
% 0.27/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( P @ id @ B @ id )
% 0.27/0.46                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 0.27/0.46           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 0.27/0.46                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46                | ~ ! [F: subst > term > term] :
% 0.27/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                      | ~ ! [A: term] :
% 0.27/0.46                            ( ~ ( P @ id @ A @ id )
% 0.27/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( P @ id @ B @ id )
% 0.27/0.46                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 0.27/0.46      & ( pushprop_lem0
% 0.27/0.46      <=> ! [P: term > $o,A: term,M: subst] :
% 0.27/0.46            ~ ! [Q: term > $o] :
% 0.27/0.46                ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.27/0.46      & pushprop_gthm
% 0.27/0.46      & axabs
% 0.27/0.46      & ( hoasinduction_lem3v2a_lthm
% 0.27/0.46      <=> ( ! [B: term] :
% 0.27/0.46              ~ ! [F: subst > term > term] :
% 0.27/0.46                  ~ ! [A: term,M: subst] :
% 0.27/0.46                      ( ( sub @ B @ ( push @ A @ M ) )
% 0.27/0.46                      = ( F @ M @ A ) )
% 0.27/0.46         => ( ! [A: term] :
% 0.27/0.46                ( A
% 0.27/0.46                = ( sub @ A @ id ) )
% 0.27/0.46           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.27/0.46                ( ~ ! [F: subst > term > term] :
% 0.27/0.46                      ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                            ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                      | ~ ! [A: term] :
% 0.27/0.46                            ( ~ ( P @ id @ A @ id )
% 0.27/0.46                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                | ~ ! [X: term] :
% 0.27/0.46                      ( ( Q @ X )
% 0.27/0.46                      = ( P @ id @ X @ id ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( Q @ B )
% 0.27/0.46                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.27/0.46                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 0.27/0.46      & hoasinduction_lem2_lthm
% 0.27/0.46      & hoasapinj2_gthm
% 0.27/0.46      & hoasinduction_lem1_lthm
% 0.27/0.46      & ~ lamnotap
% 0.27/0.46      & hoasapinj1_gthm
% 0.27/0.46      & hoaslamnotvar
% 0.27/0.46      & ( axidl
% 0.27/0.46      <=> ! [M: subst] :
% 0.27/0.46            ( M
% 0.27/0.46            = ( comp @ id @ M ) ) )
% 0.27/0.46      & hoaslaminj_gthm
% 0.27/0.46      & ( induction2_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 0.27/0.46                ( ~ ! [A: term,B: term] :
% 0.27/0.46                      ( ~ ( P @ A )
% 0.27/0.46                      | ~ ( P @ B )
% 0.27/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                | ~ ! [A: term] :
% 0.27/0.46                      ( ~ ! [B: term] :
% 0.27/0.46                            ( ~ ( P @ B )
% 0.27/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                      | ( P @ ( lam @ A ) ) )
% 0.27/0.46                | ~ ! [B: term] :
% 0.27/0.46                      ( ~ ( var @ B )
% 0.27/0.46                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 0.27/0.46                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 0.27/0.46           => ! [P: term > $o,Bound_variable_2367: term] :
% 0.27/0.46                ( ~ ! [A: term] :
% 0.27/0.46                      ( ~ ( var @ A )
% 0.27/0.46                      | ( P @ A ) )
% 0.27/0.46                | ~ ! [A: term,B: term] :
% 0.27/0.46                      ( ~ ( P @ A )
% 0.27/0.46                      | ~ ( P @ B )
% 0.27/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                | ~ ! [A: term] :
% 0.27/0.46                      ( ~ ! [B: term] :
% 0.27/0.46                            ( ~ ( P @ B )
% 0.27/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                      | ( P @ ( lam @ A ) ) )
% 0.27/0.46                | ( P @ Bound_variable_2367 ) ) ) ) )
% 0.27/0.46      & ( hoasinduction_lem0_lthm
% 0.27/0.46      <=> ! [P: subst > term > subst > $o] :
% 0.27/0.46            ~ ! [Q: term > $o] :
% 0.27/0.46                ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ id @ X @ id ) ) )
% 0.27/0.46      & ( substmonoid_lthm
% 0.27/0.46      <=> ( ! [M: subst] :
% 0.27/0.46              ( M
% 0.27/0.46              = ( comp @ id @ M ) )
% 0.27/0.46         => ( ! [M: subst] :
% 0.27/0.46                ( M
% 0.27/0.46                = ( comp @ M @ id ) )
% 0.27/0.46           => ( ! [M: subst] :
% 0.27/0.46                  ( M
% 0.27/0.46                  = ( comp @ id @ M ) )
% 0.27/0.46              & ! [M: subst] :
% 0.27/0.46                  ( M
% 0.27/0.46                  = ( comp @ M @ id ) ) ) ) ) )
% 0.27/0.46      & pushprop
% 0.27/0.46      & hoasinduction_lem3_gthm
% 0.27/0.46      & hoasinduction_lem2_gthm
% 0.27/0.46      & ( hoasinduction_lem3b
% 0.27/0.46      <=> ! [B: term] :
% 0.27/0.46            ~ ! [F: subst > term > term] :
% 0.27/0.46                ( ( F @ sh @ one )
% 0.27/0.46               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 0.27/0.46      & ( substmonoid
% 0.27/0.46      <=> ( ! [M: subst] :
% 0.27/0.46              ( M
% 0.27/0.46              = ( comp @ id @ M ) )
% 0.27/0.46          & ! [M: subst] :
% 0.27/0.46              ( M
% 0.27/0.46              = ( comp @ M @ id ) ) ) )
% 0.27/0.46      & lamnotvar
% 0.27/0.46      & ( hoasinduction_lem3a
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 0.27/0.46            ( ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 0.27/0.46      & hoasinduction_lem1_gthm
% 0.27/0.46      & ( hoasinduction_no_psi_cond
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 0.27/0.46            ( ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ id @ A @ id )
% 0.27/0.46                  | ~ ( P @ id @ B @ id )
% 0.27/0.46                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46            | ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 0.27/0.46      & induction2_gthm
% 0.27/0.46      & pushprop_lem2v2_lthm
% 0.27/0.46      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 0.27/0.46      & ( hoaslamnotap
% 0.27/0.46      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                  ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46            | ( ( lam @ ( F @ sh @ one ) )
% 0.27/0.46             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 0.27/0.46      & substmonoid_gthm
% 0.27/0.46      & ulamvarsh
% 0.27/0.46      & ( induction2
% 0.27/0.46      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 0.27/0.46            ( ~ ! [A: term] :
% 0.27/0.46                  ( ~ ( var @ A )
% 0.27/0.46                  | ( P @ A ) )
% 0.27/0.46            | ~ ! [A: term,B: term] :
% 0.27/0.46                  ( ~ ( P @ A )
% 0.27/0.46                  | ~ ( P @ B )
% 0.27/0.46                  | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46            | ~ ! [A: term] :
% 0.27/0.46                  ( ~ ! [B: term] :
% 0.27/0.46                        ( ~ ( P @ B )
% 0.27/0.46                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                  | ( P @ ( lam @ A ) ) )
% 0.27/0.46            | ( P @ Bound_variable_2367 ) ) )
% 0.27/0.46      & pushprop_lem3v2
% 0.27/0.46      & pushprop_lem2v2_gthm
% 0.27/0.46      & ( pushprop_lem1_lthm
% 0.27/0.46      <=> ( ! [A: term,M: subst] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ one @ ( push @ A @ M ) ) )
% 0.27/0.46         => ( ! [A: term,M: subst] :
% 0.27/0.46                ( M
% 0.27/0.46                = ( comp @ sh @ ( push @ A @ M ) ) )
% 0.27/0.46           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 0.27/0.46                ( ~ ( P @ A )
% 0.27/0.46                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 0.27/0.46      & ( hoasinduction_lem3v2
% 0.27/0.46      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.27/0.46            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46            | ~ ! [F: subst > term > term] :
% 0.27/0.46                  ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                        ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                  | ~ ! [A: term] :
% 0.27/0.46                        ( ~ ( P @ id @ A @ id )
% 0.27/0.46                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46            | ~ ! [X: term] :
% 0.27/0.46                  ( ( Q @ X )
% 0.27/0.46                  = ( P @ id @ X @ id ) )
% 0.27/0.46            | ~ ! [B: term] :
% 0.27/0.46                  ( ~ ( Q @ B )
% 0.27/0.46                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.27/0.46            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 0.27/0.46      & ( axshiftcons
% 0.27/0.46      <=> ! [A: term,M: subst] :
% 0.27/0.46            ( M
% 0.27/0.46            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 0.27/0.46      & ( termmset
% 0.27/0.46      <=> ! [A: term] :
% 0.27/0.46            ( A
% 0.27/0.46            = ( sub @ A @ id ) ) )
% 0.27/0.46      & ( pushprop_lem0_lthm
% 0.27/0.46      <=> ! [P: term > $o,A: term,M: subst] :
% 0.27/0.46            ~ ! [Q: term > $o] :
% 0.27/0.46                ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 0.27/0.46      & hoasapnotvar_lthm
% 0.27/0.46      & ( hoasinduction_lem3v2_lthm
% 0.27/0.46      <=> ( ! [A: term] :
% 0.27/0.46              ( A
% 0.27/0.46              = ( sub @ A @ id ) )
% 0.27/0.46         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 0.27/0.46              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46              | ~ ! [F: subst > term > term] :
% 0.27/0.46                    ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                          ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                    | ~ ! [A: term] :
% 0.27/0.46                          ( ~ ( P @ id @ A @ id )
% 0.27/0.46                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46              | ~ ! [X: term] :
% 0.27/0.46                    ( ( Q @ X )
% 0.27/0.46                    = ( P @ id @ X @ id ) )
% 0.27/0.46              | ~ ! [B: term] :
% 0.27/0.46                    ( ~ ( Q @ B )
% 0.27/0.46                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 0.27/0.46              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 0.27/0.46      & ( axvarid
% 0.27/0.46      <=> ! [A: term] :
% 0.27/0.46            ( A
% 0.27/0.46            = ( sub @ A @ id ) ) )
% 0.27/0.46      & ( hoasinduction_lthm_3
% 0.27/0.46      <=> ( ! [P: subst > term > subst > $o] :
% 0.27/0.46              ~ ! [Q: term > $o] :
% 0.27/0.46                  ~ ! [X: term] :
% 0.27/0.46                      ( ( Q @ X )
% 0.27/0.46                      = ( P @ id @ X @ id ) )
% 0.27/0.46         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 0.27/0.46                ( ~ ! [A: term] :
% 0.27/0.46                      ( ~ ( var @ A )
% 0.27/0.46                      | ( P @ A ) )
% 0.27/0.46                | ~ ! [A: term,B: term] :
% 0.27/0.46                      ( ~ ( P @ A )
% 0.27/0.46                      | ~ ( P @ B )
% 0.27/0.46                      | ( P @ ( ap @ A @ B ) ) )
% 0.27/0.46                | ~ ! [A: term] :
% 0.27/0.46                      ( ~ ! [B: term] :
% 0.27/0.46                            ( ~ ( P @ B )
% 0.27/0.46                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 0.27/0.46                      | ( P @ ( lam @ A ) ) )
% 0.27/0.46                | ( P @ Bound_variable_2367 ) )
% 0.27/0.46           => ( ! [A: term] :
% 0.27/0.46                  ( A
% 0.27/0.46                  = ( sub @ A @ id ) )
% 0.27/0.46             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 0.27/0.46                    ( ~ ! [F: subst > term > term] :
% 0.27/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                          | ~ ! [A: term] :
% 0.27/0.46                                ( ~ ( P @ id @ A @ id )
% 0.27/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                    | ~ ! [X: term] :
% 0.27/0.46                          ( ( Q @ X )
% 0.27/0.46                          = ( P @ id @ X @ id ) )
% 0.27/0.46                    | ~ ! [B: term] :
% 0.27/0.46                          ( ~ ( Q @ B )
% 0.27/0.46                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 0.27/0.46                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 0.27/0.46               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 0.27/0.46                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46                    | ~ ! [A: term] :
% 0.27/0.46                          ( ~ ( var @ ( sub @ A @ id ) )
% 0.27/0.46                          | ( P @ id @ A @ id ) )
% 0.27/0.46                    | ~ ! [A: term,B: term] :
% 0.27/0.46                          ( ~ ( P @ id @ A @ id )
% 0.27/0.46                          | ~ ( P @ id @ B @ id )
% 0.27/0.46                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 0.27/0.46                    | ~ ! [F: subst > term > term] :
% 0.27/0.46                          ( ~ ! [M: subst,A: term,N: subst] :
% 0.27/0.46                                ( ( sub @ ( F @ M @ A ) @ N )
% 0.27/0.46                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 0.27/0.46                          | ~ ! [A: term] :
% 0.27/0.46                                ( ~ ( P @ id @ A @ id )
% 0.27/0.46                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 0.27/0.46                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 0.27/0.46                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 0.27/0.46  
% 0.27/0.46  thf(hoasinduction_lem2,conjecture,
% 0.27/0.46      ( hoasinduction_lem2
% 0.27/0.46      = ( ! [P: subst > term > subst > $o] :
% 0.27/0.46            ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                ( ( P @ M @ A @ ( comp @ K @ N ) )
% 0.27/0.46               => ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 0.27/0.46           => ( ! [M: subst,A: term,N: subst,K: subst] :
% 0.27/0.46                  ( ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 0.27/0.46                 => ( P @ M @ A @ ( comp @ K @ N ) ) )
% 0.27/0.46             => ( ! [A: term,B: term] :
% 0.27/0.46                    ( ( P @ id @ A @ id )
% 0.27/0.46                   => ( ( P @ id @ B @ id )
% 0.27/0.46                     => ( P @ id @ ( hoasap @ id @ A @ id @ B ) @ id ) ) )
% 0.27/0.46               => ! [A: term,B: term] :
% 0.27/0.46                    ( ( P @ id @ A @ id )
% 0.27/0.46                   => ( ( P @ id @ B @ id )
% 0.27/0.46                     => ( P @ id @ ( ap @ A @ B ) @ id ) ) ) ) ) ) ) ) ).
% 0.27/0.46  
% 0.27/0.46  %------------------------------------------------------------------------------
% 0.27/0.46  ------------------------
% 2.63/1.53  ---- Embedded in THF ---
% 2.63/1.53  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.63/1.53  %%% Generated on Tue May 05 09:09:04 EDT 2026
% 2.63/1.53  %%% using '$$dhol' embedding, version 1.3.0.
% 2.63/1.53  %%% Logic specification used:
% 2.63/1.53  %%% thf(spec, logic, $$dhol).
% 2.63/1.53  
% 2.63/1.53  % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.O26DLJ38OJ/DTF2DTF7038.p
% See solution above
% 2.63/1.53  ------------------------
% 2.63/1.55  ---- Cleaned THF ---
% 2.63/1.55  thf(term_type,type,
% 2.63/1.55      term: $tType ).
% 2.63/1.55  
% 2.63/1.55  thf(subst_type,type,
% 2.63/1.55      subst: $tType ).
% 2.63/1.55  
% 2.63/1.55  thf(one_decl,type,
% 2.63/1.55      one: term ).
% 2.63/1.55  
% 2.63/1.55  thf(ap_decl,type,
% 2.63/1.55      ap: term > term > term ).
% 2.63/1.55  
% 2.63/1.55  thf(lam_decl,type,
% 2.63/1.55      lam: term > term ).
% 2.63/1.55  
% 2.63/1.55  thf(sub_decl,type,
% 2.63/1.55      sub: term > subst > term ).
% 2.63/1.55  
% 2.63/1.55  thf(id_decl,type,
% 2.63/1.55      id: subst ).
% 2.63/1.55  
% 2.63/1.55  thf(sh_decl,type,
% 2.63/1.55      sh: subst ).
% 2.63/1.55  
% 2.63/1.55  thf(push_decl,type,
% 2.63/1.55      push: term > subst > subst ).
% 2.63/1.55  
% 2.63/1.55  thf(comp_decl,type,
% 2.63/1.55      comp: subst > subst > subst ).
% 2.63/1.55  
% 2.63/1.55  thf(var_decl,type,
% 2.63/1.55      var: term > $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1v2_decl,type,
% 2.63/1.55      pushprop_lem1v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1_gthm_decl,type,
% 2.63/1.55      pushprop_lem1_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axmap_decl,type,
% 2.63/1.55      axmap: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem0_gthm_decl,type,
% 2.63/1.55      pushprop_lem0_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(shinj_decl,type,
% 2.63/1.55      shinj: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem1v2_decl,type,
% 2.63/1.55      hoasinduction_lem1v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem1v2_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem1v2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasap_decl,type,
% 2.63/1.55      hoasap: subst > term > subst > term > term ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2lem_decl,type,
% 2.63/1.55      induction2lem: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2_f_decl,type,
% 2.63/1.55      hoasinduction_lem3v2_f: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axvarshift_decl,type,
% 2.63/1.55      axvarshift: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj2_decl,type,
% 2.63/1.55      hoasapinj2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapnotvar_gthm_decl,type,
% 2.63/1.55      hoasapnotvar_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj1_decl,type,
% 2.63/1.55      hoasapinj1: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(ulamvar1_decl,type,
% 2.63/1.55      ulamvar1: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2lem_lthm_decl,type,
% 2.63/1.55      induction2lem_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem3v2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(apnotvar_decl,type,
% 2.63/1.55      apnotvar: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lthm_orig_decl,type,
% 2.63/1.55      pushprop_lthm_orig: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2_f_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3v2_f_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lthm_decl,type,
% 2.63/1.55      hoasinduction_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_no_psi_cond_lthm_decl,type,
% 2.63/1.55      hoasinduction_no_psi_cond_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslaminj_decl,type,
% 2.63/1.55      hoaslaminj: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3aaa_decl,type,
% 2.63/1.55      hoasinduction_lem3aaa: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2lem_gthm_decl,type,
% 2.63/1.55      induction2lem_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3aa_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3aa_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3_decl,type,
% 2.63/1.55      hoasinduction_lem3: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem2_decl,type,
% 2.63/1.55      hoasinduction_lem2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(termmset_lthm_decl,type,
% 2.63/1.55      termmset_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem1_decl,type,
% 2.63/1.55      hoasinduction_lem1: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotap_lthm_decl,type,
% 2.63/1.55      hoaslamnotap_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1v2_lthm_decl,type,
% 2.63/1.55      pushprop_lem1v2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapnotvar_decl,type,
% 2.63/1.55      hoasapnotvar: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem0_decl,type,
% 2.63/1.55      hoasinduction_lem0: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_decl,type,
% 2.63/1.55      hoasinduction: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_gthm_decl,type,
% 2.63/1.55      hoasinduction_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axapp_decl,type,
% 2.63/1.55      axapp: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotvar_lthm_decl,type,
% 2.63/1.55      hoaslamnotvar_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem3v2_lthm_decl,type,
% 2.63/1.55      pushprop_lem3v2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3b_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3b_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(ulamvarind_decl,type,
% 2.63/1.55      ulamvarind: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction_decl,type,
% 2.63/1.55      induction: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3a_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3a_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(termmset_gthm_decl,type,
% 2.63/1.55      termmset_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3aa_decl,type,
% 2.63/1.55      hoasinduction_lem3aa: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1v2_gthm_decl,type,
% 2.63/1.55      pushprop_lem1v2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotap_gthm_decl,type,
% 2.63/1.55      hoaslamnotap_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotvar_gthm_decl,type,
% 2.63/1.55      hoaslamnotvar_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3b_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem3b_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem2v2_decl,type,
% 2.63/1.55      pushprop_lem2v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3a_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem3a_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axclos_decl,type,
% 2.63/1.55      axclos: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axassoc_decl,type,
% 2.63/1.55      axassoc: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem2v2_decl,type,
% 2.63/1.55      hoasinduction_lem2v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lthm_decl,type,
% 2.63/1.55      pushprop_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(apinj2_decl,type,
% 2.63/1.55      apinj2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(apinj1_decl,type,
% 2.63/1.55      apinj1: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj2_lthm_decl,type,
% 2.63/1.55      hoasapinj2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2a_decl,type,
% 2.63/1.55      hoasinduction_lem3v2a: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj1_lthm_decl,type,
% 2.63/1.55      hoasapinj1_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslaminj_lthm_decl,type,
% 2.63/1.55      hoaslaminj_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axvarcons_decl,type,
% 2.63/1.55      axvarcons: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslam_decl,type,
% 2.63/1.55      hoaslam: subst > ( subst > term > term ) > term ).
% 2.63/1.55  
% 2.63/1.55  thf(axscons_decl,type,
% 2.63/1.55      axscons: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem2v2_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem2v2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axidr_decl,type,
% 2.63/1.55      axidr: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1_decl,type,
% 2.63/1.55      pushprop_lem1: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(laminj_decl,type,
% 2.63/1.55      laminj: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem0_decl,type,
% 2.63/1.55      pushprop_lem0: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_gthm_decl,type,
% 2.63/1.55      pushprop_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axabs_decl,type,
% 2.63/1.55      axabs: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2a_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3v2a_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem2_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj2_gthm_decl,type,
% 2.63/1.55      hoasapinj2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_p_and_p_prime_decl,type,
% 2.63/1.55      hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem1_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem1_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(lamnotap_decl,type,
% 2.63/1.55      lamnotap: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapinj1_gthm_decl,type,
% 2.63/1.55      hoasapinj1_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotvar_decl,type,
% 2.63/1.55      hoaslamnotvar: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axidl_decl,type,
% 2.63/1.55      axidl: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslaminj_gthm_decl,type,
% 2.63/1.55      hoaslaminj_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2_lthm_decl,type,
% 2.63/1.55      induction2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem0_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem0_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(substmonoid_lthm_decl,type,
% 2.63/1.55      substmonoid_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_decl,type,
% 2.63/1.55      pushprop: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem3_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem2_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3b_decl,type,
% 2.63/1.55      hoasinduction_lem3b: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(substmonoid_decl,type,
% 2.63/1.55      substmonoid: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(lamnotvar_decl,type,
% 2.63/1.55      lamnotvar: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3a_decl,type,
% 2.63/1.55      hoasinduction_lem3a: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem1_gthm_decl,type,
% 2.63/1.55      hoasinduction_lem1_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_no_psi_cond_decl,type,
% 2.63/1.55      hoasinduction_no_psi_cond: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2_gthm_decl,type,
% 2.63/1.55      induction2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem2v2_lthm_decl,type,
% 2.63/1.55      pushprop_lem2v2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasvar_decl,type,
% 2.63/1.55      hoasvar: subst > term > subst > $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoaslamnotap_decl,type,
% 2.63/1.55      hoaslamnotap: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(substmonoid_gthm_decl,type,
% 2.63/1.55      substmonoid_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(ulamvarsh_decl,type,
% 2.63/1.55      ulamvarsh: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(induction2_decl,type,
% 2.63/1.55      induction2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem3v2_decl,type,
% 2.63/1.55      pushprop_lem3v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem2v2_gthm_decl,type,
% 2.63/1.55      pushprop_lem2v2_gthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem1_lthm_decl,type,
% 2.63/1.55      pushprop_lem1_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2_decl,type,
% 2.63/1.55      hoasinduction_lem3v2: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axshiftcons_decl,type,
% 2.63/1.55      axshiftcons: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(termmset_decl,type,
% 2.63/1.55      termmset: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_lem0_lthm_decl,type,
% 2.63/1.55      pushprop_lem0_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasapnotvar_lthm_decl,type,
% 2.63/1.55      hoasapnotvar_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lem3v2_lthm_decl,type,
% 2.63/1.55      hoasinduction_lem3v2_lthm: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(pushprop_p_and_p_prime_decl,type,
% 2.63/1.55      pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).
% 2.63/1.55  
% 2.63/1.55  thf(axvarid_decl,type,
% 2.63/1.55      axvarid: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(hoasinduction_lthm_3_decl,type,
% 2.63/1.55      hoasinduction_lthm_3: $o ).
% 2.63/1.55  
% 2.63/1.55  thf(d_term_type,type,
% 2.63/1.55      d_term: $tType ).
% 2.63/1.55  
% 2.63/1.55  thf(d_subst_type,type,
% 2.63/1.55      d_subst: $tType ).
% 2.63/1.55  
% 2.63/1.55  thf(d2term_decl,type,
% 2.63/1.55      d2term: d_term > term ).
% 2.63/1.55  
% 2.63/1.55  thf(d2subst_decl,type,
% 2.63/1.55      d2subst: d_subst > subst ).
% 2.63/1.55  
% 2.63/1.55  thf(d_one_decl,type,
% 2.63/1.55      d_one: d_term ).
% 2.63/1.55  
% 2.63/1.55  thf(d_id_decl,type,
% 2.63/1.55      d_id: d_subst ).
% 2.63/1.55  
% 2.63/1.55  thf(alg444_1,axiom,
% 2.63/1.55      ( ! [T: term] :
% 2.63/1.55        ? [DT: d_term] :
% 2.63/1.55          ( T
% 2.63/1.55          = ( d2term @ DT ) )
% 2.63/1.55      & ! [DT: d_term] : ( DT = d_one )
% 2.63/1.55      & ! [DT1: d_term,DT2: d_term] :
% 2.63/1.55          ( ( ( d2term @ DT1 )
% 2.63/1.55            = ( d2term @ DT2 ) )
% 2.63/1.55         => ( DT1 = DT2 ) )
% 2.63/1.55      & ! [S: subst] :
% 2.63/1.55        ? [DS: d_subst] :
% 2.63/1.55          ( S
% 2.63/1.55          = ( d2subst @ DS ) )
% 2.63/1.55      & ! [DS: d_subst] : ( DS = d_id )
% 2.63/1.55      & ! [DS1: d_subst,DS2: d_subst] :
% 2.63/1.55          ( ( ( d2subst @ DS1 )
% 2.63/1.55            = ( d2subst @ DS2 ) )
% 2.63/1.55         => ( DS1 = DS2 ) )
% 2.63/1.55      & ( one
% 2.63/1.55        = ( d2term @ d_one ) )
% 2.63/1.55      & ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
% 2.63/1.55        = ( d2term @ d_one ) )
% 2.63/1.55      & ( ( lam @ ( d2term @ d_one ) )
% 2.63/1.55        = ( d2term @ d_one ) )
% 2.63/1.55      & ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.63/1.55        = ( d2term @ d_one ) )
% 2.63/1.55      & ( id
% 2.63/1.55        = ( d2subst @ d_id ) )
% 2.63/1.55      & ( sh
% 2.63/1.55        = ( d2subst @ d_id ) )
% 2.63/1.55      & ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.63/1.55        = ( d2subst @ d_id ) )
% 2.63/1.55      & ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
% 2.63/1.55        = ( d2subst @ d_id ) )
% 2.63/1.55      & ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
% 2.63/1.55        = ( d2term @ d_one ) )
% 2.63/1.55      & ( hoaslam
% 2.63/1.55        = ( ^ [Bound_variable_4913: subst,Bound_variable_4915: subst > term > term] : ( d2term @ d_one ) ) )
% 2.63/1.55      & ( hoasinduction_p_and_p_prime
% 2.63/1.55        = ( ^ [P: subst > term > subst > $o,Q: term > $o] :
% 2.63/1.55            ! [X: term] :
% 2.63/1.55              ( ( Q @ X )
% 2.63/1.55              = ( P @ id @ X @ id ) ) ) )
% 2.63/1.55      & ( pushprop_p_and_p_prime
% 2.63/1.55        = ( ^ [A: term,M: subst,P: term > $o,Q: term > $o] :
% 2.63/1.55            ! [X: term] :
% 2.63/1.55              ( ( Q @ X )
% 2.63/1.55              = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) ) )
% 2.63/1.55      & ~ ( var @ ( d2term @ d_one ) )
% 2.63/1.55      & ( pushprop_lem1v2
% 2.63/1.55      <=> ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.63/1.55            ( ~ ( P @ A )
% 2.63/1.55            | ~ ! [X: term] :
% 2.63/1.55                  ( ( Q @ X )
% 2.63/1.55                  = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.63/1.55            | ( Q @ one ) ) )
% 2.63/1.55      & pushprop_lem1_gthm
% 2.63/1.55      & axmap
% 2.63/1.55      & pushprop_lem0_gthm
% 2.63/1.55      & ( shinj
% 2.63/1.55      <=> ! [A: term,B: term] :
% 2.63/1.55            ( ( ( sub @ A @ sh )
% 2.63/1.55             != ( sub @ B @ sh ) )
% 2.63/1.55            | ( A = B ) ) )
% 2.63/1.55      & hoasinduction_lem1v2
% 2.63/1.55      & hoasinduction_lem1v2_gthm
% 2.63/1.55      & ( induction2lem
% 2.63/1.55      <=> ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.63/1.55            ( ~ ! [A: term,B: term] :
% 2.63/1.55                  ( ~ ( P @ A )
% 2.63/1.55                  | ~ ( P @ B )
% 2.63/1.55                  | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.55            | ~ ! [A: term] :
% 2.63/1.55                  ( ~ ! [B: term] :
% 2.63/1.55                        ( ~ ( P @ B )
% 2.63/1.55                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.55                  | ( P @ ( lam @ A ) ) )
% 2.63/1.55            | ~ ! [B: term] :
% 2.63/1.55                  ( ~ ( var @ B )
% 2.63/1.55                  | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.63/1.55            | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) )
% 2.63/1.55      & ( hoasinduction_lem3v2_f
% 2.63/1.55      <=> ! [B: term] :
% 2.63/1.55            ~ ! [F: subst > term > term] :
% 2.63/1.55                ~ ! [A: term,M: subst] :
% 2.63/1.55                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.63/1.55                    = ( F @ M @ A ) ) )
% 2.63/1.55      & axvarshift
% 2.63/1.55      & ( hoasapinj2
% 2.63/1.55      <=> ! [A: term,B: term,C: term,D: term] :
% 2.63/1.55            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.63/1.55             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.63/1.55            | ( C = D ) ) )
% 2.63/1.55      & hoasapnotvar_gthm
% 2.63/1.55      & ( hoasapinj1
% 2.63/1.55      <=> ! [A: term,B: term,C: term,D: term] :
% 2.63/1.55            ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.63/1.55             != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.63/1.55            | ( A = B ) ) )
% 2.63/1.56      & ~ ulamvar1
% 2.63/1.56      & ( induction2lem_lthm
% 2.63/1.56      <=> ( ! [A: term,M: subst] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.63/1.56         => ( ! [A: term,M: subst] :
% 2.63/1.56                ( M
% 2.63/1.56                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.63/1.56           => ( ! [M: subst] :
% 2.63/1.56                  ( M
% 2.63/1.56                  = ( comp @ M @ id ) )
% 2.63/1.56             => ( ! [P: term > $o,Bound_variable_2140: term] :
% 2.63/1.56                    ( ~ ! [A: term] :
% 2.63/1.56                          ( ~ ( var @ A )
% 2.63/1.56                          | ( P @ A ) )
% 2.63/1.56                    | ~ ! [A: term,B: term] :
% 2.63/1.56                          ( ~ ( P @ A )
% 2.63/1.56                          | ~ ( P @ B )
% 2.63/1.56                          | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                    | ~ ! [A: term] :
% 2.63/1.56                          ( ~ ( P @ A )
% 2.63/1.56                          | ( P @ ( lam @ A ) ) )
% 2.63/1.56                    | ( P @ Bound_variable_2140 ) )
% 2.63/1.56               => ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.63/1.56                    ( ~ ! [A: term,B: term] :
% 2.63/1.56                          ( ~ ( P @ A )
% 2.63/1.56                          | ~ ( P @ B )
% 2.63/1.56                          | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                    | ~ ! [A: term] :
% 2.63/1.56                          ( ~ ! [B: term] :
% 2.63/1.56                                ( ~ ( P @ B )
% 2.63/1.56                                | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                          | ( P @ ( lam @ A ) ) )
% 2.63/1.56                    | ~ ! [B: term] :
% 2.63/1.56                          ( ~ ( var @ B )
% 2.63/1.56                          | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.63/1.56                    | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) ) ) ) ) ) )
% 2.63/1.56      & hoasinduction_lem3v2_gthm
% 2.63/1.56      & apnotvar
% 2.63/1.56      & pushprop_lthm_orig
% 2.63/1.56      & ( hoasinduction_lem3v2_f_lthm
% 2.63/1.56      <=> ! [B: term] :
% 2.63/1.56            ~ ! [F: subst > term > term] :
% 2.63/1.56                ~ ! [A: term,M: subst] :
% 2.63/1.56                    ( ( sub @ B @ ( push @ A @ M ) )
% 2.63/1.56                    = ( F @ M @ A ) ) )
% 2.63/1.56      & ( hoasinduction_lthm
% 2.63/1.56      <=> ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.63/1.56              ( ~ ! [A: term] :
% 2.63/1.56                    ( ~ ( var @ A )
% 2.63/1.56                    | ( P @ A ) )
% 2.63/1.56              | ~ ! [A: term,B: term] :
% 2.63/1.56                    ( ~ ( P @ A )
% 2.63/1.56                    | ~ ( P @ B )
% 2.63/1.56                    | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56              | ~ ! [A: term] :
% 2.63/1.56                    ( ~ ! [B: term] :
% 2.63/1.56                          ( ~ ( P @ B )
% 2.63/1.56                          | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                    | ( P @ ( lam @ A ) ) )
% 2.63/1.56              | ( P @ Bound_variable_2367 ) )
% 2.63/1.56         => ( ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.63/1.56                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56                | ~ ! [A: term,B: term] :
% 2.63/1.56                      ( ~ ( P @ id @ A @ id )
% 2.63/1.56                      | ~ ( P @ id @ B @ id )
% 2.63/1.56                      | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56                | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.63/1.56                | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.63/1.56                | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) )
% 2.63/1.56           => ( ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56                  | ~ ! [F: subst > term > term] :
% 2.63/1.56                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                        | ~ ! [A: term] :
% 2.63/1.56                              ( ~ ( P @ id @ A @ id )
% 2.63/1.56                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                  | ~ ! [B: term] :
% 2.63/1.56                        ( ~ ( P @ id @ B @ id )
% 2.63/1.56                        | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) )
% 2.63/1.56             => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                        ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                        | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56                  | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                        ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                        | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( var @ ( sub @ A @ id ) )
% 2.63/1.56                        | ( P @ id @ A @ id ) )
% 2.63/1.56                  | ~ ! [A: term,B: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ~ ( P @ id @ B @ id )
% 2.63/1.56                        | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56                  | ~ ! [F: subst > term > term] :
% 2.63/1.56                        ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                              ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                              = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                        | ~ ! [A: term] :
% 2.63/1.56                              ( ~ ( P @ id @ A @ id )
% 2.63/1.56                              | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                        | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                  | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) )
% 2.63/1.56      & ( hoasinduction_no_psi_cond_lthm
% 2.63/1.56      <=> ( ! [P: subst > term > subst > $o] :
% 2.63/1.56              ~ ! [Q: term > $o] :
% 2.63/1.56                  ~ ! [X: term] :
% 2.63/1.56                      ( ( Q @ X )
% 2.63/1.56                      = ( P @ id @ X @ id ) )
% 2.63/1.56         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.63/1.56                ( ~ ! [A: term] :
% 2.63/1.56                      ( ~ ( var @ A )
% 2.63/1.56                      | ( P @ A ) )
% 2.63/1.56                | ~ ! [A: term,B: term] :
% 2.63/1.56                      ( ~ ( P @ A )
% 2.63/1.56                      | ~ ( P @ B )
% 2.63/1.56                      | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                | ~ ! [A: term] :
% 2.63/1.56                      ( ~ ! [B: term] :
% 2.63/1.56                            ( ~ ( P @ B )
% 2.63/1.56                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                      | ( P @ ( lam @ A ) ) )
% 2.63/1.56                | ( P @ Bound_variable_2367 ) )
% 2.63/1.56           => ( ! [A: term] :
% 2.63/1.56                  ( A
% 2.63/1.56                  = ( sub @ A @ id ) )
% 2.63/1.56             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.63/1.56                    ( ~ ! [F: subst > term > term] :
% 2.63/1.56                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                          | ~ ! [A: term] :
% 2.63/1.56                                ( ~ ( P @ id @ A @ id )
% 2.63/1.56                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                    | ~ ! [X: term] :
% 2.63/1.56                          ( ( Q @ X )
% 2.63/1.56                          = ( P @ id @ X @ id ) )
% 2.63/1.56                    | ~ ! [B: term] :
% 2.63/1.56                          ( ~ ( Q @ B )
% 2.63/1.56                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.63/1.56                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.63/1.56               => ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.63/1.56                    ( ~ ! [A: term,B: term] :
% 2.63/1.56                          ( ~ ( P @ id @ A @ id )
% 2.63/1.56                          | ~ ( P @ id @ B @ id )
% 2.63/1.56                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56                    | ~ ! [F: subst > term > term] :
% 2.63/1.56                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                          | ~ ! [A: term] :
% 2.63/1.56                                ( ~ ( P @ id @ A @ id )
% 2.63/1.56                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                    | ( P @ id @ Bound_variable_3295 @ id ) ) ) ) ) ) )
% 2.63/1.56      & ( hoaslaminj
% 2.63/1.56      <=> ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                  ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.63/1.56                  = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56            | ( ( lam @ ( F @ sh @ one ) )
% 2.63/1.56             != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.63/1.56            | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.63/1.56              = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) )
% 2.63/1.56      & ( hoasinduction_lem3aaa
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3171: term] :
% 2.63/1.56            ( ~ ! [F: subst > term > term,Bound_variable_3149: term] :
% 2.63/1.56                  ( ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id )
% 2.63/1.56                  | ~ ! [Bound_variable_3072: subst,Bound_variable_3074: term,Bound_variable_3076: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ Bound_variable_3072 @ Bound_variable_3074 ) @ Bound_variable_3076 )
% 2.63/1.56                        = ( sub @ ( sub @ Bound_variable_3149 @ ( push @ Bound_variable_3074 @ Bound_variable_3072 ) ) @ Bound_variable_3076 ) )
% 2.63/1.56                  | ~ ! [Bound_variable_3090: subst,Bound_variable_3092: term,Bound_variable_3094: subst] :
% 2.63/1.56                        ( ( F @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) )
% 2.63/1.56                        = ( sub @ Bound_variable_3149 @ ( push @ ( sub @ Bound_variable_3092 @ Bound_variable_3094 ) @ ( comp @ Bound_variable_3090 @ Bound_variable_3094 ) ) ) ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( sub @ Bound_variable_3171 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3171 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.63/1.56      & induction2lem_gthm
% 2.63/1.56      & ( hoasinduction_lem3aa_lthm
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.63/1.56            ( ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.63/1.56      & ( hoasinduction_lem3
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56            | ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) )
% 2.63/1.56      & ( hoasinduction_lem2
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_2999: term,Bound_variable_3001: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56            | ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ A @ id )
% 2.63/1.56                  | ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56            | ~ ( P @ id @ Bound_variable_2999 @ id )
% 2.63/1.56            | ~ ( P @ id @ Bound_variable_3001 @ id )
% 2.63/1.56            | ( P @ id @ ( ap @ Bound_variable_2999 @ Bound_variable_3001 ) @ id ) ) )
% 2.63/1.56      & ( termmset_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) ) ) )
% 2.63/1.56      & hoasinduction_lem1
% 2.63/1.56      & hoaslamnotap_lthm
% 2.63/1.56      & ( pushprop_lem1v2_lthm
% 2.63/1.56      <=> ( ! [A: term,M: subst] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.63/1.56         => ! [P: term > $o,Q: term > $o,A: term,M: subst] :
% 2.63/1.56              ( ~ ( P @ A )
% 2.63/1.56              | ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) )
% 2.63/1.56              | ( Q @ one ) ) ) )
% 2.63/1.56      & hoasapnotvar
% 2.63/1.56      & ( hoasinduction_lem0
% 2.63/1.56      <=> ! [P: subst > term > subst > $o] :
% 2.63/1.56            ~ ! [Q: term > $o] :
% 2.63/1.56                ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ id @ X @ id ) ) )
% 2.63/1.56      & ( hoasinduction
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56            | ~ ! [A: term] :
% 2.63/1.56                  ( ~ ( var @ ( sub @ A @ id ) )
% 2.63/1.56                  | ( P @ id @ A @ id ) )
% 2.63/1.56            | ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ A @ id )
% 2.63/1.56                  | ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56            | ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ Bound_variable_3283 @ id ) ) )
% 2.63/1.56      & hoasinduction_gthm
% 2.63/1.56      & axapp
% 2.63/1.56      & hoaslamnotvar_lthm
% 2.63/1.56      & pushprop_lem3v2_lthm
% 2.63/1.56      & ( hoasinduction_lem3b_lthm
% 2.63/1.56      <=> ! [B: term] :
% 2.63/1.56            ~ ! [F: subst > term > term] :
% 2.63/1.56                ( ( F @ sh @ one )
% 2.63/1.56               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.63/1.56      & ulamvarind
% 2.63/1.56      & ( induction
% 2.63/1.56      <=> ! [P: term > $o,Bound_variable_2140: term] :
% 2.63/1.56            ( ~ ! [A: term] :
% 2.63/1.56                  ( ~ ( var @ A )
% 2.63/1.56                  | ( P @ A ) )
% 2.63/1.56            | ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ A )
% 2.63/1.56                  | ~ ( P @ B )
% 2.63/1.56                  | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56            | ~ ! [A: term] :
% 2.63/1.56                  ( ~ ( P @ A )
% 2.63/1.56                  | ( P @ ( lam @ A ) ) )
% 2.63/1.56            | ( P @ Bound_variable_2140 ) ) )
% 2.63/1.56      & ( hoasinduction_lem3a_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.63/1.56                ( ~ ! [F: subst > term > term] :
% 2.63/1.56                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                      | ~ ! [A: term] :
% 2.63/1.56                            ( ~ ( P @ id @ A @ id )
% 2.63/1.56                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( P @ id @ B @ id )
% 2.63/1.56                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.63/1.56           => ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.63/1.56                ( ~ ! [F: subst > term > term] :
% 2.63/1.56                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                      | ~ ! [A: term] :
% 2.63/1.56                            ( ~ ( P @ id @ A @ id )
% 2.63/1.56                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( P @ id @ B @ id )
% 2.63/1.56                      | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56                | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) ) ) )
% 2.63/1.56      & termmset_gthm
% 2.63/1.56      & ( hoasinduction_lem3aa
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.63/1.56            ( ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) ) )
% 2.63/1.56      & pushprop_lem1v2_gthm
% 2.63/1.56      & hoaslamnotap_gthm
% 2.63/1.56      & hoaslamnotvar_gthm
% 2.63/1.56      & hoasinduction_lem3b_gthm
% 2.63/1.56      & pushprop_lem2v2
% 2.63/1.56      & hoasinduction_lem3a_gthm
% 2.63/1.56      & axclos
% 2.63/1.56      & axassoc
% 2.63/1.56      & ( hoasinduction_lem2v2
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2820: term,Bound_variable_2822: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56            | ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ A @ id )
% 2.63/1.56                  | ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56            | ~ ! [X: term] :
% 2.63/1.56                  ( ( Q @ X )
% 2.63/1.56                  = ( P @ id @ X @ id ) )
% 2.63/1.56            | ~ ( Q @ Bound_variable_2820 )
% 2.63/1.56            | ~ ( Q @ Bound_variable_2822 )
% 2.63/1.56            | ( Q @ ( ap @ Bound_variable_2820 @ Bound_variable_2822 ) ) ) )
% 2.63/1.56      & pushprop_lthm
% 2.63/1.56      & ( apinj2
% 2.63/1.56      <=> ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56            ( ( ( ap @ A @ C )
% 2.63/1.56             != ( ap @ B @ D ) )
% 2.63/1.56            | ( C = D ) ) )
% 2.63/1.56      & ( apinj1
% 2.63/1.56      <=> ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56            ( ( ( ap @ A @ C )
% 2.63/1.56             != ( ap @ B @ D ) )
% 2.63/1.56            | ( A = B ) ) )
% 2.63/1.56      & ( hoasapinj2_lthm
% 2.63/1.56      <=> ( ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56              ( ( ( ap @ A @ C )
% 2.63/1.56               != ( ap @ B @ D ) )
% 2.63/1.56              | ( C = D ) )
% 2.63/1.56         => ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56              ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.63/1.56               != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.63/1.56              | ( C = D ) ) ) )
% 2.63/1.56      & ( hoasinduction_lem3v2a
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.63/1.56            ( ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [X: term] :
% 2.63/1.56                  ( ( Q @ X )
% 2.63/1.56                  = ( P @ id @ X @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( Q @ B )
% 2.63/1.56                  | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.63/1.56            | ( Q @ ( lam @ Bound_variable_2931 ) ) ) )
% 2.63/1.56      & ( hoasapinj1_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ( ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56                ( ( ( ap @ A @ C )
% 2.63/1.56                 != ( ap @ B @ D ) )
% 2.63/1.56                | ( A = B ) )
% 2.63/1.56           => ! [A: term,B: term,C: term,D: term] :
% 2.63/1.56                ( ( ( ap @ ( sub @ A @ id ) @ C )
% 2.63/1.56                 != ( ap @ ( sub @ B @ id ) @ D ) )
% 2.63/1.56                | ( A = B ) ) ) ) )
% 2.63/1.56      & ( hoaslaminj_lthm
% 2.63/1.56      <=> ( ! [A: term,M: subst] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.63/1.56         => ( ! [A: term,M: subst] :
% 2.63/1.56                ( M
% 2.63/1.56                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.63/1.56           => ( ! [A: term,B: term] :
% 2.63/1.56                  ( ( ( lam @ A )
% 2.63/1.56                   != ( lam @ B ) )
% 2.63/1.56                  | ( A = B ) )
% 2.63/1.56             => ! [F: subst > term > term,Bound_variable_2547: subst > term > term,Bound_variable_2549: subst,Bound_variable_2551: term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( Bound_variable_2547 @ M @ A ) @ N )
% 2.63/1.56                        = ( Bound_variable_2547 @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ( ( lam @ ( F @ sh @ one ) )
% 2.63/1.56                   != ( lam @ ( Bound_variable_2547 @ sh @ one ) ) )
% 2.63/1.56                  | ( ( F @ Bound_variable_2549 @ Bound_variable_2551 )
% 2.63/1.56                    = ( Bound_variable_2547 @ Bound_variable_2549 @ Bound_variable_2551 ) ) ) ) ) ) )
% 2.63/1.56      & ( axvarcons
% 2.63/1.56      <=> ! [A: term,M: subst] :
% 2.63/1.56            ( A
% 2.63/1.56            = ( sub @ one @ ( push @ A @ M ) ) ) )
% 2.63/1.56      & ( axscons
% 2.63/1.56      <=> ! [M: subst] :
% 2.63/1.56            ( M
% 2.63/1.56            = ( push @ ( sub @ one @ M ) @ ( comp @ sh @ M ) ) ) )
% 2.63/1.56      & hoasinduction_lem2v2_gthm
% 2.63/1.56      & ( axidr
% 2.63/1.56      <=> ! [M: subst] :
% 2.63/1.56            ( M
% 2.63/1.56            = ( comp @ M @ id ) ) )
% 2.63/1.56      & ( pushprop_lem1
% 2.63/1.56      <=> ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.63/1.56            ( ~ ( P @ A )
% 2.63/1.56            | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) )
% 2.63/1.56      & ( laminj
% 2.63/1.56      <=> ! [A: term,B: term] :
% 2.63/1.56            ( ( ( lam @ A )
% 2.63/1.56             != ( lam @ B ) )
% 2.63/1.56            | ( A = B ) ) )
% 2.63/1.56      & ( hoasinduction_lem3_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ( ! [P: subst > term > subst > $o,Bound_variable_3046: term] :
% 2.63/1.56                ( ~ ! [F: subst > term > term] :
% 2.63/1.56                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                      | ~ ! [A: term] :
% 2.63/1.56                            ( ~ ( P @ id @ A @ id )
% 2.63/1.56                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( P @ id @ B @ id )
% 2.63/1.56                      | ( P @ id @ ( sub @ Bound_variable_3046 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56                | ( P @ id @ ( lam @ ( sub @ Bound_variable_3046 @ ( push @ one @ sh ) ) ) @ id ) )
% 2.63/1.56           => ! [P: subst > term > subst > $o,Bound_variable_3211: term] :
% 2.63/1.56                ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                      ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                      | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56                | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                      ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                      | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56                | ~ ! [F: subst > term > term] :
% 2.63/1.56                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                      | ~ ! [A: term] :
% 2.63/1.56                            ( ~ ( P @ id @ A @ id )
% 2.63/1.56                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( P @ id @ B @ id )
% 2.63/1.56                      | ( P @ id @ ( sub @ Bound_variable_3211 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56                | ( P @ id @ ( lam @ Bound_variable_3211 ) @ id ) ) ) ) )
% 2.63/1.56      & ( pushprop_lem0
% 2.63/1.56      <=> ! [P: term > $o,A: term,M: subst] :
% 2.63/1.56            ~ ! [Q: term > $o] :
% 2.63/1.56                ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.63/1.56      & pushprop_gthm
% 2.63/1.56      & axabs
% 2.63/1.56      & ( hoasinduction_lem3v2a_lthm
% 2.63/1.56      <=> ( ! [B: term] :
% 2.63/1.56              ~ ! [F: subst > term > term] :
% 2.63/1.56                  ~ ! [A: term,M: subst] :
% 2.63/1.56                      ( ( sub @ B @ ( push @ A @ M ) )
% 2.63/1.56                      = ( F @ M @ A ) )
% 2.63/1.56         => ( ! [A: term] :
% 2.63/1.56                ( A
% 2.63/1.56                = ( sub @ A @ id ) )
% 2.63/1.56           => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.63/1.56                ( ~ ! [F: subst > term > term] :
% 2.63/1.56                      ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                            ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                            = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                      | ~ ! [A: term] :
% 2.63/1.56                            ( ~ ( P @ id @ A @ id )
% 2.63/1.56                            | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                      | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                | ~ ! [X: term] :
% 2.63/1.56                      ( ( Q @ X )
% 2.63/1.56                      = ( P @ id @ X @ id ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( Q @ B )
% 2.63/1.56                      | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.63/1.56                | ( Q @ ( lam @ Bound_variable_2931 ) ) ) ) ) )
% 2.63/1.56      & hoasinduction_lem2_lthm
% 2.63/1.56      & hoasapinj2_gthm
% 2.63/1.56      & hoasinduction_lem1_lthm
% 2.63/1.56      & ~ lamnotap
% 2.63/1.56      & hoasapinj1_gthm
% 2.63/1.56      & hoaslamnotvar
% 2.63/1.56      & ( axidl
% 2.63/1.56      <=> ! [M: subst] :
% 2.63/1.56            ( M
% 2.63/1.56            = ( comp @ id @ M ) ) )
% 2.63/1.56      & hoaslaminj_gthm
% 2.63/1.56      & ( induction2_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ( ! [P: term > $o,Bound_variable_2340: term,Bound_variable_2342: subst] :
% 2.63/1.56                ( ~ ! [A: term,B: term] :
% 2.63/1.56                      ( ~ ( P @ A )
% 2.63/1.56                      | ~ ( P @ B )
% 2.63/1.56                      | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                | ~ ! [A: term] :
% 2.63/1.56                      ( ~ ! [B: term] :
% 2.63/1.56                            ( ~ ( P @ B )
% 2.63/1.56                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                      | ( P @ ( lam @ A ) ) )
% 2.63/1.56                | ~ ! [B: term] :
% 2.63/1.56                      ( ~ ( var @ B )
% 2.63/1.56                      | ( P @ ( sub @ B @ Bound_variable_2342 ) ) )
% 2.63/1.56                | ( P @ ( sub @ Bound_variable_2340 @ Bound_variable_2342 ) ) )
% 2.63/1.56           => ! [P: term > $o,Bound_variable_2367: term] :
% 2.63/1.56                ( ~ ! [A: term] :
% 2.63/1.56                      ( ~ ( var @ A )
% 2.63/1.56                      | ( P @ A ) )
% 2.63/1.56                | ~ ! [A: term,B: term] :
% 2.63/1.56                      ( ~ ( P @ A )
% 2.63/1.56                      | ~ ( P @ B )
% 2.63/1.56                      | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                | ~ ! [A: term] :
% 2.63/1.56                      ( ~ ! [B: term] :
% 2.63/1.56                            ( ~ ( P @ B )
% 2.63/1.56                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                      | ( P @ ( lam @ A ) ) )
% 2.63/1.56                | ( P @ Bound_variable_2367 ) ) ) ) )
% 2.63/1.56      & ( hoasinduction_lem0_lthm
% 2.63/1.56      <=> ! [P: subst > term > subst > $o] :
% 2.63/1.56            ~ ! [Q: term > $o] :
% 2.63/1.56                ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ id @ X @ id ) ) )
% 2.63/1.56      & ( substmonoid_lthm
% 2.63/1.56      <=> ( ! [M: subst] :
% 2.63/1.56              ( M
% 2.63/1.56              = ( comp @ id @ M ) )
% 2.63/1.56         => ( ! [M: subst] :
% 2.63/1.56                ( M
% 2.63/1.56                = ( comp @ M @ id ) )
% 2.63/1.56           => ( ! [M: subst] :
% 2.63/1.56                  ( M
% 2.63/1.56                  = ( comp @ id @ M ) )
% 2.63/1.56              & ! [M: subst] :
% 2.63/1.56                  ( M
% 2.63/1.56                  = ( comp @ M @ id ) ) ) ) ) )
% 2.63/1.56      & pushprop
% 2.63/1.56      & hoasinduction_lem3_gthm
% 2.63/1.56      & hoasinduction_lem2_gthm
% 2.63/1.56      & ( hoasinduction_lem3b
% 2.63/1.56      <=> ! [B: term] :
% 2.63/1.56            ~ ! [F: subst > term > term] :
% 2.63/1.56                ( ( F @ sh @ one )
% 2.63/1.56               != ( sub @ B @ ( push @ one @ sh ) ) ) )
% 2.63/1.56      & ( substmonoid
% 2.63/1.56      <=> ( ! [M: subst] :
% 2.63/1.56              ( M
% 2.63/1.56              = ( comp @ id @ M ) )
% 2.63/1.56          & ! [M: subst] :
% 2.63/1.56              ( M
% 2.63/1.56              = ( comp @ M @ id ) ) ) )
% 2.63/1.56      & lamnotvar
% 2.63/1.56      & ( hoasinduction_lem3a
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3232: term] :
% 2.63/1.56            ( ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( sub @ Bound_variable_3232 @ ( push @ B @ id ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ ( lam @ Bound_variable_3232 ) @ id ) ) )
% 2.63/1.56      & hoasinduction_lem1_gthm
% 2.63/1.56      & ( hoasinduction_no_psi_cond
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Bound_variable_3295: term] :
% 2.63/1.56            ( ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ id @ A @ id )
% 2.63/1.56                  | ~ ( P @ id @ B @ id )
% 2.63/1.56                  | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56            | ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ( P @ id @ Bound_variable_3295 @ id ) ) )
% 2.63/1.56      & induction2_gthm
% 2.63/1.56      & pushprop_lem2v2_lthm
% 2.63/1.56      & ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
% 2.63/1.56      & ( hoaslamnotap
% 2.63/1.56      <=> ! [F: subst > term > term,Bound_variable_2603: term,Bound_variable_2605: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                  ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                  = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56            | ( ( lam @ ( F @ sh @ one ) )
% 2.63/1.56             != ( ap @ ( sub @ Bound_variable_2603 @ id ) @ Bound_variable_2605 ) ) ) )
% 2.63/1.56      & substmonoid_gthm
% 2.63/1.56      & ulamvarsh
% 2.63/1.56      & ( induction2
% 2.63/1.56      <=> ! [P: term > $o,Bound_variable_2367: term] :
% 2.63/1.56            ( ~ ! [A: term] :
% 2.63/1.56                  ( ~ ( var @ A )
% 2.63/1.56                  | ( P @ A ) )
% 2.63/1.56            | ~ ! [A: term,B: term] :
% 2.63/1.56                  ( ~ ( P @ A )
% 2.63/1.56                  | ~ ( P @ B )
% 2.63/1.56                  | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56            | ~ ! [A: term] :
% 2.63/1.56                  ( ~ ! [B: term] :
% 2.63/1.56                        ( ~ ( P @ B )
% 2.63/1.56                        | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                  | ( P @ ( lam @ A ) ) )
% 2.63/1.56            | ( P @ Bound_variable_2367 ) ) )
% 2.63/1.56      & pushprop_lem3v2
% 2.63/1.56      & pushprop_lem2v2_gthm
% 2.63/1.56      & ( pushprop_lem1_lthm
% 2.63/1.56      <=> ( ! [A: term,M: subst] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ one @ ( push @ A @ M ) ) )
% 2.63/1.56         => ( ! [A: term,M: subst] :
% 2.63/1.56                ( M
% 2.63/1.56                = ( comp @ sh @ ( push @ A @ M ) ) )
% 2.63/1.56           => ! [P: term > $o,K: term > $o,A: term,M: subst,B: term] :
% 2.63/1.56                ( ~ ( P @ A )
% 2.63/1.56                | ( K @ ( sub @ A @ ( push @ B @ M ) ) ) ) ) ) )
% 2.63/1.56      & ( hoasinduction_lem3v2
% 2.63/1.56      <=> ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.63/1.56            ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                  | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56            | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                  | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56            | ~ ! [F: subst > term > term] :
% 2.63/1.56                  ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                        ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                        = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                  | ~ ! [A: term] :
% 2.63/1.56                        ( ~ ( P @ id @ A @ id )
% 2.63/1.56                        | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                  | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56            | ~ ! [X: term] :
% 2.63/1.56                  ( ( Q @ X )
% 2.63/1.56                  = ( P @ id @ X @ id ) )
% 2.63/1.56            | ~ ! [B: term] :
% 2.63/1.56                  ( ~ ( Q @ B )
% 2.63/1.56                  | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.63/1.56            | ( Q @ ( lam @ Bound_variable_2910 ) ) ) )
% 2.63/1.56      & ( axshiftcons
% 2.63/1.56      <=> ! [A: term,M: subst] :
% 2.63/1.56            ( M
% 2.63/1.56            = ( comp @ sh @ ( push @ A @ M ) ) ) )
% 2.63/1.56      & ( termmset
% 2.63/1.56      <=> ! [A: term] :
% 2.63/1.56            ( A
% 2.63/1.56            = ( sub @ A @ id ) ) )
% 2.63/1.56      & ( pushprop_lem0_lthm
% 2.63/1.56      <=> ! [P: term > $o,A: term,M: subst] :
% 2.63/1.56            ~ ! [Q: term > $o] :
% 2.63/1.56                ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ ( sub @ X @ ( push @ A @ M ) ) ) ) )
% 2.63/1.56      & hoasapnotvar_lthm
% 2.63/1.56      & ( hoasinduction_lem3v2_lthm
% 2.63/1.56      <=> ( ! [A: term] :
% 2.63/1.56              ( A
% 2.63/1.56              = ( sub @ A @ id ) )
% 2.63/1.56         => ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2910: term] :
% 2.63/1.56              ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                    ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                    | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56              | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                    ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                    | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56              | ~ ! [F: subst > term > term] :
% 2.63/1.56                    ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                          ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                          = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                    | ~ ! [A: term] :
% 2.63/1.56                          ( ~ ( P @ id @ A @ id )
% 2.63/1.56                          | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                    | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56              | ~ ! [X: term] :
% 2.63/1.56                    ( ( Q @ X )
% 2.63/1.56                    = ( P @ id @ X @ id ) )
% 2.63/1.56              | ~ ! [B: term] :
% 2.63/1.56                    ( ~ ( Q @ B )
% 2.63/1.56                    | ( Q @ ( sub @ Bound_variable_2910 @ ( push @ B @ id ) ) ) )
% 2.63/1.56              | ( Q @ ( lam @ Bound_variable_2910 ) ) ) ) )
% 2.63/1.56      & ( axvarid
% 2.63/1.56      <=> ! [A: term] :
% 2.63/1.56            ( A
% 2.63/1.56            = ( sub @ A @ id ) ) )
% 2.63/1.56      & ( hoasinduction_lthm_3
% 2.63/1.56      <=> ( ! [P: subst > term > subst > $o] :
% 2.63/1.56              ~ ! [Q: term > $o] :
% 2.63/1.56                  ~ ! [X: term] :
% 2.63/1.56                      ( ( Q @ X )
% 2.63/1.56                      = ( P @ id @ X @ id ) )
% 2.63/1.56         => ( ! [P: term > $o,Bound_variable_2367: term] :
% 2.63/1.56                ( ~ ! [A: term] :
% 2.63/1.56                      ( ~ ( var @ A )
% 2.63/1.56                      | ( P @ A ) )
% 2.63/1.56                | ~ ! [A: term,B: term] :
% 2.63/1.56                      ( ~ ( P @ A )
% 2.63/1.56                      | ~ ( P @ B )
% 2.63/1.56                      | ( P @ ( ap @ A @ B ) ) )
% 2.63/1.56                | ~ ! [A: term] :
% 2.63/1.56                      ( ~ ! [B: term] :
% 2.63/1.56                            ( ~ ( P @ B )
% 2.63/1.56                            | ( P @ ( sub @ A @ ( push @ B @ id ) ) ) )
% 2.63/1.56                      | ( P @ ( lam @ A ) ) )
% 2.63/1.56                | ( P @ Bound_variable_2367 ) )
% 2.63/1.56           => ( ! [A: term] :
% 2.63/1.56                  ( A
% 2.63/1.56                  = ( sub @ A @ id ) )
% 2.63/1.56             => ( ! [P: subst > term > subst > $o,Q: term > $o,Bound_variable_2931: term] :
% 2.63/1.56                    ( ~ ! [F: subst > term > term] :
% 2.63/1.56                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                          | ~ ! [A: term] :
% 2.63/1.56                                ( ~ ( P @ id @ A @ id )
% 2.63/1.56                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                    | ~ ! [X: term] :
% 2.63/1.56                          ( ( Q @ X )
% 2.63/1.56                          = ( P @ id @ X @ id ) )
% 2.63/1.56                    | ~ ! [B: term] :
% 2.63/1.56                          ( ~ ( Q @ B )
% 2.63/1.56                          | ( Q @ ( sub @ Bound_variable_2931 @ ( push @ B @ id ) ) ) )
% 2.63/1.56                    | ( Q @ ( lam @ Bound_variable_2931 ) ) )
% 2.63/1.56               => ! [P: subst > term > subst > $o,Bound_variable_3283: term] :
% 2.63/1.56                    ( ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                          ( ~ ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56                          | ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56                    | ~ ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                          ( ~ ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                          | ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56                    | ~ ! [A: term] :
% 2.63/1.56                          ( ~ ( var @ ( sub @ A @ id ) )
% 2.63/1.56                          | ( P @ id @ A @ id ) )
% 2.63/1.56                    | ~ ! [A: term,B: term] :
% 2.63/1.56                          ( ~ ( P @ id @ A @ id )
% 2.63/1.56                          | ~ ( P @ id @ B @ id )
% 2.63/1.56                          | ( P @ id @ ( ap @ ( sub @ A @ id ) @ B ) @ id ) )
% 2.63/1.56                    | ~ ! [F: subst > term > term] :
% 2.63/1.56                          ( ~ ! [M: subst,A: term,N: subst] :
% 2.63/1.56                                ( ( sub @ ( F @ M @ A ) @ N )
% 2.63/1.56                                = ( F @ ( comp @ M @ N ) @ ( sub @ A @ N ) ) )
% 2.63/1.56                          | ~ ! [A: term] :
% 2.63/1.56                                ( ~ ( P @ id @ A @ id )
% 2.63/1.56                                | ( P @ id @ ( F @ id @ A ) @ id ) )
% 2.63/1.56                          | ( P @ id @ ( lam @ ( F @ sh @ one ) ) @ id ) )
% 2.63/1.56                    | ( P @ id @ Bound_variable_3283 @ id ) ) ) ) ) ) ) ) ).
% 2.63/1.56  
% 2.63/1.56  thf(hoasinduction_lem2,conjecture,
% 2.63/1.56      ( hoasinduction_lem2
% 2.63/1.56      = ( ! [P: subst > term > subst > $o] :
% 2.63/1.56            ( ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                ( ( P @ M @ A @ ( comp @ K @ N ) )
% 2.63/1.56               => ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N ) )
% 2.63/1.56           => ( ! [M: subst,A: term,N: subst,K: subst] :
% 2.63/1.56                  ( ( P @ ( comp @ M @ K ) @ ( sub @ A @ K ) @ N )
% 2.63/1.56                 => ( P @ M @ A @ ( comp @ K @ N ) ) )
% 2.63/1.56             => ( ! [A: term,B: term] :
% 2.63/1.56                    ( ( P @ id @ A @ id )
% 2.63/1.56                   => ( ( P @ id @ B @ id )
% 2.63/1.56                     => ( P @ id @ ( hoasap @ id @ A @ id @ B ) @ id ) ) )
% 2.63/1.56               => ! [A: term,B: term] :
% 2.63/1.56                    ( ( P @ id @ A @ id )
% 2.63/1.56                   => ( ( P @ id @ B @ id )
% 2.63/1.56                     => ( P @ id @ ( ap @ A @ B ) @ id ) ) ) ) ) ) ) ) ).
% 2.63/1.56  ------------------------
% 2.63/1.58  % (7358)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_7038 for (2999ds/4Mi)
% 2.63/1.58  % (7357)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/183Mi)
% 2.63/1.58  % (7358)Instruction limit reached!
% 2.63/1.58  % (7358)------------------------------
% 2.63/1.58  % (7358)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.58  % (7358)Termination reason: Unknown
% 2.63/1.58  % (7358)Termination phase: shuffling
% 2.63/1.58  
% 2.63/1.58  % (7358)Memory used [KB]: 1407
% 2.63/1.58  % (7358)Time elapsed: 0.003 s
% 2.63/1.58  % (7358)Instructions burned: 6 (million)
% 2.63/1.58  % (7358)------------------------------
% 2.63/1.58  % (7358)------------------------------
% 2.63/1.59  % (7359)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_7038 for (2999ds/27Mi)
% 2.63/1.59  % (7360)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/2Mi)
% 2.63/1.59  % (7361)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_7038 for (2999ds/2Mi)
% 2.63/1.59  % (7362)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_7038 for (2999ds/275Mi)
% 2.63/1.59  % (7363)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/18Mi)
% 2.63/1.59  % (7360)Instruction limit reached!
% 2.63/1.59  % (7360)------------------------------
% 2.63/1.59  % (7360)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.59  % (7360)Termination reason: Unknown
% 2.63/1.59  % (7360)Termination phase: shuffling
% 2.63/1.59  
% 2.63/1.59  % (7360)Memory used [KB]: 1151
% 2.63/1.59  % (7360)Time elapsed: 0.003 s
% 2.63/1.59  % (7360)Instructions burned: 2 (million)
% 2.63/1.59  % (7360)------------------------------
% 2.63/1.59  % (7360)------------------------------
% 2.63/1.59  % (7361)Instruction limit reached!
% 2.63/1.59  % (7361)------------------------------
% 2.63/1.59  % (7361)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.59  % (7361)Termination reason: Unknown
% 2.63/1.59  % (7361)Termination phase: shuffling
% 2.63/1.59  
% 2.63/1.59  % (7361)Memory used [KB]: 1151
% 2.63/1.59  % (7361)Time elapsed: 0.003 s
% 2.63/1.59  % (7361)Instructions burned: 2 (million)
% 2.63/1.59  % (7361)------------------------------
% 2.63/1.59  % (7361)------------------------------
% 2.63/1.59  % (7364)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/3Mi)
% 2.63/1.60  % (7364)Instruction limit reached!
% 2.63/1.60  % (7364)------------------------------
% 2.63/1.60  % (7364)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.63/1.60  % (7364)Termination reason: Unknown
% 2.63/1.60  % (7364)Termination phase: shuffling
% 2.63/1.60  
% 2.63/1.60  % (7364)Memory used [KB]: 1279
% 2.63/1.60  % (7364)Time elapsed: 0.003 s
% 2.63/1.60  % (7364)Instructions burned: 4 (million)
% 2.63/1.60  % (7364)------------------------------
% 2.63/1.60  % (7364)------------------------------
% 2.70/1.60  % (7363)Instruction limit reached!
% 2.70/1.60  % (7363)------------------------------
% 2.70/1.60  % (7363)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.60  % (7363)Termination reason: Unknown
% 2.70/1.60  % (7363)Termination phase: shuffling
% 2.70/1.60  
% 2.70/1.60  % (7363)Memory used [KB]: 2046
% 2.70/1.60  % (7363)Time elapsed: 0.013 s
% 2.70/1.60  % (7363)Instructions burned: 19 (million)
% 2.70/1.60  % (7363)------------------------------
% 2.70/1.60  % (7363)------------------------------
% 2.70/1.61  % (7359)Instruction limit reached!
% 2.70/1.61  % (7359)------------------------------
% 2.70/1.61  % (7359)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.61  % (7359)Termination reason: Unknown
% 2.70/1.61  % (7359)Termination phase: Property scanning
% 2.70/1.61  
% 2.70/1.61  % (7359)Memory used [KB]: 2174
% 2.70/1.61  % (7359)Time elapsed: 0.018 s
% 2.70/1.61  % (7359)Instructions burned: 28 (million)
% 2.70/1.61  % (7359)------------------------------
% 2.70/1.61  % (7359)------------------------------
% 2.70/1.61  % (7367)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_7038 for (2999ds/3Mi)
% 2.70/1.61  % (7367)Instruction limit reached!
% 2.70/1.61  % (7367)------------------------------
% 2.70/1.61  % (7367)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.61  % (7367)Termination reason: Unknown
% 2.70/1.61  % (7367)Termination phase: shuffling
% 2.70/1.61  
% 2.70/1.61  % (7367)Memory used [KB]: 1279
% 2.70/1.61  % (7367)Time elapsed: 0.003 s
% 2.70/1.61  % (7367)Instructions burned: 4 (million)
% 2.70/1.61  % (7367)------------------------------
% 2.70/1.61  % (7367)------------------------------
% 2.70/1.61  % (7365)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_7038 for (2999ds/37Mi)
% 2.70/1.61  % (7366)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_7038 for (2999ds/15Mi)
% 2.70/1.61  % (7362)Refutation not found, incomplete strategy
% 2.70/1.61  % (7362)------------------------------
% 2.70/1.61  % (7362)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.61  % (7362)Termination reason: Refutation not found, incomplete strategy
% 2.70/1.61  
% 2.70/1.61  
% 2.70/1.61  % (7362)Memory used [KB]: 6780
% 2.70/1.61  % (7362)Time elapsed: 0.026 s
% 2.70/1.61  % (7362)Instructions burned: 42 (million)
% 2.70/1.61  % (7362)------------------------------
% 2.70/1.61  % (7362)------------------------------
% 2.70/1.62  % (7366)Instruction limit reached!
% 2.70/1.62  % (7366)------------------------------
% 2.70/1.62  % (7366)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.62  % (7366)Termination reason: Unknown
% 2.70/1.62  % (7366)Termination phase: shuffling
% 2.70/1.62  
% 2.70/1.62  % (7366)Memory used [KB]: 1791
% 2.70/1.62  % (7366)Time elapsed: 0.010 s
% 2.70/1.62  % (7366)Instructions burned: 15 (million)
% 2.70/1.62  % (7366)------------------------------
% 2.70/1.62  % (7366)------------------------------
% 2.70/1.62  % (7370)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/16Mi)
% 2.70/1.62  % (7368)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_7038 for (2999ds/1041Mi)
% 2.70/1.62  % (7370)Instruction limit reached!
% 2.70/1.62  % (7370)------------------------------
% 2.70/1.62  % (7370)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.62  % (7370)Termination reason: Unknown
% 2.70/1.62  % (7370)Termination phase: shuffling
% 2.70/1.62  
% 2.70/1.62  % (7370)Memory used [KB]: 1918
% 2.70/1.62  % (7370)Time elapsed: 0.007 s
% 2.70/1.62  % (7370)Instructions burned: 17 (million)
% 2.70/1.62  % (7370)------------------------------
% 2.70/1.62  % (7370)------------------------------
% 2.70/1.62  % (7369)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/7Mi)
% 2.70/1.63  % (7365)Instruction limit reached!
% 2.70/1.63  % (7365)------------------------------
% 2.70/1.63  % (7365)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.63  % (7365)Termination reason: Unknown
% 2.70/1.63  % (7365)Termination phase: shuffling
% 2.70/1.63  
% 2.70/1.63  % (7365)Memory used [KB]: 1918
% 2.70/1.63  % (7365)Time elapsed: 0.020 s
% 2.70/1.63  % (7365)Instructions burned: 37 (million)
% 2.70/1.63  % (7365)------------------------------
% 2.70/1.63  % (7365)------------------------------
% 2.70/1.63  % (7369)Instruction limit reached!
% 2.70/1.63  % (7369)------------------------------
% 2.70/1.63  % (7369)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.63  % (7369)Termination reason: Unknown
% 2.70/1.63  % (7369)Termination phase: shuffling
% 2.70/1.63  
% 2.70/1.63  % (7369)Memory used [KB]: 1535
% 2.70/1.63  % (7369)Time elapsed: 0.006 s
% 2.70/1.63  % (7369)Instructions burned: 8 (million)
% 2.70/1.63  % (7369)------------------------------
% 2.70/1.63  % (7369)------------------------------
% 2.70/1.63  % (7373)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/7Mi)
% 2.70/1.63  % (7371)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_7038 for (2999ds/3Mi)
% 2.70/1.63  % (7372)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_7038 for (2999ds/3Mi)
% 2.70/1.63  % (7371)Instruction limit reached!
% 2.70/1.63  % (7371)------------------------------
% 2.70/1.63  % (7371)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.63  % (7371)Termination reason: Unknown
% 2.70/1.63  % (7371)Termination phase: shuffling
% 2.70/1.63  
% 2.70/1.63  % (7371)Memory used [KB]: 1279
% 2.70/1.63  % (7371)Time elapsed: 0.004 s
% 2.70/1.63  % (7371)Instructions burned: 4 (million)
% 2.70/1.63  % (7371)------------------------------
% 2.70/1.63  % (7371)------------------------------
% 2.70/1.63  % (7373)Instruction limit reached!
% 2.70/1.63  % (7373)------------------------------
% 2.70/1.63  % (7373)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.63  % (7373)Termination reason: Unknown
% 2.70/1.63  % (7373)Termination phase: shuffling
% 2.70/1.63  
% 2.70/1.63  % (7373)Memory used [KB]: 1407
% 2.70/1.63  % (7373)Time elapsed: 0.004 s
% 2.70/1.63  % (7373)Instructions burned: 8 (million)
% 2.70/1.63  % (7373)------------------------------
% 2.70/1.63  % (7373)------------------------------
% 2.70/1.64  % (7357)Instruction limit reached!
% 2.70/1.64  % (7357)------------------------------
% 2.70/1.64  % (7357)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.64  % (7357)Termination reason: Unknown
% 2.70/1.64  % (7357)Termination phase: Property scanning
% 2.70/1.64  
% 2.70/1.64  % (7357)Memory used [KB]: 4349
% 2.70/1.64  % (7357)Time elapsed: 0.054 s
% 2.70/1.64  % (7357)Instructions burned: 184 (million)
% 2.70/1.64  % (7357)------------------------------
% 2.70/1.64  % (7357)------------------------------
% 2.70/1.64  % (7372)Instruction limit reached!
% 2.70/1.64  % (7372)------------------------------
% 2.70/1.64  % (7372)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.64  % (7372)Termination reason: Unknown
% 2.70/1.64  % (7372)Termination phase: shuffling
% 2.70/1.64  
% 2.70/1.64  % (7372)Memory used [KB]: 1279
% 2.70/1.64  % (7372)Time elapsed: 0.004 s
% 2.70/1.64  % (7372)Instructions burned: 4 (million)
% 2.70/1.64  % (7372)------------------------------
% 2.70/1.64  % (7372)------------------------------
% 2.70/1.64  % (7374)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/3Mi)
% 2.70/1.64  % (7375)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/4Mi)
% 2.70/1.64  % (7376)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/18Mi)
% 2.70/1.65  % (7378)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/6Mi)
% 2.70/1.65  % (7374)Instruction limit reached!
% 2.70/1.65  % (7374)------------------------------
% 2.70/1.65  % (7374)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.65  % (7374)Termination reason: Unknown
% 2.70/1.65  % (7374)Termination phase: shuffling
% 2.70/1.65  
% 2.70/1.65  % (7374)Memory used [KB]: 1279
% 2.70/1.65  % (7374)Time elapsed: 0.004 s
% 2.70/1.65  % (7374)Instructions burned: 4 (million)
% 2.70/1.65  % (7374)------------------------------
% 2.70/1.65  % (7374)------------------------------
% 2.70/1.65  % (7375)Instruction limit reached!
% 2.70/1.65  % (7375)------------------------------
% 2.70/1.65  % (7375)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.65  % (7375)Termination reason: Unknown
% 2.70/1.65  % (7375)Termination phase: shuffling
% 2.70/1.65  
% 2.70/1.65  % (7375)Memory used [KB]: 1279
% 2.70/1.65  % (7375)Time elapsed: 0.004 s
% 2.70/1.65  % (7375)Instructions burned: 4 (million)
% 2.70/1.65  % (7375)------------------------------
% 2.70/1.65  % (7375)------------------------------
% 2.70/1.65  % (7378)Instruction limit reached!
% 2.70/1.65  % (7378)------------------------------
% 2.70/1.65  % (7378)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.65  % (7378)Termination reason: Unknown
% 2.70/1.65  % (7378)Termination phase: shuffling
% 2.70/1.65  
% 2.70/1.65  % (7378)Memory used [KB]: 1407
% 2.70/1.65  % (7378)Time elapsed: 0.003 s
% 2.70/1.65  % (7378)Instructions burned: 6 (million)
% 2.70/1.65  % (7378)------------------------------
% 2.70/1.65  % (7378)------------------------------
% 2.70/1.65  % (7376)Instruction limit reached!
% 2.70/1.65  % (7376)------------------------------
% 2.70/1.65  % (7376)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.65  % (7376)Termination reason: Unknown
% 2.70/1.65  % (7376)Termination phase: shuffling
% 2.70/1.65  
% 2.70/1.65  % (7376)Memory used [KB]: 2046
% 2.70/1.65  % (7376)Time elapsed: 0.008 s
% 2.70/1.65  % (7376)Instructions burned: 19 (million)
% 2.70/1.65  % (7376)------------------------------
% 2.70/1.65  % (7376)------------------------------
% 2.70/1.65  % (7377)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/710Mi)
% 2.70/1.65  % (7379)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_7038 for (2999ds/902Mi)
% 2.70/1.66  % (7382)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_7038 for (2999ds/6Mi)
% 2.70/1.66  % (7382)Instruction limit reached!
% 2.70/1.66  % (7382)------------------------------
% 2.70/1.66  % (7382)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.66  % (7382)Termination reason: Unknown
% 2.70/1.66  % (7382)Termination phase: shuffling
% 2.70/1.66  
% 2.70/1.66  % (7382)Memory used [KB]: 1407
% 2.70/1.66  % (7382)Time elapsed: 0.003 s
% 2.70/1.66  % (7382)Instructions burned: 8 (million)
% 2.70/1.66  % (7382)------------------------------
% 2.70/1.66  % (7382)------------------------------
% 2.70/1.66  % (7380)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_7038 for (2999ds/21Mi)
% 2.70/1.66  % (7383)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/377Mi)
% 2.70/1.66  % (7381)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/5Mi)
% 2.70/1.67  % (7380)Instruction limit reached!
% 2.70/1.67  % (7380)------------------------------
% 2.70/1.67  % (7380)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.67  % (7380)Termination reason: Unknown
% 2.70/1.67  % (7380)Termination phase: shuffling
% 2.70/1.67  
% 2.70/1.67  % (7380)Memory used [KB]: 2174
% 2.70/1.67  % (7380)Time elapsed: 0.009 s
% 2.70/1.67  % (7380)Instructions burned: 21 (million)
% 2.70/1.67  % (7381)Instruction limit reached!
% 2.70/1.67  % (7381)------------------------------
% 2.70/1.67  % (7381)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.67  % (7380)------------------------------
% 2.70/1.67  % (7380)------------------------------
% 2.70/1.67  % (7381)Termination reason: Unknown
% 2.70/1.67  % (7381)Termination phase: shuffling
% 2.70/1.67  
% 2.70/1.67  % (7381)Memory used [KB]: 1407
% 2.70/1.67  % (7381)Time elapsed: 0.005 s
% 2.70/1.67  % (7381)Instructions burned: 5 (million)
% 2.70/1.67  % (7381)------------------------------
% 2.70/1.67  % (7381)------------------------------
% 2.70/1.67  % (7384)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_7038 for (2999ds/779Mi)
% 2.70/1.68  % (7385)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_7038 for (2999ds/19Mi)
% 2.70/1.68  % (7385)Instruction limit reached!
% 2.70/1.68  % (7385)------------------------------
% 2.70/1.68  % (7385)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.68  % (7385)Termination reason: Unknown
% 2.70/1.68  % (7385)Termination phase: shuffling
% 2.70/1.68  
% 2.70/1.68  % (7385)Memory used [KB]: 1663
% 2.70/1.68  % (7385)Time elapsed: 0.008 s
% 2.70/1.68  % (7385)Instructions burned: 21 (million)
% 2.70/1.68  % (7385)------------------------------
% 2.70/1.68  % (7385)------------------------------
% 2.70/1.68  % (7386)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_7038 for (2999ds/879Mi)
% 2.70/1.69  % (7387)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_7038 for (2998ds/17Mi)
% 2.70/1.70  % (7387)Instruction limit reached!
% 2.70/1.70  % (7387)------------------------------
% 2.70/1.70  % (7387)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.70  % (7387)Termination reason: Unknown
% 2.70/1.70  % (7387)Termination phase: shuffling
% 2.70/1.70  
% 2.70/1.70  % (7387)Memory used [KB]: 2046
% 2.70/1.70  % (7387)Time elapsed: 0.007 s
% 2.70/1.70  % (7387)Instructions burned: 18 (million)
% 2.70/1.70  % (7387)------------------------------
% 2.70/1.70  % (7387)------------------------------
% 2.70/1.71  % (7388)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_7038 for (2998ds/3Mi)
% 2.70/1.71  % (7388)Instruction limit reached!
% 2.70/1.71  % (7388)------------------------------
% 2.70/1.71  % (7388)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.71  % (7388)Termination reason: Unknown
% 2.70/1.71  % (7388)Termination phase: shuffling
% 2.70/1.71  
% 2.70/1.71  % (7388)Memory used [KB]: 1279
% 2.70/1.71  % (7388)Time elapsed: 0.003 s
% 2.70/1.71  % (7388)Instructions burned: 4 (million)
% 2.70/1.71  % (7388)------------------------------
% 2.70/1.71  % (7388)------------------------------
% 2.70/1.72  % (7389)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_7038 for (2998ds/30Mi)
% 2.70/1.73  % (7389)Instruction limit reached!
% 2.70/1.73  % (7389)------------------------------
% 2.70/1.73  % (7389)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.73  % (7389)Termination reason: Unknown
% 2.70/1.73  % (7389)Termination phase: Property scanning
% 2.70/1.73  
% 2.70/1.73  % (7389)Memory used [KB]: 2174
% 2.70/1.73  % (7389)Time elapsed: 0.012 s
% 2.70/1.73  % (7389)Instructions burned: 31 (million)
% 2.70/1.73  % (7389)------------------------------
% 2.70/1.73  % (7389)------------------------------
% 2.70/1.73  % (7379)Refutation not found, incomplete strategy
% 2.70/1.73  % (7379)------------------------------
% 2.70/1.73  % (7379)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.73  % (7379)Termination reason: Refutation not found, incomplete strategy
% 2.70/1.73  
% 2.70/1.73  
% 2.70/1.73  % (7379)Memory used [KB]: 9466
% 2.70/1.73  % (7379)Time elapsed: 0.083 s
% 2.70/1.73  % (7379)Instructions burned: 206 (million)
% 2.70/1.73  % (7379)------------------------------
% 2.70/1.73  % (7379)------------------------------
% 2.70/1.74  % (7390)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_7038 for (2998ds/127Mi)
% 2.70/1.75  % (7391)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_7038 for (2998ds/100Mi)
% 2.70/1.77  % (7383)Instruction limit reached!
% 2.70/1.77  % (7383)------------------------------
% 2.70/1.77  % (7383)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.77  % (7383)Termination reason: Unknown
% 2.70/1.77  % (7383)Termination phase: Saturation
% 2.70/1.77  
% 2.70/1.77  % (7383)Memory used [KB]: 10106
% 2.70/1.77  % (7383)Time elapsed: 0.108 s
% 2.70/1.77  % (7383)Instructions burned: 378 (million)
% 2.70/1.77  % (7383)------------------------------
% 2.70/1.77  % (7383)------------------------------
% 2.70/1.77  % (7391)Instruction limit reached!
% 2.70/1.77  % (7391)------------------------------
% 2.70/1.77  % (7391)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.77  % (7391)Termination reason: Unknown
% 2.70/1.77  % (7391)Termination phase: Saturation
% 2.70/1.77  
% 2.70/1.77  % (7391)Memory used [KB]: 6524
% 2.70/1.77  % (7391)Time elapsed: 0.028 s
% 2.70/1.77  % (7391)Instructions burned: 100 (million)
% 2.70/1.77  % (7391)------------------------------
% 2.70/1.77  % (7391)------------------------------
% 2.70/1.78  % (7392)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_7038 for (2998ds/3Mi)
% 2.70/1.78  % (7392)Instruction limit reached!
% 2.70/1.78  % (7392)------------------------------
% 2.70/1.78  % (7392)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.78  % (7392)Termination reason: Unknown
% 2.70/1.78  % (7392)Termination phase: shuffling
% 2.70/1.78  
% 2.70/1.78  % (7392)Memory used [KB]: 1279
% 2.70/1.78  % (7392)Time elapsed: 0.002 s
% 2.70/1.78  % (7392)Instructions burned: 3 (million)
% 2.70/1.78  % (7392)------------------------------
% 2.70/1.78  % (7392)------------------------------
% 2.70/1.78  % (7390)Instruction limit reached!
% 2.70/1.78  % (7390)------------------------------
% 2.70/1.78  % (7390)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.78  % (7390)Termination reason: Unknown
% 2.70/1.78  % (7390)Termination phase: Property scanning
% 2.70/1.78  
% 2.70/1.78  % (7390)Memory used [KB]: 4221
% 2.70/1.78  % (7390)Time elapsed: 0.040 s
% 2.70/1.78  % (7390)Instructions burned: 128 (million)
% 2.70/1.78  % (7390)------------------------------
% 2.70/1.78  % (7390)------------------------------
% 2.70/1.78  % (7393)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_7038 for (2997ds/20Mi)
% 2.70/1.79  % (7394)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_7038 for (2997ds/86Mi)
% 2.70/1.79  % (7393)Instruction limit reached!
% 2.70/1.79  % (7393)------------------------------
% 2.70/1.79  % (7393)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.79  % (7393)Termination reason: Unknown
% 2.70/1.79  % (7393)Termination phase: shuffling
% 2.70/1.79  
% 2.70/1.79  % (7393)Memory used [KB]: 2046
% 2.70/1.79  % (7393)Time elapsed: 0.009 s
% 2.70/1.79  % (7393)Instructions burned: 22 (million)
% 2.70/1.79  % (7393)------------------------------
% 2.70/1.79  % (7393)------------------------------
% 2.70/1.79  % (7395)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_7038 for (2997ds/107Mi)
% 2.70/1.80  % (7396)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_7038 for (2997ds/39Mi)
% 2.70/1.81  % (7396)Instruction limit reached!
% 2.70/1.81  % (7396)------------------------------
% 2.70/1.81  % (7396)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.81  % (7396)Termination reason: Unknown
% 2.70/1.81  % (7396)Termination phase: Property scanning
% 2.70/1.81  
% 2.70/1.81  % (7396)Memory used [KB]: 1918
% 2.70/1.81  % (7396)Time elapsed: 0.013 s
% 2.70/1.81  % (7396)Instructions burned: 40 (million)
% 2.70/1.81  % (7396)------------------------------
% 2.70/1.81  % (7396)------------------------------
% 2.70/1.81  % (7394)Instruction limit reached!
% 2.70/1.81  % (7394)------------------------------
% 2.70/1.81  % (7394)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.81  % (7394)Termination reason: Unknown
% 2.70/1.81  % (7394)Termination phase: Preprocessing 3
% 2.70/1.81  
% 2.70/1.81  % (7394)Memory used [KB]: 4093
% 2.70/1.81  % (7394)Time elapsed: 0.026 s
% 2.70/1.81  % (7394)Instructions burned: 86 (million)
% 2.70/1.81  % (7394)------------------------------
% 2.70/1.81  % (7394)------------------------------
% 2.70/1.82  % (7397)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_7038 for (2997ds/448Mi)
% 2.70/1.82  % (7398)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_7038 for (2997ds/46Mi)
% 2.70/1.82  % (7395)Instruction limit reached!
% 2.70/1.82  % (7395)------------------------------
% 2.70/1.82  % (7395)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.82  % (7395)Termination reason: Unknown
% 2.70/1.82  % (7395)Termination phase: Property scanning
% 2.70/1.82  
% 2.70/1.82  % (7395)Memory used [KB]: 4477
% 2.70/1.82  % (7395)Time elapsed: 0.035 s
% 2.70/1.82  % (7395)Instructions burned: 107 (million)
% 2.70/1.82  % (7395)------------------------------
% 2.70/1.82  % (7395)------------------------------
% 2.70/1.83  % (7399)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_7038 for (2997ds/98Mi)
% 2.70/1.84  % (7398)Instruction limit reached!
% 2.70/1.84  % (7398)------------------------------
% 2.70/1.84  % (7398)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.84  % (7398)Termination reason: Unknown
% 2.70/1.84  % (7398)Termination phase: Preprocessing 1
% 2.70/1.84  
% 2.70/1.84  % (7398)Memory used [KB]: 2302
% 2.70/1.84  % (7398)Time elapsed: 0.014 s
% 2.70/1.84  % (7398)Instructions burned: 46 (million)
% 2.70/1.84  % (7398)------------------------------
% 2.70/1.84  % (7398)------------------------------
% 2.70/1.84  % (7400)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_7038 for (2997ds/507Mi)
% 2.70/1.85  % (7384)Instruction limit reached!
% 2.70/1.85  % (7384)------------------------------
% 2.70/1.85  % (7384)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.85  % (7384)Termination reason: Unknown
% 2.70/1.85  % (7384)Termination phase: Saturation
% 2.70/1.85  
% 2.70/1.85  % (7384)Memory used [KB]: 6780
% 2.70/1.85  % (7384)Time elapsed: 0.188 s
% 2.70/1.85  % (7384)Instructions burned: 782 (million)
% 2.70/1.85  % (7384)------------------------------
% 2.70/1.85  % (7384)------------------------------
% 2.70/1.86  % (7399)Instruction limit reached!
% 2.70/1.86  % (7399)------------------------------
% 2.70/1.86  % (7399)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.86  % (7399)Termination reason: Unknown
% 2.70/1.86  % (7399)Termination phase: Saturation
% 2.70/1.86  
% 2.70/1.86  % (7399)Memory used [KB]: 2046
% 2.70/1.86  % (7399)Time elapsed: 0.029 s
% 2.70/1.86  % (7399)Instructions burned: 101 (million)
% 2.70/1.86  % (7399)------------------------------
% 2.70/1.86  % (7399)------------------------------
% 2.70/1.86  % (7401)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_7038 for (2997ds/149Mi)
% 2.70/1.87  % (7402)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/39Mi)
% 2.70/1.88  % (7402)Instruction limit reached!
% 2.70/1.88  % (7402)------------------------------
% 2.70/1.88  % (7402)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.88  % (7402)Termination reason: Unknown
% 2.70/1.88  % (7402)Termination phase: Preprocessing 1
% 2.70/1.88  
% 2.70/1.88  % (7402)Memory used [KB]: 2302
% 2.70/1.88  % (7402)Time elapsed: 0.014 s
% 2.70/1.88  % (7402)Instructions burned: 39 (million)
% 2.70/1.88  % (7402)------------------------------
% 2.70/1.88  % (7402)------------------------------
% 2.70/1.89  % (7403)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_7038 for (2996ds/6Mi)
% 2.70/1.90  % (7403)Instruction limit reached!
% 2.70/1.90  % (7403)------------------------------
% 2.70/1.90  % (7403)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.90  % (7403)Termination reason: Unknown
% 2.70/1.90  % (7403)Termination phase: shuffling
% 2.70/1.90  
% 2.70/1.90  % (7403)Memory used [KB]: 1407
% 2.70/1.90  % (7403)Time elapsed: 0.004 s
% 2.70/1.90  % (7403)Instructions burned: 7 (million)
% 2.70/1.90  % (7403)------------------------------
% 2.70/1.90  % (7403)------------------------------
% 2.70/1.90  % (7377)Instruction limit reached!
% 2.70/1.90  % (7377)------------------------------
% 2.70/1.90  % (7377)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.90  % (7377)Termination reason: Unknown
% 2.70/1.90  % (7377)Termination phase: Saturation
% 2.70/1.90  
% 2.70/1.90  % (7377)Memory used [KB]: 11001
% 2.70/1.90  % (7377)Time elapsed: 0.246 s
% 2.70/1.90  % (7377)Instructions burned: 711 (million)
% 2.70/1.90  % (7377)------------------------------
% 2.70/1.90  % (7377)------------------------------
% 2.70/1.91  % (7401)Instruction limit reached!
% 2.70/1.91  % (7401)------------------------------
% 2.70/1.91  % (7401)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.91  % (7401)Termination reason: Unknown
% 2.70/1.91  % (7401)Termination phase: Property scanning
% 2.70/1.91  
% 2.70/1.91  % (7401)Memory used [KB]: 7931
% 2.70/1.91  % (7401)Time elapsed: 0.043 s
% 2.70/1.91  % (7401)Instructions burned: 150 (million)
% 2.70/1.91  % (7401)------------------------------
% 2.70/1.91  % (7401)------------------------------
% 2.70/1.91  % (7404)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_7038 for (2996ds/1087Mi)
% 2.70/1.91  % (7405)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/47Mi)
% 2.70/1.91  % (7368)Instruction limit reached!
% 2.70/1.91  % (7368)------------------------------
% 2.70/1.91  % (7368)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.91  % (7368)Termination reason: Unknown
% 2.70/1.91  % (7368)Termination phase: Saturation
% 2.70/1.91  
% 2.70/1.91  % (7368)Memory used [KB]: 7675
% 2.70/1.91  % (7368)Time elapsed: 0.293 s
% 2.70/1.91  % (7368)Instructions burned: 1042 (million)
% 2.70/1.91  % (7368)------------------------------
% 2.70/1.91  % (7368)------------------------------
% 2.70/1.92  % (7406)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_7038 for (2996ds/44Mi)
% 2.70/1.92  % (7407)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_7038 for (2996ds/432Mi)
% 2.70/1.92  % (7405)Instruction limit reached!
% 2.70/1.92  % (7405)------------------------------
% 2.70/1.92  % (7405)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.92  % (7405)Termination reason: Unknown
% 2.70/1.92  % (7405)Termination phase: Naming
% 2.70/1.92  
% 2.70/1.92  % (7405)Memory used [KB]: 2686
% 2.70/1.92  % (7405)Time elapsed: 0.016 s
% 2.70/1.92  % (7405)Instructions burned: 47 (million)
% 2.70/1.92  % (7405)------------------------------
% 2.70/1.92  % (7405)------------------------------
% 2.70/1.92  % (7400)Refutation not found, incomplete strategy
% 2.70/1.92  % (7400)------------------------------
% 2.70/1.92  % (7400)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.92  % (7400)Termination reason: Refutation not found, incomplete strategy
% 2.70/1.92  
% 2.70/1.92  
% 2.70/1.92  % (7400)Memory used [KB]: 9850
% 2.70/1.92  % (7400)Time elapsed: 0.079 s
% 2.70/1.92  % (7400)Instructions burned: 281 (million)
% 2.70/1.92  % (7400)------------------------------
% 2.70/1.92  % (7400)------------------------------
% 2.70/1.93  % (7406)Instruction limit reached!
% 2.70/1.93  % (7406)------------------------------
% 2.70/1.93  % (7406)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.93  % (7406)Termination reason: Unknown
% 2.70/1.93  % (7406)Termination phase: Property scanning
% 2.70/1.93  
% 2.70/1.93  % (7406)Memory used [KB]: 1918
% 2.70/1.93  % (7406)Time elapsed: 0.013 s
% 2.70/1.93  % (7406)Instructions burned: 44 (million)
% 2.70/1.93  % (7406)------------------------------
% 2.70/1.93  % (7406)------------------------------
% 2.70/1.93  % (7408)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/62Mi)
% 2.70/1.93  % (7409)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_7038 for (2996ds/31Mi)
% 2.70/1.94  % (7410)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/96Mi)
% 2.70/1.94  % (7409)Instruction limit reached!
% 2.70/1.94  % (7409)------------------------------
% 2.70/1.94  % (7409)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.94  % (7409)Termination reason: Unknown
% 2.70/1.94  % (7409)Termination phase: Property scanning
% 2.70/1.94  
% 2.70/1.94  % (7409)Memory used [KB]: 2174
% 2.70/1.94  % (7409)Time elapsed: 0.011 s
% 2.70/1.94  % (7409)Instructions burned: 34 (million)
% 2.70/1.94  % (7409)------------------------------
% 2.70/1.94  % (7409)------------------------------
% 2.70/1.95  % (7408)Instruction limit reached!
% 2.70/1.95  % (7408)------------------------------
% 2.70/1.95  % (7408)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.95  % (7408)Termination reason: Unknown
% 2.70/1.95  % (7408)Termination phase: Property scanning
% 2.70/1.95  
% 2.70/1.95  % (7408)Memory used [KB]: 1918
% 2.70/1.95  % (7408)Time elapsed: 0.019 s
% 2.70/1.95  % (7408)Instructions burned: 63 (million)
% 2.70/1.95  % (7408)------------------------------
% 2.70/1.95  % (7408)------------------------------
% 2.70/1.95  % (7411)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_7038 for (2996ds/453Mi)
% 2.70/1.95  % (7397)Instruction limit reached!
% 2.70/1.95  % (7397)------------------------------
% 2.70/1.95  % (7397)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.95  % (7397)Termination reason: Unknown
% 2.70/1.95  % (7397)Termination phase: Saturation
% 2.70/1.95  
% 2.70/1.95  % (7397)Memory used [KB]: 7036
% 2.70/1.95  % (7397)Time elapsed: 0.135 s
% 2.70/1.95  % (7397)Instructions burned: 448 (million)
% 2.70/1.95  % (7397)------------------------------
% 2.70/1.95  % (7397)------------------------------
% 2.70/1.96  % (7386)Instruction limit reached!
% 2.70/1.96  % (7386)------------------------------
% 2.70/1.96  % (7386)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.96  % (7386)Termination reason: Unknown
% 2.70/1.96  % (7386)Termination phase: Saturation
% 2.70/1.96  
% 2.70/1.96  % (7386)Memory used [KB]: 11641
% 2.70/1.96  % (7386)Time elapsed: 0.275 s
% 2.70/1.96  % (7386)Instructions burned: 879 (million)
% 2.70/1.96  % (7386)------------------------------
% 2.70/1.96  % (7386)------------------------------
% 2.70/1.96  % (7412)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_7038 for (2996ds/71Mi)
% 2.70/1.97  % (7413)dis+1002_1:1_bd=off:fsr=off:ntd=on:s2a=on:ss=axioms:i=83:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/83Mi)
% 2.70/1.97  % (7410)Instruction limit reached!
% 2.70/1.97  % (7410)------------------------------
% 2.70/1.97  % (7410)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.97  % (7410)Termination reason: Unknown
% 2.70/1.97  % (7410)Termination phase: Property scanning
% 2.70/1.97  
% 2.70/1.97  % (7410)Memory used [KB]: 4221
% 2.70/1.97  % (7410)Time elapsed: 0.029 s
% 2.70/1.97  % (7410)Instructions burned: 97 (million)
% 2.70/1.97  % (7410)------------------------------
% 2.70/1.97  % (7410)------------------------------
% 2.70/1.97  % (7414)lrs+10_1:128_cnfonf=lazy_not_gen_be_off:hud=1:ins=1:i=11:si=on:rtra=on_0 on DTF2THF_7038 for (2996ds/11Mi)
% 2.70/1.97  % (7414)Instruction limit reached!
% 2.70/1.97  % (7414)------------------------------
% 2.70/1.97  % (7414)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.97  % (7414)Termination reason: Unknown
% 2.70/1.97  % (7414)Termination phase: shuffling
% 2.70/1.97  
% 2.70/1.97  % (7414)Memory used [KB]: 1535
% 2.70/1.97  % (7414)Time elapsed: 0.004 s
% 2.70/1.97  % (7414)Instructions burned: 11 (million)
% 2.70/1.97  % (7414)------------------------------
% 2.70/1.97  % (7414)------------------------------
% 2.70/1.98  % (7415)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_7038 for (2996ds/41Mi)
% 2.70/1.98  % (7416)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/6Mi)
% 2.70/1.98  % (7416)Instruction limit reached!
% 2.70/1.98  % (7416)------------------------------
% 2.70/1.98  % (7416)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.98  % (7416)Termination reason: Unknown
% 2.70/1.98  % (7416)Termination phase: shuffling
% 2.70/1.98  
% 2.70/1.98  % (7416)Memory used [KB]: 1407
% 2.70/1.98  % (7416)Time elapsed: 0.003 s
% 2.70/1.98  % (7416)Instructions burned: 6 (million)
% 2.70/1.98  % (7416)------------------------------
% 2.70/1.98  % (7416)------------------------------
% 2.70/1.98  % (7412)Instruction limit reached!
% 2.70/1.98  % (7412)------------------------------
% 2.70/1.98  % (7412)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.98  % (7412)Termination reason: Unknown
% 2.70/1.98  % (7412)Termination phase: Preprocessing 3
% 2.70/1.98  
% 2.70/1.98  % (7412)Memory used [KB]: 3326
% 2.70/1.98  % (7412)Time elapsed: 0.024 s
% 2.70/1.98  % (7412)Instructions burned: 71 (million)
% 2.70/1.98  % (7412)------------------------------
% 2.70/1.98  % (7412)------------------------------
% 2.70/1.98  % (7413)Refutation not found, incomplete strategy
% 2.70/1.98  % (7413)------------------------------
% 2.70/1.98  % (7413)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.98  % (7413)Termination reason: Refutation not found, incomplete strategy
% 2.70/1.98  
% 2.70/1.98  
% 2.70/1.98  % (7413)Memory used [KB]: 6780
% 2.70/1.98  % (7413)Time elapsed: 0.020 s
% 2.70/1.98  % (7413)Instructions burned: 60 (million)
% 2.70/1.98  % (7413)------------------------------
% 2.70/1.98  % (7413)------------------------------
% 2.70/1.99  % (7415)Instruction limit reached!
% 2.70/1.99  % (7415)------------------------------
% 2.70/1.99  % (7415)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.70/1.99  % (7415)Termination reason: Unknown
% 2.70/1.99  % (7415)Termination phase: Property scanning
% 2.70/1.99  
% 2.70/1.99  % (7415)Memory used [KB]: 1918
% 2.70/1.99  % (7415)Time elapsed: 0.012 s
% 2.70/1.99  % (7415)Instructions burned: 41 (million)
% 2.70/1.99  % (7415)------------------------------
% 2.70/1.99  % (7415)------------------------------
% 2.70/1.99  % (7417)dis+10_1:1_avsq=on:cnfonf=off:e2e=on:nm=32:i=150:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/150Mi)
% 2.70/1.99  % (7418)ott+1010_1:1_au=on:s2a=on:sd=7:ss=axioms:st=1.5:i=343:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/343Mi)
% 2.70/1.99  % (7419)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_7038 for (2995ds/109Mi)
% 2.70/2.00  % (7420)dis+10_1:1_au=on:c=on:e2e=on:fsr=off:sos=all:sp=const_frequency:ss=axioms:i=253:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/253Mi)
% 5.71/2.03  % (7419)Instruction limit reached!
% 5.71/2.03  % (7419)------------------------------
% 5.71/2.03  % (7419)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.03  % (7419)Termination reason: Unknown
% 5.71/2.03  % (7419)Termination phase: Property scanning
% 5.71/2.03  
% 5.71/2.03  % (7419)Memory used [KB]: 4349
% 5.71/2.03  % (7419)Time elapsed: 0.036 s
% 5.71/2.03  % (7419)Instructions burned: 112 (million)
% 5.71/2.03  % (7419)------------------------------
% 5.71/2.03  % (7419)------------------------------
% 5.71/2.03  % (7417)Instruction limit reached!
% 5.71/2.03  % (7417)------------------------------
% 5.71/2.03  % (7417)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.03  % (7417)Termination reason: Unknown
% 5.71/2.03  % (7417)Termination phase: Property scanning
% 5.71/2.03  
% 5.71/2.03  % (7417)Memory used [KB]: 4221
% 5.71/2.03  % (7417)Time elapsed: 0.041 s
% 5.71/2.03  % (7417)Instructions burned: 150 (million)
% 5.71/2.03  % (7417)------------------------------
% 5.71/2.03  % (7417)------------------------------
% 5.71/2.04  % (7407)Instruction limit reached!
% 5.71/2.04  % (7407)------------------------------
% 5.71/2.04  % (7407)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.04  % (7407)Termination reason: Unknown
% 5.71/2.04  % (7407)Termination phase: Saturation
% 5.71/2.04  
% 5.71/2.04  % (7407)Memory used [KB]: 2430
% 5.71/2.04  % (7407)Time elapsed: 0.118 s
% 5.71/2.04  % (7407)Instructions burned: 432 (million)
% 5.71/2.04  % (7407)------------------------------
% 5.71/2.04  % (7407)------------------------------
% 5.71/2.04  % (7421)lrs+10_1:1_au=on:cnfonf=off:sd=1:sgt=16:ss=axioms:i=140:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/140Mi)
% 5.71/2.04  % (7422)dis+1010_16:1_acc=model:au=on:avsq=on:cond=fast:plsq=on:plsqc=2:plsqr=9267,262144:i=614:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/614Mi)
% 5.71/2.05  % (7423)lrs+1002_1:1_e2e=on:fde=unused:fe=axiom:prag=on:sd=1:sos=on:ss=axioms:st=2.0:i=202:si=on:rtra=on_0 on DTF2THF_7038 for (2995ds/202Mi)
% 5.71/2.07  % (7411)Instruction limit reached!
% 5.71/2.07  % (7411)------------------------------
% 5.71/2.07  % (7411)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.07  % (7411)Termination reason: Unknown
% 5.71/2.07  % (7411)Termination phase: Saturation
% 5.71/2.07  
% 5.71/2.07  % (7411)Memory used [KB]: 6652
% 5.71/2.07  % (7411)Time elapsed: 0.114 s
% 5.71/2.07  % (7411)Instructions burned: 455 (million)
% 5.71/2.07  % (7411)------------------------------
% 5.71/2.07  % (7411)------------------------------
% 5.71/2.07  % (7420)Instruction limit reached!
% 5.71/2.07  % (7420)------------------------------
% 5.71/2.07  % (7420)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.07  % (7420)Termination reason: Unknown
% 5.71/2.07  % (7420)Termination phase: Saturation
% 5.71/2.07  
% 5.71/2.07  % (7420)Memory used [KB]: 7291
% 5.71/2.07  % (7420)Time elapsed: 0.074 s
% 5.71/2.07  % (7420)Instructions burned: 253 (million)
% 5.71/2.07  % (7420)------------------------------
% 5.71/2.07  % (7420)------------------------------
% 5.71/2.08  % (7424)dis+1002_1:1_au=on:cs=on:ins=3:kws=inv_frequency:nwc=10.0:ss=axioms:st=3.0:i=339:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/339Mi)
% 5.71/2.08  % (7425)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=283:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/283Mi)
% 5.71/2.08  % (7421)Instruction limit reached!
% 5.71/2.08  % (7421)------------------------------
% 5.71/2.08  % (7421)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.08  % (7421)Termination reason: Unknown
% 5.71/2.08  % (7421)Termination phase: Property scanning
% 5.71/2.08  
% 5.71/2.08  % (7421)Memory used [KB]: 4221
% 5.71/2.08  % (7421)Time elapsed: 0.043 s
% 5.71/2.08  % (7421)Instructions burned: 143 (million)
% 5.71/2.08  % (7421)------------------------------
% 5.71/2.08  % (7421)------------------------------
% 5.71/2.09  % (7426)dis+2_1:1_cha=on:hud=7:nwc=3.0:prag=on:tnu=2:i=134:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/134Mi)
% 5.71/2.10  % (7423)Instruction limit reached!
% 5.71/2.10  % (7423)------------------------------
% 5.71/2.10  % (7423)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.10  % (7423)Termination reason: Unknown
% 5.71/2.10  % (7423)Termination phase: Saturation
% 5.71/2.10  
% 5.71/2.10  % (7423)Memory used [KB]: 4477
% 5.71/2.10  % (7423)Time elapsed: 0.055 s
% 5.71/2.10  % (7423)Instructions burned: 202 (million)
% 5.71/2.10  % (7423)------------------------------
% 5.71/2.10  % (7423)------------------------------
% 5.71/2.11  % (7418)Refutation not found, incomplete strategy
% 5.71/2.11  % (7418)------------------------------
% 5.71/2.11  % (7418)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 5.71/2.11  % (7418)Termination reason: Refutation not found, incomplete strategy
% 5.71/2.11  
% 5.71/2.11  
% 5.71/2.11  % (7418)Memory used [KB]: 7419
% 5.71/2.11  % (7418)Time elapsed: 0.115 s
% 5.71/2.11  % (7418)Instructions burned: 222 (million)
% 5.71/2.11  % (7418)------------------------------
% 5.71/2.11  % (7418)------------------------------
% 5.71/2.11  % (7427)dis+1010_1:64_cnfonf=lazy_simp:fd=off:i=298:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/298Mi)
% 6.27/2.12  % (7428)lrs+2_1:8_erd=off:plsq=on:plsqr=32,1:sos=on:i=192:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/192Mi)
% 6.27/2.13  % (7426)Instruction limit reached!
% 6.27/2.13  % (7426)------------------------------
% 6.27/2.13  % (7426)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.13  % (7426)Termination reason: Unknown
% 6.27/2.13  % (7426)Termination phase: Property scanning
% 6.27/2.13  
% 6.27/2.13  % (7426)Memory used [KB]: 4349
% 6.27/2.13  % (7426)Time elapsed: 0.039 s
% 6.27/2.13  % (7426)Instructions burned: 137 (million)
% 6.27/2.13  % (7426)------------------------------
% 6.27/2.13  % (7426)------------------------------
% 6.27/2.14  % (7429)lrs+10_1:1_bd=off:hud=1:nm=0:prag=on:sd=2:sgt=32:sos=all:ss=axioms:i=258:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/258Mi)
% 6.27/2.15  % (7425)Instruction limit reached!
% 6.27/2.15  % (7425)------------------------------
% 6.27/2.15  % (7425)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.15  % (7425)Termination reason: Unknown
% 6.27/2.15  % (7425)Termination phase: Saturation
% 6.27/2.15  
% 6.27/2.15  % (7425)Memory used [KB]: 7547
% 6.27/2.15  % (7425)Time elapsed: 0.073 s
% 6.27/2.15  % (7425)Instructions burned: 283 (million)
% 6.27/2.15  % (7425)------------------------------
% 6.27/2.15  % (7425)------------------------------
% 6.27/2.16  % (7430)lrs+1002_1:1024_au=on:cond=fast:ntd=on:piset=and:plsq=on:plsqc=1:plsqr=183491,1048576:sac=on:tgt=ground:i=90:si=on:rtra=on_0 on DTF2THF_7038 for (2994ds/90Mi)
% 6.27/2.17  % (7424)Instruction limit reached!
% 6.27/2.17  % (7424)------------------------------
% 6.27/2.17  % (7424)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.17  % (7424)Termination reason: Unknown
% 6.27/2.17  % (7424)Termination phase: Saturation
% 6.27/2.17  
% 6.27/2.17  % (7424)Memory used [KB]: 9722
% 6.27/2.17  % (7424)Time elapsed: 0.092 s
% 6.27/2.17  % (7424)Instructions burned: 339 (million)
% 6.27/2.17  % (7424)------------------------------
% 6.27/2.17  % (7424)------------------------------
% 6.27/2.17  % (7428)Instruction limit reached!
% 6.27/2.17  % (7428)------------------------------
% 6.27/2.17  % (7428)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.17  % (7428)Termination reason: Unknown
% 6.27/2.17  % (7428)Termination phase: Property scanning
% 6.27/2.17  
% 6.27/2.17  % (7428)Memory used [KB]: 4605
% 6.27/2.17  % (7428)Time elapsed: 0.057 s
% 6.27/2.17  % (7428)Instructions burned: 192 (million)
% 6.27/2.17  % (7428)------------------------------
% 6.27/2.17  % (7428)------------------------------
% 6.27/2.18  % (7431)dis+1004_16:1_avsq=on:avsqr=1,16:cnfonf=lazy_gen:cs=on:fe=off:tgt=ground:tnu=1:i=231:si=on:rtra=on_0 on DTF2THF_7038 for (2993ds/231Mi)
% 6.27/2.18  % (7404)First to succeed.
% 6.27/2.18  % (7432)lrs+1002_1:1_au=on:s2a=on:sgt=32:slsq=on:slsqc=1:slsql=off:ss=axioms:i=458:si=on:rtra=on_0 on DTF2THF_7038 for (2993ds/458Mi)
% 6.27/2.19  % (7427)Instruction limit reached!
% 6.27/2.19  % (7427)------------------------------
% 6.27/2.19  % (7427)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.19  % (7427)Termination reason: Unknown
% 6.27/2.19  % (7427)Termination phase: Saturation
% 6.27/2.19  
% 6.27/2.19  % (7427)Memory used [KB]: 6652
% 6.27/2.19  % (7427)Time elapsed: 0.077 s
% 6.27/2.19  % (7427)Instructions burned: 301 (million)
% 6.27/2.19  % (7427)------------------------------
% 6.27/2.19  % (7427)------------------------------
% 6.27/2.19  % (7430)Instruction limit reached!
% 6.27/2.19  % (7430)------------------------------
% 6.27/2.19  % (7430)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.27/2.19  % (7430)Termination reason: Unknown
% 6.27/2.19  % (7430)Termination phase: Preprocessing 3
% 6.27/2.19  
% 6.27/2.19  % (7430)Memory used [KB]: 4093
% 6.27/2.19  % (7430)Time elapsed: 0.028 s
% 6.27/2.19  % (7430)Instructions burned: 93 (million)
% 6.27/2.19  % (7430)------------------------------
% 6.27/2.19  % (7430)------------------------------
% 6.27/2.20  % (7433)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_7038 for (2993ds/31Mi)
% 6.77/2.20  % (7434)lrs+10_1:1_cnfonf=lazy_gen:kws=inv_precedence:nwc=10.0:s2a=on:sp=weighted_frequency:ss=axioms:i=297:si=on:rtra=on_0 on DTF2THF_7038 for (2993ds/297Mi)
% 6.77/2.21  % (7433)Instruction limit reached!
% 6.77/2.21  % (7433)------------------------------
% 6.77/2.21  % (7433)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.77/2.21  % (7433)Termination reason: Unknown
% 6.77/2.21  % (7433)Termination phase: Property scanning
% 6.77/2.21  
% 6.77/2.21  % (7433)Memory used [KB]: 2174
% 6.77/2.21  % (7433)Time elapsed: 0.011 s
% 6.77/2.21  % (7433)Instructions burned: 31 (million)
% 6.77/2.21  % (7433)------------------------------
% 6.77/2.21  % (7433)------------------------------
% 6.77/2.21  % (7429)Instruction limit reached!
% 6.77/2.21  % (7429)------------------------------
% 6.77/2.21  % (7429)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.77/2.21  % (7429)Termination reason: Unknown
% 6.77/2.21  % (7429)Termination phase: Property scanning
% 6.77/2.21  
% 6.77/2.21  % (7429)Memory used [KB]: 7931
% 6.77/2.21  % (7429)Time elapsed: 0.069 s
% 6.77/2.21  % (7429)Instructions burned: 260 (million)
% 6.77/2.21  % (7429)------------------------------
% 6.77/2.21  % (7429)------------------------------
% 6.77/2.22  % (7435)dis+2_1:4_amm=off:au=on:cbe=off:cnfonf=lazy_gen:hfaw=0:hfsq=on:hfsql=off:plsq=on:plsqc=1:plsqr=35,4:sac=on:i=987:si=on:rtra=on_0 on DTF2THF_7038 for (2993ds/987Mi)
% 6.77/2.22  % (7436)lrs+10_1:1024_avsq=on:avsqc=4:avsqr=584411,1048576:bd=off:bet=on:br=off:chr=on:fsd=on:fsdmm=1:hud=10:nm=0:ntd=on:nwc=9.0:piset=or:plsq=on:plsqc=2:plsql=on:plsqr=852219,1048576:rawr=on:sp=const_frequency:spb=units:i=182:si=on:rtra=on_0 on DTF2THF_7038 for (2993ds/182Mi)
% 6.77/2.22  % (7404)Refutation found. Thanks to Tanya!
% 6.77/2.22  % SZS status Theorem for DTF2THF_7038
% 6.77/2.22  % SZS output start Proof for DTF2THF_7038
% 6.77/2.22  thf(type_def_5, type, term: $tType).
% 6.77/2.22  thf(type_def_7, type, subst: $tType).
% 6.77/2.22  thf(type_def_8, type, d_term: $tType).
% 6.77/2.22  thf(type_def_9, type, d_subst: $tType).
% 6.77/2.22  thf(func_def_0, type, term: $tType).
% 6.77/2.22  thf(func_def_1, type, subst: $tType).
% 6.77/2.22  thf(func_def_2, type, one: term).
% 6.77/2.22  thf(func_def_3, type, ap: term > term > term).
% 6.77/2.22  thf(func_def_4, type, lam: term > term).
% 6.77/2.22  thf(func_def_5, type, sub: term > subst > term).
% 6.77/2.22  thf(func_def_6, type, id: subst).
% 6.77/2.22  thf(func_def_7, type, sh: subst).
% 6.77/2.22  thf(func_def_8, type, push: term > subst > subst).
% 6.77/2.22  thf(func_def_9, type, comp: subst > subst > subst).
% 6.77/2.22  thf(func_def_10, type, var: term > $o).
% 6.77/2.22  thf(func_def_18, type, hoasap: subst > term > subst > term > term).
% 6.77/2.22  thf(func_def_73, type, hoaslam: subst > (subst > term > term) > term).
% 6.77/2.22  thf(func_def_86, type, hoasinduction_p_and_p_prime: (subst > term > subst > $o) > (term > $o) > $o).
% 6.77/2.22  thf(func_def_107, type, hoasvar: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_121, type, pushprop_p_and_p_prime: term > subst > (term > $o) > (term > $o) > $o).
% 6.77/2.22  thf(func_def_124, type, d_term: $tType).
% 6.77/2.22  thf(func_def_125, type, d_subst: $tType).
% 6.77/2.22  thf(func_def_126, type, d2term: d_term > term).
% 6.77/2.22  thf(func_def_127, type, d2subst: d_subst > subst).
% 6.77/2.22  thf(func_def_128, type, d_one: d_term).
% 6.77/2.22  thf(func_def_129, type, d_id: d_subst).
% 6.77/2.22  thf(func_def_141, type, sP0: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_142, type, sP1: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_143, type, sP2: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_145, type, sP4: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_146, type, sP5: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_148, type, sP7: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_149, type, sP8: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_150, type, sP9: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_156, type, sP15: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_158, type, sP17: (term > $o) > $o).
% 6.77/2.22  thf(func_def_159, type, sP18: (term > $o) > $o).
% 6.77/2.22  thf(func_def_161, type, sP20: (term > $o) > $o).
% 6.77/2.22  thf(func_def_162, type, sP21: (term > $o) > $o).
% 6.77/2.22  thf(func_def_163, type, sP22: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_164, type, sP23: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_165, type, sP24: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_166, type, sP25: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_167, type, sP26: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_173, type, sP32: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_174, type, sP33: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_175, type, sP34: term > (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_177, type, sP36: (term > $o) > $o).
% 6.77/2.22  thf(func_def_178, type, sP37: (term > $o) > $o).
% 6.77/2.22  thf(func_def_180, type, sP39: (term > $o) > $o).
% 6.77/2.22  thf(func_def_181, type, sP40: (term > $o) > $o).
% 6.77/2.22  thf(func_def_182, type, sP41: (term > $o) > $o).
% 6.77/2.22  thf(func_def_183, type, sP42: (term > $o) > $o).
% 6.77/2.22  thf(func_def_186, type, sP45: (term > $o) > $o).
% 6.77/2.22  thf(func_def_187, type, sP46: (term > $o) > $o).
% 6.77/2.22  thf(func_def_190, type, sP49: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_192, type, sP51: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_194, type, sP53: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_196, type, sP55: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_198, type, sP57: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_199, type, sP58: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_200, type, sP59: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_201, type, sP60: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_202, type, sP61: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_203, type, sP62: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_204, type, sP63: (subst > term > subst > $o) > term > $o).
% 6.77/2.22  thf(func_def_205, type, sP64: (term > $o) > $o).
% 6.77/2.22  thf(func_def_206, type, sP65: (term > $o) > $o).
% 6.77/2.22  thf(func_def_207, type, sP66: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_208, type, sP67: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_213, type, sP72: (term > $o) > $o).
% 6.77/2.22  thf(func_def_214, type, sP73: (term > $o) > $o).
% 6.77/2.22  thf(func_def_215, type, sP74: (term > $o) > $o).
% 6.77/2.22  thf(func_def_216, type, sP75: (term > $o) > $o).
% 6.77/2.22  thf(func_def_219, type, sP78: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_220, type, sP79: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_223, type, sP82: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_225, type, sP84: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_226, type, sP85: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_227, type, sP86: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_228, type, sP87: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_229, type, sP88: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_230, type, sP89: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_232, type, sP91: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_233, type, sP92: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_235, type, sP94: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_236, type, sP95: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_237, type, sP96: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_238, type, sP97: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_241, type, sP100: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_242, type, sP101: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_243, type, sP102: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_244, type, sP103: (term > $o) > $o).
% 6.77/2.22  thf(func_def_245, type, sP104: (term > $o) > $o).
% 6.77/2.22  thf(func_def_246, type, sP105: (term > $o) > $o).
% 6.77/2.22  thf(func_def_250, type, sP109: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_251, type, sP110: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_252, type, sP111: (subst > term > subst > $o) > $o).
% 6.77/2.22  thf(func_def_254, type, sK113: term).
% 6.77/2.22  thf(func_def_255, type, sK114: term > $o).
% 6.77/2.22  thf(func_def_256, type, sK115: (term > $o) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_257, type, sK116: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_258, type, sK117: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_259, type, sK118: term > $o).
% 6.77/2.22  thf(func_def_260, type, sK119: term).
% 6.77/2.22  thf(func_def_261, type, sK120: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_262, type, sK121: term).
% 6.77/2.22  thf(func_def_263, type, sK122: (term > $o) > term).
% 6.77/2.22  thf(func_def_264, type, sK123: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_265, type, sK124: (term > $o) > term).
% 6.77/2.22  thf(func_def_266, type, sK125: (term > $o) > term).
% 6.77/2.22  thf(func_def_267, type, sK126: (term > $o) > term).
% 6.77/2.22  thf(func_def_268, type, sK127: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_269, type, sK128: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_270, type, sK129: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_271, type, sK130: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_272, type, sK131: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_273, type, sK132: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_274, type, sK133: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_275, type, sK134: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_276, type, sK135: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_277, type, sK136: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_278, type, sK137: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_279, type, sK138: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_280, type, sK139: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_281, type, sK140: term).
% 6.77/2.22  thf(func_def_282, type, sK141: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_283, type, sK142: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_284, type, sK143: term).
% 6.77/2.22  thf(func_def_285, type, sK144: term > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_286, type, sK145: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_287, type, sK146: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_288, type, sK147: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_289, type, sK148: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_290, type, sK149: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_291, type, sK150: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_292, type, sK151: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_293, type, sK152: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_294, type, sK153: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_295, type, sK154: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_296, type, sK155: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_297, type, sK156: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_298, type, sK157: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_299, type, sK158: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_300, type, sK159: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_301, type, sK160: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_302, type, sK161: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_303, type, sK162: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_304, type, sK163: term > $o).
% 6.77/2.22  thf(func_def_305, type, sK164: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_306, type, sK165: term).
% 6.77/2.22  thf(func_def_307, type, sK166: term).
% 6.77/2.22  thf(func_def_308, type, sK167: (subst > term > subst > $o) > (term > $o) > term).
% 6.77/2.22  thf(func_def_309, type, sK168: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_310, type, sK169: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_311, type, sK170: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_312, type, sK171: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_313, type, sK172: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_314, type, sK173: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_315, type, sK174: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_316, type, sK175: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_317, type, sK176: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_318, type, sK177: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_319, type, sK178: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_320, type, sK179: term).
% 6.77/2.22  thf(func_def_321, type, sK180: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_322, type, sK181: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_323, type, sK182: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_324, type, sK183: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_325, type, sK184: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_326, type, sK185: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_327, type, sK186: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_328, type, sK187: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_329, type, sK188: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_330, type, sK189: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_331, type, sK190: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_332, type, sK191: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_333, type, sK192: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_334, type, sK193: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_335, type, sK194: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_336, type, sK195: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_337, type, sK196: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_338, type, sK197: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_339, type, sK198: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_340, type, sK199: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_341, type, sK200: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_342, type, sK201: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_343, type, sK202: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_344, type, sK203: term).
% 6.77/2.22  thf(func_def_345, type, sK204: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_346, type, sK205: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_347, type, sK206: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_348, type, sK207: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_349, type, sK208: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_350, type, sK209: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_351, type, sK210: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_352, type, sK211: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_353, type, sK212: term).
% 6.77/2.22  thf(func_def_354, type, sK213: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_355, type, sK214: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_356, type, sK215: term).
% 6.77/2.22  thf(func_def_357, type, sK216: term > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_358, type, sK217: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_359, type, sK218: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_360, type, sK219: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_361, type, sK220: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_362, type, sK221: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_363, type, sK222: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_364, type, sK223: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_365, type, sK224: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_366, type, sK225: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_367, type, sK226: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_368, type, sK227: (term > $o) > term).
% 6.77/2.22  thf(func_def_369, type, sK228: term).
% 6.77/2.22  thf(func_def_370, type, sK229: term > $o).
% 6.77/2.22  thf(func_def_371, type, sK230: term).
% 6.77/2.22  thf(func_def_372, type, sK231: term > $o).
% 6.77/2.22  thf(func_def_373, type, sK232: subst).
% 6.77/2.22  thf(func_def_374, type, sK233: subst > (term > $o) > term).
% 6.77/2.22  thf(func_def_375, type, sK234: (term > $o) > term).
% 6.77/2.22  thf(func_def_376, type, sK235: (term > $o) > term).
% 6.77/2.22  thf(func_def_377, type, sK236: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_378, type, sK237: (term > $o) > term).
% 6.77/2.22  thf(func_def_379, type, sK238: (term > $o) > term).
% 6.77/2.22  thf(func_def_380, type, sK239: (term > $o) > term).
% 6.77/2.22  thf(func_def_381, type, sK240: (term > $o) > term).
% 6.77/2.22  thf(func_def_382, type, sK241: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_383, type, sK242: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_384, type, sK243: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_385, type, sK244: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_386, type, sK245: term).
% 6.77/2.22  thf(func_def_387, type, sK246: term).
% 6.77/2.22  thf(func_def_388, type, sK247: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_389, type, sK248: (term > $o) > term).
% 6.77/2.22  thf(func_def_390, type, sK249: term > $o).
% 6.77/2.22  thf(func_def_391, type, sK250: term).
% 6.77/2.22  thf(func_def_392, type, sK251: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_393, type, sK252: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_394, type, sK253: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_395, type, sK254: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_396, type, sK255: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_397, type, sK256: term).
% 6.77/2.22  thf(func_def_398, type, sK257: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_399, type, sK258: term).
% 6.77/2.22  thf(func_def_400, type, sK259: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_401, type, sK260: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_402, type, sK261: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_403, type, sK262: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_404, type, sK263: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_405, type, sK264: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_406, type, sK265: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_407, type, sK266: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_408, type, sK267: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_409, type, sK268: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_410, type, sK269: (term > $o) > term).
% 6.77/2.22  thf(func_def_411, type, sK270: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_412, type, sK271: (term > $o) > term).
% 6.77/2.22  thf(func_def_413, type, sK272: (term > $o) > term).
% 6.77/2.22  thf(func_def_414, type, sK273: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_415, type, sK274: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_416, type, sK275: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_417, type, sK276: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_418, type, sK277: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_419, type, sK278: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_420, type, sK279: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_421, type, sK280: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_422, type, sK281: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_423, type, sK282: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_424, type, sK283: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_425, type, sK284: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_426, type, sK285: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_427, type, sK286: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_428, type, sK287: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_429, type, sK288: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_430, type, sK289: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_431, type, sK290: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_432, type, sK291: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_433, type, sK292: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_434, type, sK293: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_435, type, sK294: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_436, type, sK295: term).
% 6.77/2.22  thf(func_def_437, type, sK296: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_438, type, sK297: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_439, type, sK298: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_440, type, sK299: (subst > term > term) > term > subst).
% 6.77/2.22  thf(func_def_441, type, sK300: (subst > term > term) > term > term).
% 6.77/2.22  thf(func_def_442, type, sK301: (subst > term > term) > term > subst).
% 6.77/2.22  thf(func_def_443, type, sK302: (subst > term > term) > term > term).
% 6.77/2.22  thf(func_def_444, type, sK303: (subst > term > term) > term > subst).
% 6.77/2.22  thf(func_def_445, type, sK304: (subst > term > term) > term > subst).
% 6.77/2.22  thf(func_def_446, type, sK305: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_447, type, sK306: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_448, type, sK307: term).
% 6.77/2.22  thf(func_def_449, type, sK308: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_450, type, sK309: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_451, type, sK310: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_452, type, sK311: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_453, type, sK312: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_454, type, sK313: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_455, type, sK314: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_456, type, sK315: term).
% 6.77/2.22  thf(func_def_457, type, sK316: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_458, type, sK317: (subst > term > subst > $o) > term > term).
% 6.77/2.22  thf(func_def_459, type, sK318: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_460, type, sK319: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_461, type, sK320: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_462, type, sK321: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_463, type, sK322: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_464, type, sK323: term).
% 6.77/2.22  thf(func_def_465, type, sK324: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_466, type, sK325: term > $o).
% 6.77/2.22  thf(func_def_467, type, sK326: (term > $o) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_468, type, sK327: (term > $o) > term > term).
% 6.77/2.22  thf(func_def_469, type, sK328: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_470, type, sK329: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_471, type, sK330: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_472, type, sK331: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_473, type, sK332: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_474, type, sK333: subst).
% 6.77/2.22  thf(func_def_475, type, sK334: subst).
% 6.77/2.22  thf(func_def_476, type, sK335: subst).
% 6.77/2.22  thf(func_def_477, type, sK336: subst).
% 6.77/2.22  thf(func_def_478, type, sK337: term > $o).
% 6.77/2.22  thf(func_def_479, type, sK338: term).
% 6.77/2.22  thf(func_def_480, type, sK339: (term > $o) > term).
% 6.77/2.22  thf(func_def_481, type, sK340: (term > $o) > term).
% 6.77/2.22  thf(func_def_482, type, sK341: (term > $o) > term).
% 6.77/2.22  thf(func_def_483, type, sK342: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_484, type, sK343: (term > $o) > term).
% 6.77/2.22  thf(func_def_485, type, sK344: (term > $o) > subst > term).
% 6.77/2.22  thf(func_def_486, type, sK345: term).
% 6.77/2.22  thf(func_def_487, type, sK346: subst).
% 6.77/2.22  thf(func_def_488, type, sK347: term > $o).
% 6.77/2.22  thf(func_def_489, type, sK348: term > $o).
% 6.77/2.22  thf(func_def_490, type, sK349: term).
% 6.77/2.22  thf(func_def_491, type, sK350: (term > $o) > term).
% 6.77/2.22  thf(func_def_492, type, sK351: (term > $o) > term).
% 6.77/2.22  thf(func_def_493, type, sK352: (term > $o) > term).
% 6.77/2.22  thf(func_def_494, type, sK353: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_495, type, sK354: (term > $o) > term).
% 6.77/2.22  thf(func_def_496, type, sK355: (term > $o) > term).
% 6.77/2.22  thf(func_def_497, type, sK356: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_498, type, sK357: (term > $o) > term).
% 6.77/2.22  thf(func_def_499, type, sK358: (term > $o) > term).
% 6.77/2.22  thf(func_def_500, type, sK359: term > $o).
% 6.77/2.22  thf(func_def_501, type, sK360: term).
% 6.77/2.22  thf(func_def_502, type, sK361: (term > $o) > term).
% 6.77/2.22  thf(func_def_503, type, sK362: (term > $o) > term).
% 6.77/2.22  thf(func_def_504, type, sK363: (term > $o) > term).
% 6.77/2.22  thf(func_def_505, type, sK364: (term > $o) > term).
% 6.77/2.22  thf(func_def_506, type, sK365: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_507, type, sK366: term).
% 6.77/2.22  thf(func_def_508, type, sK367: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_509, type, sK368: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_510, type, sK369: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_511, type, sK370: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_512, type, sK371: term > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_513, type, sK372: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_514, type, sK373: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_515, type, sK374: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_516, type, sK375: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_517, type, sK376: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_518, type, sK377: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_519, type, sK378: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_520, type, sK379: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_521, type, sK380: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_522, type, sK381: term).
% 6.77/2.22  thf(func_def_523, type, sK382: subst).
% 6.77/2.22  thf(func_def_524, type, sK383: term).
% 6.77/2.22  thf(func_def_525, type, sK384: term).
% 6.77/2.22  thf(func_def_526, type, sK385: term).
% 6.77/2.22  thf(func_def_527, type, sK386: subst).
% 6.77/2.22  thf(func_def_528, type, sK387: term).
% 6.77/2.22  thf(func_def_529, type, sK388: subst > term > term).
% 6.77/2.22  thf(func_def_530, type, sK389: subst).
% 6.77/2.22  thf(func_def_531, type, sK390: subst > term > term).
% 6.77/2.22  thf(func_def_532, type, sK391: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_533, type, sK392: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_534, type, sK393: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_535, type, sK394: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_536, type, sK395: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_537, type, sK396: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_538, type, sK397: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_539, type, sK398: (subst > term > subst > $o) > (term > $o) > term).
% 6.77/2.22  thf(func_def_540, type, sK399: term > $o).
% 6.77/2.22  thf(func_def_541, type, sK400: term).
% 6.77/2.22  thf(func_def_542, type, sK401: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_543, type, sK402: (term > $o) > term).
% 6.77/2.22  thf(func_def_544, type, sK403: term > $o).
% 6.77/2.22  thf(func_def_545, type, sK404: term).
% 6.77/2.22  thf(func_def_546, type, sK405: term).
% 6.77/2.22  thf(func_def_547, type, sK406: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_548, type, sK407: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_549, type, sK408: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_550, type, sK409: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_551, type, sK410: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_552, type, sK411: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_553, type, sK412: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_554, type, sK413: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_555, type, sK414: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_556, type, sK415: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_557, type, sK416: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_558, type, sK417: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_559, type, sK418: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_560, type, sK419: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_561, type, sK420: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_562, type, sK421: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_563, type, sK422: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_564, type, sK423: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_565, type, sK424: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_566, type, sK425: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_567, type, sK426: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_568, type, sK427: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_569, type, sK428: (term > $o) > term).
% 6.77/2.22  thf(func_def_570, type, sK429: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_571, type, sK430: (term > $o) > term).
% 6.77/2.22  thf(func_def_572, type, sK431: (term > $o) > term).
% 6.77/2.22  thf(func_def_573, type, sK432: term > $o).
% 6.77/2.22  thf(func_def_574, type, sK433: subst).
% 6.77/2.22  thf(func_def_575, type, sK434: term).
% 6.77/2.22  thf(func_def_576, type, sK435: subst > (term > $o) > term).
% 6.77/2.22  thf(func_def_577, type, sK436: (term > $o) > term).
% 6.77/2.22  thf(func_def_578, type, sK437: (term > $o) > term).
% 6.77/2.22  thf(func_def_579, type, sK438: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_580, type, sK439: (term > $o) > term).
% 6.77/2.22  thf(func_def_581, type, sK440: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_582, type, sK441: term > $o).
% 6.77/2.22  thf(func_def_583, type, sK442: term).
% 6.77/2.22  thf(func_def_584, type, sK443: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_585, type, sK444: (term > $o) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_586, type, sK445: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_587, type, sK446: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_588, type, sK447: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_589, type, sK448: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_590, type, sK449: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_591, type, sK450: term).
% 6.77/2.22  thf(func_def_592, type, sK451: term).
% 6.77/2.22  thf(func_def_593, type, sK452: term).
% 6.77/2.22  thf(func_def_594, type, sK453: term).
% 6.77/2.22  thf(func_def_595, type, sK454: term).
% 6.77/2.22  thf(func_def_596, type, sK455: term).
% 6.77/2.22  thf(func_def_597, type, sK456: term).
% 6.77/2.22  thf(func_def_598, type, sK457: term).
% 6.77/2.22  thf(func_def_599, type, sK458: term).
% 6.77/2.22  thf(func_def_600, type, sK459: term).
% 6.77/2.22  thf(func_def_601, type, sK460: term).
% 6.77/2.22  thf(func_def_602, type, sK461: term).
% 6.77/2.22  thf(func_def_603, type, sK462: term).
% 6.77/2.22  thf(func_def_604, type, sK463: term).
% 6.77/2.22  thf(func_def_605, type, sK464: term).
% 6.77/2.22  thf(func_def_606, type, sK465: term).
% 6.77/2.22  thf(func_def_607, type, sK466: term).
% 6.77/2.22  thf(func_def_608, type, sK467: term > $o).
% 6.77/2.22  thf(func_def_609, type, sK468: term).
% 6.77/2.22  thf(func_def_610, type, sK469: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_611, type, sK470: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_612, type, sK471: (subst > term > subst > $o) > (term > $o) > term).
% 6.77/2.22  thf(func_def_613, type, sK472: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_614, type, sK473: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_615, type, sK474: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_616, type, sK475: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_617, type, sK476: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_618, type, sK477: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_619, type, sK478: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_620, type, sK479: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_621, type, sK480: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_622, type, sK481: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_623, type, sK482: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_624, type, sK483: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_625, type, sK484: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_626, type, sK485: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_627, type, sK486: term).
% 6.77/2.22  thf(func_def_628, type, sK487: term).
% 6.77/2.22  thf(func_def_629, type, sK488: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_630, type, sK489: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_631, type, sK490: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_632, type, sK491: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_633, type, sK492: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_634, type, sK493: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_635, type, sK494: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_636, type, sK495: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_637, type, sK496: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_638, type, sK497: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_639, type, sK498: term > $o).
% 6.77/2.22  thf(func_def_640, type, sK499: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_641, type, sK500: term).
% 6.77/2.22  thf(func_def_642, type, sK501: term > (term > $o) > term).
% 6.77/2.22  thf(func_def_643, type, sK502: (subst > term > subst > $o) > (term > $o) > term).
% 6.77/2.22  thf(func_def_644, type, sK503: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_645, type, sK504: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_646, type, sK505: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_647, type, sK506: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_648, type, sK507: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_649, type, sK508: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_650, type, sK509: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_651, type, sK510: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_652, type, sK511: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_653, type, sK512: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_654, type, sK513: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_655, type, sK514: (subst > term > term) > (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_656, type, sK515: (subst > term > subst > $o) > subst > term > term).
% 6.77/2.22  thf(func_def_657, type, sK516: (subst > term > subst > $o) > term > $o).
% 6.77/2.22  thf(func_def_658, type, sK517: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_659, type, sK518: (term > $o) > term).
% 6.77/2.22  thf(func_def_660, type, sK519: term).
% 6.77/2.22  thf(func_def_661, type, sK520: term).
% 6.77/2.22  thf(func_def_662, type, sK521: term).
% 6.77/2.22  thf(func_def_663, type, sK522: subst).
% 6.77/2.22  thf(func_def_664, type, sK523: term > $o).
% 6.77/2.22  thf(func_def_665, type, sK524: term).
% 6.77/2.22  thf(func_def_666, type, sK525: term > $o).
% 6.77/2.22  thf(func_def_667, type, sK526: subst).
% 6.77/2.22  thf(func_def_668, type, sK527: term).
% 6.77/2.22  thf(func_def_669, type, sK528: subst).
% 6.77/2.22  thf(func_def_670, type, sK529: term).
% 6.77/2.22  thf(func_def_671, type, sK530: (term > $o) > term > (term > $o) > subst > term).
% 6.77/2.22  thf(func_def_672, type, sK531: subst).
% 6.77/2.22  thf(func_def_673, type, sK532: term > $o).
% 6.77/2.22  thf(func_def_674, type, sK533: term).
% 6.77/2.22  thf(func_def_675, type, sK534: term > $o).
% 6.77/2.22  thf(func_def_676, type, sK535: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_677, type, sK536: term).
% 6.77/2.22  thf(func_def_678, type, sK537: term).
% 6.77/2.22  thf(func_def_679, type, sK538: term).
% 6.77/2.22  thf(func_def_680, type, sK539: term).
% 6.77/2.22  thf(func_def_681, type, sK540: term).
% 6.77/2.22  thf(func_def_682, type, sK541: term).
% 6.77/2.22  thf(func_def_683, type, sK542: term).
% 6.77/2.22  thf(func_def_684, type, sK543: term).
% 6.77/2.22  thf(func_def_685, type, sK544: term).
% 6.77/2.22  thf(func_def_686, type, sK545: term).
% 6.77/2.22  thf(func_def_687, type, sK546: term).
% 6.77/2.22  thf(func_def_688, type, sK547: term).
% 6.77/2.22  thf(func_def_689, type, sK548: term > subst > term > term).
% 6.77/2.22  thf(func_def_690, type, sK549: term).
% 6.77/2.22  thf(func_def_691, type, sK550: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_692, type, sK551: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_693, type, sK552: term).
% 6.77/2.22  thf(func_def_694, type, sK553: subst).
% 6.77/2.22  thf(func_def_695, type, sK554: subst).
% 6.77/2.22  thf(func_def_696, type, sK555: term).
% 6.77/2.22  thf(func_def_697, type, sK556: subst).
% 6.77/2.22  thf(func_def_698, type, sK557: subst).
% 6.77/2.22  thf(func_def_699, type, sK558: term > $o).
% 6.77/2.22  thf(func_def_700, type, sK559: term).
% 6.77/2.22  thf(func_def_701, type, sK560: term).
% 6.77/2.22  thf(func_def_702, type, sK561: term > $o).
% 6.77/2.22  thf(func_def_703, type, sK562: subst).
% 6.77/2.22  thf(func_def_704, type, sK563: term).
% 6.77/2.22  thf(func_def_705, type, sK564: term).
% 6.77/2.22  thf(func_def_706, type, sK565: term > $o).
% 6.77/2.22  thf(func_def_707, type, sK566: term > $o).
% 6.77/2.22  thf(func_def_708, type, sK567: subst).
% 6.77/2.22  thf(func_def_709, type, sK568: term).
% 6.77/2.22  thf(func_def_710, type, sK569: subst).
% 6.77/2.22  thf(func_def_711, type, sK570: subst > (term > $o) > (term > $o) > term > term).
% 6.77/2.22  thf(func_def_712, type, sK571: term).
% 6.77/2.22  thf(func_def_713, type, sK572: term).
% 6.77/2.22  thf(func_def_714, type, sK573: term).
% 6.77/2.22  thf(func_def_715, type, sK574: term).
% 6.77/2.22  thf(func_def_716, type, sK575: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_717, type, sK576: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_718, type, sK577: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_719, type, sK578: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_720, type, sK579: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_721, type, sK580: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_722, type, sK581: subst > term > term).
% 6.77/2.22  thf(func_def_723, type, sK582: subst).
% 6.77/2.22  thf(func_def_724, type, sK583: subst > term > term).
% 6.77/2.22  thf(func_def_725, type, sK584: term).
% 6.77/2.22  thf(func_def_726, type, sK585: term).
% 6.77/2.22  thf(func_def_727, type, sK586: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_728, type, sK587: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_729, type, sK588: term > subst > term > term).
% 6.77/2.22  thf(func_def_730, type, sK589: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_731, type, sK590: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_732, type, sK591: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_733, type, sK592: subst > term > term).
% 6.77/2.22  thf(func_def_734, type, sK593: term).
% 6.77/2.22  thf(func_def_735, type, sK594: term).
% 6.77/2.22  thf(func_def_736, type, sK595: term).
% 6.77/2.22  thf(func_def_737, type, sK596: term).
% 6.77/2.22  thf(func_def_738, type, sK597: subst).
% 6.77/2.22  thf(func_def_739, type, sK598: subst).
% 6.77/2.22  thf(func_def_740, type, sK599: term).
% 6.77/2.22  thf(func_def_741, type, sK600: term > subst > term > term).
% 6.77/2.22  thf(func_def_742, type, sK601: term > (term > $o) > subst > term > $o).
% 6.77/2.22  thf(func_def_743, type, sK602: subst).
% 6.77/2.22  thf(func_def_744, type, sK603: term > $o).
% 6.77/2.22  thf(func_def_745, type, sK604: term).
% 6.77/2.22  thf(func_def_746, type, sK605: (term > $o) > term).
% 6.77/2.22  thf(func_def_747, type, sK606: term).
% 6.77/2.22  thf(func_def_748, type, sK607: (subst > term > subst > $o) > term > $o).
% 6.77/2.22  thf(func_def_749, type, sK608: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_750, type, sK609: (term > $o) > term).
% 6.77/2.22  thf(func_def_751, type, sK610: term).
% 6.77/2.22  thf(func_def_752, type, sK611: subst > d_subst).
% 6.77/2.22  thf(func_def_753, type, sK612: term > subst > term > term).
% 6.77/2.22  thf(func_def_754, type, sK613: term).
% 6.77/2.22  thf(func_def_755, type, sK614: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_756, type, sK615: (term > $o) > term).
% 6.77/2.22  thf(func_def_757, type, sK616: (subst > term > subst > $o) > term > $o).
% 6.77/2.22  thf(func_def_758, type, sK617: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_759, type, sK618: (term > $o) > term).
% 6.77/2.22  thf(func_def_760, type, sK619: term).
% 6.77/2.22  thf(func_def_761, type, sK620: (subst > term > subst > $o) > term > $o).
% 6.77/2.22  thf(func_def_762, type, sK621: term).
% 6.77/2.22  thf(func_def_763, type, sK622: term).
% 6.77/2.22  thf(func_def_764, type, sK623: term).
% 6.77/2.22  thf(func_def_765, type, sK624: term).
% 6.77/2.22  thf(func_def_766, type, sK625: (subst > term > term) > subst).
% 6.77/2.22  thf(func_def_767, type, sK626: (subst > term > term) > term).
% 6.77/2.22  thf(func_def_768, type, sK627: term).
% 6.77/2.22  thf(func_def_769, type, sK628: term > subst > term > term).
% 6.77/2.22  thf(func_def_770, type, sK629: term).
% 6.77/2.22  thf(func_def_771, type, sK630: term).
% 6.77/2.22  thf(func_def_772, type, sK631: term).
% 6.77/2.22  thf(func_def_773, type, sK632: term).
% 6.77/2.22  thf(func_def_774, type, sK633: subst).
% 6.77/2.22  thf(func_def_775, type, sK634: subst).
% 6.77/2.22  thf(func_def_776, type, sK635: term).
% 6.77/2.22  thf(func_def_777, type, sK636: term > $o).
% 6.77/2.22  thf(func_def_778, type, sK637: subst).
% 6.77/2.22  thf(func_def_779, type, sK638: (term > $o) > term).
% 6.77/2.22  thf(func_def_780, type, sK639: subst > (term > $o) > term > term > $o).
% 6.77/2.22  thf(func_def_781, type, sK640: subst).
% 6.77/2.22  thf(func_def_782, type, sK641: term).
% 6.77/2.22  thf(func_def_783, type, sK642: term).
% 6.77/2.22  thf(func_def_784, type, sK643: subst).
% 6.77/2.22  thf(func_def_785, type, sK644: term > d_term).
% 6.77/2.22  thf(func_def_786, type, sK645: subst > term > subst > $o).
% 6.77/2.22  thf(func_def_787, type, sK646: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_788, type, sK647: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_789, type, sK648: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_790, type, sK649: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_791, type, sK650: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_792, type, sK651: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_793, type, sK652: (subst > term > subst > $o) > subst).
% 6.77/2.22  thf(func_def_794, type, sK653: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_795, type, sK654: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_796, type, sK655: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_797, type, sK656: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_798, type, sK657: (subst > term > subst > $o) > term).
% 6.77/2.22  thf(func_def_801, type, ph659: !>[X0: $tType]:(X0)).
% 6.77/2.22  thf(f6824,plain,(
% 6.77/2.22    $false),
% 6.77/2.22    inference(avatar_sat_refutation,[status(thm)],[f2319,f3068,f3186,f3239,f3507,f3743,f6748,f6758,f6787,f6823])).
% 6.77/2.22  thf(f6823,plain,(
% 6.77/2.22    spl658_285 | ~spl658_473),
% 6.77/2.22    inference(avatar_contradiction_clause,[status(thm)],[f6822])).
% 6.77/2.22  thf(f6822,plain,(
% 6.77/2.22    $false | (spl658_285 | ~spl658_473)),
% 6.77/2.22    inference(subsumption_resolution,[status(thm)],[f6759,f6754])).
% 6.77/2.22  thf(f6754,plain,(
% 6.77/2.22    ( ! [X5 : subst] : (($true = (sK485 @ (d2subst @ d_id) @ (d2term @ d_one) @ X5))) ) | ~spl658_473),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f6753])).
% 6.77/2.22  thf(f6753,definition,(
% 6.77/2.22    spl658_473 <=> ! [X5 : subst] : ($true = (sK485 @ (d2subst @ d_id) @ (d2term @ d_one) @ X5))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_473])],[avatar_definition])).
% 6.77/2.22  thf(f6759,plain,(
% 6.77/2.22    ($true != (sK485 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) | spl658_285),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f3067,f3870])).
% 6.77/2.22  thf(f3870,plain,(
% 6.77/2.22    ( ! [X262 : term] : (((d2term @ d_one) = X262)) )),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f1283,f1400])).
% 6.77/2.22  thf(f1400,plain,(
% 6.77/2.22    ( ! [X150 : d_term] : ((d_one = X150)) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  thf(f745,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP108) & ($true != sP107) & ! [X0 : subst > term > subst > $o] : ! [X2 : term] : ((sK516 @ X0 @ X2) = (X0 @ id @ X2 @ id)) & ($true != sP106) & ! [X3 : term] : ((sub @ X3 @ id) = X3))) & (($true = sP108) | ($true = sP107) | ! [X5 : term > $o] : ((X5 @ (sK518 @ X5)) != (sK517 @ id @ (sK518 @ X5) @ id)) | ($true = sP106) | (sK519 != (sub @ sK519 @ id)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X8 : term] : ((sub @ X8 @ id) = X8) & ($true != sP98) & ($true != sP99))) & ((sK520 != (sub @ sK520 @ id)) | ($true = sP98) | ($true = sP99) | (hoasinduction_lem3_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X10 : subst,X11 : term] : ((sub @ one @ (push @ X11 @ X10)) = X11) & (($true != (sK525 @ (sub @ sK524 @ (push @ sK521 @ sK522)))) & ($true = (sK523 @ sK524))) & ! [X17 : subst,X18 : term] : ((comp @ sh @ (push @ X18 @ X17)) = X17))) & ((sK527 != (sub @ one @ (push @ sK527 @ sK526))) | ! [X21 : term,X22 : subst,X23 : term > $o,X24 : term,X25 : term > $o] : (($true = (X25 @ (sub @ X24 @ (push @ X21 @ X22)))) | ((X23 @ X24) != $true)) | (sK528 != (comp @ sh @ (push @ sK529 @ sK528))) | (pushprop_lem1_lthm != $true)) & (! [X28 : subst,X29 : term > $o,X30 : term,X31 : term > $o] : (($true != (X29 @ X30)) | ($true = (X31 @ one)) | ((X29 @ (sub @ (sK530 @ X31 @ X30 @ X29 @ X28) @ (push @ X30 @ X28))) != (X31 @ (sK530 @ X31 @ X30 @ X29 @ X28)))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | (($true = (sK532 @ sK533)) & ((sK534 @ one) != $true) & ! [X37 : term] : ((sK532 @ (sub @ X37 @ (push @ sK533 @ sK531))) = (sK534 @ X37)))) & (hoasapnotvar = $true) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & ((d2subst @ d_id) = id) & (($true = sP90) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP90)) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | (($true != (sP85 @ sK535)) & ($true != (sP84 @ sK535)) & ($true != (sK535 @ id @ sK536 @ id)))) & (! [X40 : subst > term > subst > $o,X41 : term] : (($true = (sP85 @ X40)) | ($true = (sP84 @ X40)) | ($true = (X40 @ id @ X41 @ id))) | (hoasinduction_no_psi_cond != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & ((shinj = $true) | (((sub @ sK538 @ sh) = (sub @ sK537 @ sh)) & (sK538 != sK537))) & (! [X44 : term,X45 : term] : (((sub @ X44 @ sh) != (sub @ X45 @ sh)) | (X44 = X45)) | (shinj != $true)) & (ulamvarind = $true) & ! [X46 : d_subst,X47 : d_subst] : (((d2subst @ X47) != (d2subst @ X46)) | (X46 = X47)) & ((apinj2 = $true) | ((sK540 != sK542) & ((ap @ sK541 @ sK540) = (ap @ sK539 @ sK542)))) & (! [X52 : term,X53 : term,X54 : term,X55 : term] : ((X53 = X55) | ((ap @ X52 @ X55) != (ap @ X54 @ X53))) | (apinj2 != $true)) & (($true = sP83) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP83)) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP81) & ($true != sP80) & ! [X56 : term] : ((sub @ X56 @ id) = X56))) & (($true = sP81) | ($true = sP80) | (sK543 != (sub @ sK543 @ id)) | (hoasinduction_lem3a_lthm != $true)) & (! [X58 : term,X59 : term,X60 : term,X61 : term] : (((ap @ (sub @ X61 @ id) @ X59) != (ap @ (sub @ X58 @ id) @ X60)) | (X59 = X60)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | (((ap @ (sub @ sK547 @ id) @ sK545) = (ap @ (sub @ sK544 @ id) @ sK546)) & (sK546 != sK545))) & ! [X66 : d_term,X67 : d_term] : (((d2term @ X67) != (d2term @ X66)) | (X66 = X67)) & (pushprop_lem2v2_lthm = $true) & (! [X68 : term] : ! [X70 : term,X71 : subst] : ((sK548 @ X68 @ X71 @ X70) = (sub @ X68 @ (push @ X70 @ X71))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X73 : subst > term > term] : ((sub @ sK549 @ (push @ (sK550 @ X73) @ (sK551 @ X73))) != (X73 @ (sK551 @ X73) @ (sK550 @ X73)))) & (termmset_gthm = $true) & (((sub @ one @ (push @ sK552 @ sK553)) != sK552) | (sK554 != (comp @ sK554 @ id)) | (sK556 != (comp @ sh @ (push @ sK555 @ sK556))) | ($true = sP76) | ($true = sP77) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | (! [X81 : term,X82 : subst] : ((sub @ one @ (push @ X81 @ X82)) = X81) & ! [X83 : subst] : ((comp @ X83 @ id) = X83) & ! [X84 : term,X85 : subst] : ((comp @ sh @ (push @ X84 @ X85)) = X85) & ($true != sP76) & ($true != sP77))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1 = $true) | (($true = (sK561 @ sK560)) & ($true != (sK558 @ (sub @ sK560 @ (push @ sK559 @ sK557)))))) & (! [X91 : subst,X92 : term > $o,X93 : term,X94 : term,X95 : term > $o] : (($true != (X95 @ X94)) | ($true = (X92 @ (sub @ X94 @ (push @ X93 @ X91))))) | (pushprop_lem1 != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & (! [X96 : subst,X97 : term] : ((sub @ one @ (push @ X97 @ X96)) = X97) | (axvarcons != $true)) & ((axvarcons = $true) | (sK563 != (sub @ one @ (push @ sK563 @ sK562)))) & (pushprop_lem3v2 = $true) & ((pushprop_lem1v2_lthm = $true) | (! [X100 : term,X101 : subst] : ((sub @ one @ (push @ X100 @ X101)) = X100) & (! [X106 : term] : ((sK566 @ (sub @ X106 @ (push @ sK564 @ sK567))) = (sK565 @ X106)) & ($true = (sK566 @ sK564)) & ($true != (sK565 @ one))))) & (((sub @ one @ (push @ sK568 @ sK569)) != sK568) | ! [X109 : term,X110 : term > $o,X111 : term > $o,X112 : subst] : (((X111 @ (sub @ (sK570 @ X112 @ X111 @ X110 @ X109) @ (push @ X109 @ X112))) != (X110 @ (sK570 @ X112 @ X111 @ X110 @ X109))) | ($true != (X111 @ X109)) | ($true = (X110 @ one))) | (pushprop_lem1v2_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & (($true = sP71) | ($true = sP70) | ($true = sP69) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP71) & ($true != sP70) & ($true != sP69) & ($true != sP68))) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & (! [X114 : term,X115 : term,X116 : term,X117 : term] : ((X115 = X116) | ((ap @ X115 @ X114) != (ap @ X116 @ X117))) | (apinj1 != $true)) & ((apinj1 = $true) | ((sK573 != sK572) & ((ap @ sK573 @ sK574) = (ap @ sK572 @ sK571)))) & (! [X122 : subst > term > term,X123 : subst,X124 : subst > term > term,X125 : term] : (((X124 @ (comp @ (sK577 @ X124) @ (sK576 @ X124)) @ (sub @ (sK575 @ X124) @ (sK576 @ X124))) != (sub @ (X124 @ (sK577 @ X124) @ (sK575 @ X124)) @ (sK576 @ X124))) | ((lam @ (X122 @ sh @ one)) != (lam @ (X124 @ sh @ one))) | ((X122 @ X123 @ X125) = (X124 @ X123 @ X125)) | ((sub @ (X122 @ (sK580 @ X122) @ (sK579 @ X122)) @ (sK578 @ X122)) != (X122 @ (comp @ (sK580 @ X122) @ (sK578 @ X122)) @ (sub @ (sK579 @ X122) @ (sK578 @ X122))))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (! [X136 : term,X137 : subst,X138 : subst] : ((sK583 @ (comp @ X138 @ X137) @ (sub @ X136 @ X137)) = (sub @ (sK583 @ X138 @ X136) @ X137)) & ((lam @ (sK581 @ sh @ one)) = (lam @ (sK583 @ sh @ one))) & ((sK583 @ sK582 @ sK584) != (sK581 @ sK582 @ sK584)) & ! [X139 : subst,X140 : term,X141 : subst] : ((sub @ (sK581 @ X141 @ X140) @ X139) = (sK581 @ (comp @ X141 @ X139) @ (sub @ X140 @ X139))))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((hoasinduction_lem3aaa = $true) | ($true != sP56)) & (($true = sP56) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3v2_f = $true) | ! [X143 : subst > term > term] : ((X143 @ (sK587 @ X143) @ (sK586 @ X143)) != (sub @ sK585 @ (push @ (sK586 @ X143) @ (sK587 @ X143))))) & (! [X146 : term] : ! [X148 : term,X149 : subst] : ((sub @ X146 @ (push @ X148 @ X149)) = (sK588 @ X146 @ X149 @ X148)) | (hoasinduction_lem3v2_f != $true)) & ! [X150 : d_term] : (d_one = X150) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X151 : subst > term > term,X152 : term,X153 : term] : (((ap @ (sub @ X153 @ id) @ X152) != (lam @ (X151 @ sh @ one))) | ((sub @ (X151 @ (sK591 @ X151) @ (sK589 @ X151)) @ (sK590 @ X151)) != (X151 @ (comp @ (sK591 @ X151) @ (sK590 @ X151)) @ (sub @ (sK589 @ X151) @ (sK590 @ X151))))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | (((lam @ (sK592 @ sh @ one)) = (ap @ (sub @ sK594 @ id) @ sK593)) & ! [X160 : term,X161 : subst,X162 : subst] : ((sK592 @ (comp @ X162 @ X161) @ (sub @ X160 @ X161)) = (sub @ (sK592 @ X162 @ X160) @ X161)))) & (hoaslamnotvar = $true) & (((sub @ sK595 @ id) != sK595) | ! [X164 : term] : ((sub @ X164 @ id) = X164) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X165 : term] : ((sub @ X165 @ id) = X165) & ((sub @ sK596 @ id) != sK596))) & ((hoasinduction_lem3aa_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3aa_lthm != $true)) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & ((axidr = $true) | (sK597 != (comp @ sK597 @ id))) & (! [X168 : subst] : ((comp @ X168 @ id) = X168) | (axidr != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & ((axscons = $true) | (sK598 != (push @ (sub @ one @ sK598) @ (comp @ sh @ sK598)))) & (! [X170 : subst] : ((push @ (sub @ one @ X170) @ (comp @ sh @ X170)) = X170) | (axscons != $true)) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasinduction_lem3b = $true) | ! [X172 : subst > term > term] : ((X172 @ sh @ one) != (sub @ sK599 @ (push @ one @ sh)))) & (! [X173 : term] : ((sK600 @ X173 @ sh @ one) = (sub @ X173 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3v2a != $true)) & (($true = sP48) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP48)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & ((induction2 = $true) | ($true != sP47)) & (($true = sP47) | (induction2 != $true)) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & (! [X175 : subst,X176 : term > $o,X177 : term] : ! [X179 : term] : ((sK601 @ X177 @ X176 @ X175 @ X179) = (X176 @ (sub @ X179 @ (push @ X177 @ X175)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X183 : term > $o] : ((X183 @ (sK605 @ X183)) != (sK603 @ (sub @ (sK605 @ X183) @ (push @ sK604 @ sK602))))) & (! [X185 : term] : ((sub @ X185 @ id) = X185) | (axvarid != $true)) & ((axvarid = $true) | ((sub @ sK606 @ id) != sK606)) & (! [X187 : subst > term > subst > $o] : ! [X189 : term] : ((X187 @ id @ X189 @ id) = (sK607 @ X187 @ X189)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X191 : term > $o] : ((X191 @ (sK609 @ X191)) != (sK608 @ id @ (sK609 @ X191) @ id))) & ((sP43 = $true) | (sK610 != (sub @ sK610 @ id)) | ($true = sP44) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ((sP43 != $true) & ! [X194 : term] : ((sub @ X194 @ id) = X194) & ($true != sP44))) & ! [X195 : subst] : ((d2subst @ (sK611 @ X195)) = X195) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & (! [X197 : term] : ((sub @ X197 @ (push @ one @ sh)) = (sK612 @ X197 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ! [X200 : subst > term > term] : ((sub @ sK613 @ (push @ one @ sh)) != (X200 @ sh @ one))) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem0 = $true) | ! [X202 : term > $o] : ((sK614 @ id @ (sK615 @ X202) @ id) != (X202 @ (sK615 @ X202)))) & (! [X204 : subst > term > subst > $o] : ! [X206 : term] : ((sK616 @ X204 @ X206) = (X204 @ id @ X206 @ id)) | (hoasinduction_lem0 != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X207 : d_subst] : (d_id = X207) & ((hoasinduction_lem3 = $true) | ($true != sP35)) & (($true = sP35) | (hoasinduction_lem3 != $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP31) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP31)) & (! [X209 : term > $o] : ((X209 @ (sK618 @ X209)) != (sK617 @ id @ (sK618 @ X209) @ id)) | ((sub @ sK619 @ id) != sK619) | ($true = sP27) | ($true = sP29) | ($true = sP28) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X212 : subst > term > subst > $o] : ! [X214 : term] : ((sK620 @ X212 @ X214) = (X212 @ id @ X214 @ id)) & ! [X215 : term] : ((sub @ X215 @ id) = X215) & ($true != sP27) & ($true != sP29) & ($true != sP28))) & ((induction2lem = $true) | ($true != sP19)) & (($true = sP19) | (induction2lem != $true)) & (! [X216 : term,X217 : term] : (((lam @ X216) != (lam @ X217)) | (X216 = X217)) | (laminj != $true)) & ((laminj = $true) | (((lam @ sK622) = (lam @ sK621)) & (sK622 != sK621))) & (! [X220 : term] : ((sub @ X220 @ id) = X220) | (termmset != $true)) & ((termmset = $true) | (sK623 != (sub @ sK623 @ id))) & ((sP16 = $true) | ! [X223 : subst > term > term] : ((sub @ sK624 @ (push @ (sK626 @ X223) @ (sK625 @ X223))) != (X223 @ (sK625 @ X223) @ (sK626 @ X223))) | ((sub @ sK627 @ id) != sK627) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ((sP16 != $true) & ! [X227 : term] : ! [X229 : subst,X230 : term] : ((sub @ X227 @ (push @ X230 @ X229)) = (sK628 @ X227 @ X229 @ X230)) & ! [X231 : term] : ((sub @ X231 @ id) = X231))) & (hoaslaminj_gthm = $true) & ((hoasapinj1 = $true) | (((ap @ (sub @ sK632 @ id) @ sK630) = (ap @ (sub @ sK629 @ id) @ sK631)) & (sK629 != sK632))) & (! [X236 : term,X237 : term,X238 : term,X239 : term] : (((ap @ (sub @ X236 @ id) @ X238) != (ap @ (sub @ X239 @ id) @ X237)) | (X236 = X239)) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & ((substmonoid = $true) | (sK633 != (comp @ sK633 @ id)) | ((comp @ id @ sK634) != sK634)) & ((! [X242 : subst] : ((comp @ X242 @ id) = X242) & ! [X243 : subst] : ((comp @ id @ X243) = X243)) | (substmonoid != $true)) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & (($true = sP14) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP14)) & ((hoasapinj2_lthm = $true) | (sP12 != $true)) & ((sP12 = $true) | (hoasapinj2_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ! [X247 : term > $o] : ((X247 @ (sK638 @ X247)) != (sK636 @ (sub @ (sK638 @ X247) @ (push @ sK635 @ sK637))))) & (! [X249 : term,X250 : term > $o,X251 : subst] : ! [X253 : term] : ((sK639 @ X251 @ X250 @ X249 @ X253) = (X250 @ (sub @ X253 @ (push @ X249 @ X251)))) | (pushprop_lem0 != $true)) & ((axidl = $true) | (sK640 != (comp @ id @ sK640))) & (! [X255 : subst] : ((comp @ id @ X255) = X255) | (axidl != $true)) & (($true = sP10) | (sK641 != (sub @ sK641 @ id)) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (($true != sP10) & ! [X257 : term] : ((sub @ X257 @ id) = X257))) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP6)) & (($true = sP6) | (hoasinduction_lem2 != $true)) & ((axshiftcons = $true) | ((comp @ sh @ (push @ sK642 @ sK643)) != sK643)) & (! [X260 : term,X261 : subst] : ((comp @ sh @ (push @ X260 @ X261)) = X261) | (axshiftcons != $true)) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X262 : term] : ((d2term @ (sK644 @ X262)) = X262) & (($true = sP3) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP3)) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    inference(skolemisation,[status(esa),new_symbols(skolem,[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,sK642,sK643,sK644])],[f669,f744,f743,f742,f741,f740,f739,f738,f737,f736,f735,f734,f733,f732,f731,f730,f729,f728,f727,f726,f725,f724,f723,f722,f721,f720,f719,f718,f717,f716,f715,f714,f713,f712,f711,f710,f709,f708,f707,f706,f705,f704,f703,f702,f701,f700,f699,f698,f697,f696,f695,f694,f693,f692,f691,f690,f689,f688,f687,f686,f685,f684,f683,f682,f681,f680,f679,f678,f677,f676,f675,f674,f673,f672,f671,f670])).
% 6.77/2.22  thf(f670,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (? [X1 : term > $o] : ! [X2 : term] : ((X1 @ X2) = (X0 @ id @ X2 @ id)) => ! [X2 : term] : ((sK516 @ X0 @ X2) = (X0 @ id @ X2 @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f671,plain,(
% 6.77/2.22    ? [X4 : subst > term > subst > $o] : ! [X5 : term > $o] : ? [X6 : term] : ((X4 @ id @ X6 @ id) != (X5 @ X6)) => ! [X5 : term > $o] : ? [X6 : term] : ((sK517 @ id @ X6 @ id) != (X5 @ X6))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f672,plain,(
% 6.77/2.22    ! [X5 : term > $o] : (? [X6 : term] : ((sK517 @ id @ X6 @ id) != (X5 @ X6)) => ((X5 @ (sK518 @ X5)) != (sK517 @ id @ (sK518 @ X5) @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f673,plain,(
% 6.77/2.22    ? [X7 : term] : ((sub @ X7 @ id) != X7) => (sK519 != (sub @ sK519 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f674,plain,(
% 6.77/2.22    ? [X9 : term] : ((sub @ X9 @ id) != X9) => (sK520 != (sub @ sK520 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f675,plain,(
% 6.77/2.22    ? [X12 : term,X13 : subst,X14 : term > $o,X15 : term,X16 : term > $o] : (($true != (X16 @ (sub @ X15 @ (push @ X12 @ X13)))) & ($true = (X14 @ X15))) => (($true != (sK525 @ (sub @ sK524 @ (push @ sK521 @ sK522)))) & ($true = (sK523 @ sK524)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f676,plain,(
% 6.77/2.22    ? [X19 : subst,X20 : term] : ((sub @ one @ (push @ X20 @ X19)) != X20) => (sK527 != (sub @ one @ (push @ sK527 @ sK526)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f677,plain,(
% 6.77/2.22    ? [X26 : subst,X27 : term] : ((comp @ sh @ (push @ X27 @ X26)) != X26) => (sK528 != (comp @ sh @ (push @ sK529 @ sK528)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f678,plain,(
% 6.77/2.22    ! [X28 : subst,X29 : term > $o,X30 : term,X31 : term > $o] : (? [X32 : term] : ((X31 @ X32) != (X29 @ (sub @ X32 @ (push @ X30 @ X28)))) => ((X29 @ (sub @ (sK530 @ X31 @ X30 @ X29 @ X28) @ (push @ X30 @ X28))) != (X31 @ (sK530 @ X31 @ X30 @ X29 @ X28))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f679,plain,(
% 6.77/2.22    ? [X33 : subst,X34 : term > $o,X35 : term,X36 : term > $o] : (($true = (X34 @ X35)) & ($true != (X36 @ one)) & ! [X37 : term] : ((X34 @ (sub @ X37 @ (push @ X35 @ X33))) = (X36 @ X37))) => (($true = (sK532 @ sK533)) & ((sK534 @ one) != $true) & ! [X37 : term] : ((sK532 @ (sub @ X37 @ (push @ sK533 @ sK531))) = (sK534 @ X37)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f680,plain,(
% 6.77/2.22    ? [X38 : subst > term > subst > $o,X39 : term] : (($true != (sP85 @ X38)) & ($true != (sP84 @ X38)) & ($true != (X38 @ id @ X39 @ id))) => (($true != (sP85 @ sK535)) & ($true != (sP84 @ sK535)) & ($true != (sK535 @ id @ sK536 @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f681,plain,(
% 6.77/2.22    ? [X42 : term,X43 : term] : (((sub @ X43 @ sh) = (sub @ X42 @ sh)) & (X42 != X43)) => (((sub @ sK538 @ sh) = (sub @ sK537 @ sh)) & (sK538 != sK537))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f682,plain,(
% 6.77/2.22    ? [X48 : term,X49 : term,X50 : term,X51 : term] : ((X49 != X51) & ((ap @ X50 @ X49) = (ap @ X48 @ X51))) => ((sK540 != sK542) & ((ap @ sK541 @ sK540) = (ap @ sK539 @ sK542)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f683,plain,(
% 6.77/2.22    ? [X57 : term] : ((sub @ X57 @ id) != X57) => (sK543 != (sub @ sK543 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f684,plain,(
% 6.77/2.22    ? [X62 : term,X63 : term,X64 : term,X65 : term] : (((ap @ (sub @ X62 @ id) @ X64) = (ap @ (sub @ X65 @ id) @ X63)) & (X63 != X64)) => (((ap @ (sub @ sK547 @ id) @ sK545) = (ap @ (sub @ sK544 @ id) @ sK546)) & (sK546 != sK545))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f685,plain,(
% 6.77/2.22    ! [X68 : term] : (? [X69 : subst > term > term] : ! [X70 : term,X71 : subst] : ((X69 @ X71 @ X70) = (sub @ X68 @ (push @ X70 @ X71))) => ! [X71 : subst,X70 : term] : ((sK548 @ X68 @ X71 @ X70) = (sub @ X68 @ (push @ X70 @ X71))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f686,plain,(
% 6.77/2.22    ? [X72 : term] : ! [X73 : subst > term > term] : ? [X74 : term,X75 : subst] : ((X73 @ X75 @ X74) != (sub @ X72 @ (push @ X74 @ X75))) => ! [X73 : subst > term > term] : ? [X75 : subst,X74 : term] : ((sub @ sK549 @ (push @ X74 @ X75)) != (X73 @ X75 @ X74))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f687,plain,(
% 6.77/2.22    ! [X73 : subst > term > term] : (? [X75 : subst,X74 : term] : ((sub @ sK549 @ (push @ X74 @ X75)) != (X73 @ X75 @ X74)) => ((sub @ sK549 @ (push @ (sK550 @ X73) @ (sK551 @ X73))) != (X73 @ (sK551 @ X73) @ (sK550 @ X73))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f688,plain,(
% 6.77/2.22    ? [X76 : term,X77 : subst] : ((sub @ one @ (push @ X76 @ X77)) != X76) => ((sub @ one @ (push @ sK552 @ sK553)) != sK552)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f689,plain,(
% 6.77/2.22    ? [X78 : subst] : ((comp @ X78 @ id) != X78) => (sK554 != (comp @ sK554 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f690,plain,(
% 6.77/2.22    ? [X79 : term,X80 : subst] : ((comp @ sh @ (push @ X79 @ X80)) != X80) => (sK556 != (comp @ sh @ (push @ sK555 @ sK556)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f691,plain,(
% 6.77/2.22    ? [X86 : subst,X87 : term > $o,X88 : term,X89 : term,X90 : term > $o] : (($true = (X90 @ X89)) & ($true != (X87 @ (sub @ X89 @ (push @ X88 @ X86))))) => (($true = (sK561 @ sK560)) & ($true != (sK558 @ (sub @ sK560 @ (push @ sK559 @ sK557)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f692,plain,(
% 6.77/2.22    ? [X98 : subst,X99 : term] : ((sub @ one @ (push @ X99 @ X98)) != X99) => (sK563 != (sub @ one @ (push @ sK563 @ sK562)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f693,plain,(
% 6.77/2.22    ? [X102 : term,X103 : term > $o,X104 : term > $o,X105 : subst] : (! [X106 : term] : ((X103 @ X106) = (X104 @ (sub @ X106 @ (push @ X102 @ X105)))) & ($true = (X104 @ X102)) & ($true != (X103 @ one))) => (! [X106 : term] : ((sK566 @ (sub @ X106 @ (push @ sK564 @ sK567))) = (sK565 @ X106)) & ($true = (sK566 @ sK564)) & ($true != (sK565 @ one)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f694,plain,(
% 6.77/2.22    ? [X107 : term,X108 : subst] : ((sub @ one @ (push @ X107 @ X108)) != X107) => ((sub @ one @ (push @ sK568 @ sK569)) != sK568)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f695,plain,(
% 6.77/2.22    ! [X109 : term,X110 : term > $o,X111 : term > $o,X112 : subst] : (? [X113 : term] : ((X110 @ X113) != (X111 @ (sub @ X113 @ (push @ X109 @ X112)))) => ((X111 @ (sub @ (sK570 @ X112 @ X111 @ X110 @ X109) @ (push @ X109 @ X112))) != (X110 @ (sK570 @ X112 @ X111 @ X110 @ X109))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f696,plain,(
% 6.77/2.22    ? [X118 : term,X119 : term,X120 : term,X121 : term] : ((X119 != X120) & ((ap @ X120 @ X121) = (ap @ X119 @ X118))) => ((sK573 != sK572) & ((ap @ sK573 @ sK574) = (ap @ sK572 @ sK571)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f697,plain,(
% 6.77/2.22    ! [X124 : subst > term > term] : (? [X126 : term,X127 : subst,X128 : subst] : ((X124 @ (comp @ X128 @ X127) @ (sub @ X126 @ X127)) != (sub @ (X124 @ X128 @ X126) @ X127)) => ((X124 @ (comp @ (sK577 @ X124) @ (sK576 @ X124)) @ (sub @ (sK575 @ X124) @ (sK576 @ X124))) != (sub @ (X124 @ (sK577 @ X124) @ (sK575 @ X124)) @ (sK576 @ X124))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f698,plain,(
% 6.77/2.22    ! [X122 : subst > term > term] : (? [X129 : subst,X130 : term,X131 : subst] : ((X122 @ (comp @ X131 @ X129) @ (sub @ X130 @ X129)) != (sub @ (X122 @ X131 @ X130) @ X129)) => ((sub @ (X122 @ (sK580 @ X122) @ (sK579 @ X122)) @ (sK578 @ X122)) != (X122 @ (comp @ (sK580 @ X122) @ (sK578 @ X122)) @ (sub @ (sK579 @ X122) @ (sK578 @ X122)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f699,plain,(
% 6.77/2.22    ? [X132 : subst > term > term,X133 : subst,X134 : subst > term > term,X135 : term] : (! [X136 : term,X137 : subst,X138 : subst] : ((X134 @ (comp @ X138 @ X137) @ (sub @ X136 @ X137)) = (sub @ (X134 @ X138 @ X136) @ X137)) & ((lam @ (X134 @ sh @ one)) = (lam @ (X132 @ sh @ one))) & ((X132 @ X133 @ X135) != (X134 @ X133 @ X135)) & ! [X139 : subst,X140 : term,X141 : subst] : ((X132 @ (comp @ X141 @ X139) @ (sub @ X140 @ X139)) = (sub @ (X132 @ X141 @ X140) @ X139))) => (! [X138 : subst,X137 : subst,X136 : term] : ((sK583 @ (comp @ X138 @ X137) @ (sub @ X136 @ X137)) = (sub @ (sK583 @ X138 @ X136) @ X137)) & ((lam @ (sK581 @ sh @ one)) = (lam @ (sK583 @ sh @ one))) & ((sK583 @ sK582 @ sK584) != (sK581 @ sK582 @ sK584)) & ! [X141 : subst,X140 : term,X139 : subst] : ((sub @ (sK581 @ X141 @ X140) @ X139) = (sK581 @ (comp @ X141 @ X139) @ (sub @ X140 @ X139))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f700,plain,(
% 6.77/2.22    ? [X142 : term] : ! [X143 : subst > term > term] : ? [X144 : term,X145 : subst] : ((sub @ X142 @ (push @ X144 @ X145)) != (X143 @ X145 @ X144)) => ! [X143 : subst > term > term] : ? [X145 : subst,X144 : term] : ((X143 @ X145 @ X144) != (sub @ sK585 @ (push @ X144 @ X145)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f701,plain,(
% 6.77/2.22    ! [X143 : subst > term > term] : (? [X145 : subst,X144 : term] : ((X143 @ X145 @ X144) != (sub @ sK585 @ (push @ X144 @ X145))) => ((X143 @ (sK587 @ X143) @ (sK586 @ X143)) != (sub @ sK585 @ (push @ (sK586 @ X143) @ (sK587 @ X143)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f702,plain,(
% 6.77/2.22    ! [X146 : term] : (? [X147 : subst > term > term] : ! [X148 : term,X149 : subst] : ((sub @ X146 @ (push @ X148 @ X149)) = (X147 @ X149 @ X148)) => ! [X149 : subst,X148 : term] : ((sub @ X146 @ (push @ X148 @ X149)) = (sK588 @ X146 @ X149 @ X148)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f703,plain,(
% 6.77/2.22    ! [X151 : subst > term > term] : (? [X154 : term,X155 : subst,X156 : subst] : ((sub @ (X151 @ X156 @ X154) @ X155) != (X151 @ (comp @ X156 @ X155) @ (sub @ X154 @ X155))) => ((sub @ (X151 @ (sK591 @ X151) @ (sK589 @ X151)) @ (sK590 @ X151)) != (X151 @ (comp @ (sK591 @ X151) @ (sK590 @ X151)) @ (sub @ (sK589 @ X151) @ (sK590 @ X151)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f704,plain,(
% 6.77/2.22    ? [X157 : subst > term > term,X158 : term,X159 : term] : (((lam @ (X157 @ sh @ one)) = (ap @ (sub @ X159 @ id) @ X158)) & ! [X160 : term,X161 : subst,X162 : subst] : ((X157 @ (comp @ X162 @ X161) @ (sub @ X160 @ X161)) = (sub @ (X157 @ X162 @ X160) @ X161))) => (((lam @ (sK592 @ sh @ one)) = (ap @ (sub @ sK594 @ id) @ sK593)) & ! [X162 : subst,X161 : subst,X160 : term] : ((sK592 @ (comp @ X162 @ X161) @ (sub @ X160 @ X161)) = (sub @ (sK592 @ X162 @ X160) @ X161)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f705,plain,(
% 6.77/2.22    ? [X163 : term] : ((sub @ X163 @ id) != X163) => ((sub @ sK595 @ id) != sK595)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f706,plain,(
% 6.77/2.22    ? [X166 : term] : ((sub @ X166 @ id) != X166) => ((sub @ sK596 @ id) != sK596)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f707,plain,(
% 6.77/2.22    ? [X167 : subst] : ((comp @ X167 @ id) != X167) => (sK597 != (comp @ sK597 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f708,plain,(
% 6.77/2.22    ? [X169 : subst] : ((push @ (sub @ one @ X169) @ (comp @ sh @ X169)) != X169) => (sK598 != (push @ (sub @ one @ sK598) @ (comp @ sh @ sK598)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f709,plain,(
% 6.77/2.22    ? [X171 : term] : ! [X172 : subst > term > term] : ((X172 @ sh @ one) != (sub @ X171 @ (push @ one @ sh))) => ! [X172 : subst > term > term] : ((X172 @ sh @ one) != (sub @ sK599 @ (push @ one @ sh)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f710,plain,(
% 6.77/2.22    ! [X173 : term] : (? [X174 : subst > term > term] : ((X174 @ sh @ one) = (sub @ X173 @ (push @ one @ sh))) => ((sK600 @ X173 @ sh @ one) = (sub @ X173 @ (push @ one @ sh))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f711,plain,(
% 6.77/2.22    ! [X175 : subst,X176 : term > $o,X177 : term] : (? [X178 : term > $o] : ! [X179 : term] : ((X176 @ (sub @ X179 @ (push @ X177 @ X175))) = (X178 @ X179)) => ! [X179 : term] : ((sK601 @ X177 @ X176 @ X175 @ X179) = (X176 @ (sub @ X179 @ (push @ X177 @ X175)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f712,plain,(
% 6.77/2.22    ? [X180 : subst,X181 : term > $o,X182 : term] : ! [X183 : term > $o] : ? [X184 : term] : ((X181 @ (sub @ X184 @ (push @ X182 @ X180))) != (X183 @ X184)) => ! [X183 : term > $o] : ? [X184 : term] : ((sK603 @ (sub @ X184 @ (push @ sK604 @ sK602))) != (X183 @ X184))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f713,plain,(
% 6.77/2.22    ! [X183 : term > $o] : (? [X184 : term] : ((sK603 @ (sub @ X184 @ (push @ sK604 @ sK602))) != (X183 @ X184)) => ((X183 @ (sK605 @ X183)) != (sK603 @ (sub @ (sK605 @ X183) @ (push @ sK604 @ sK602)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f714,plain,(
% 6.77/2.22    ? [X186 : term] : ((sub @ X186 @ id) != X186) => ((sub @ sK606 @ id) != sK606)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f715,plain,(
% 6.77/2.22    ! [X187 : subst > term > subst > $o] : (? [X188 : term > $o] : ! [X189 : term] : ((X187 @ id @ X189 @ id) = (X188 @ X189)) => ! [X189 : term] : ((X187 @ id @ X189 @ id) = (sK607 @ X187 @ X189)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f716,plain,(
% 6.77/2.22    ? [X190 : subst > term > subst > $o] : ! [X191 : term > $o] : ? [X192 : term] : ((X191 @ X192) != (X190 @ id @ X192 @ id)) => ! [X191 : term > $o] : ? [X192 : term] : ((X191 @ X192) != (sK608 @ id @ X192 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f717,plain,(
% 6.77/2.22    ! [X191 : term > $o] : (? [X192 : term] : ((X191 @ X192) != (sK608 @ id @ X192 @ id)) => ((X191 @ (sK609 @ X191)) != (sK608 @ id @ (sK609 @ X191) @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f718,plain,(
% 6.77/2.22    ? [X193 : term] : ((sub @ X193 @ id) != X193) => (sK610 != (sub @ sK610 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f719,plain,(
% 6.77/2.22    ! [X195 : subst] : (? [X196 : d_subst] : ((d2subst @ X196) = X195) => ((d2subst @ (sK611 @ X195)) = X195))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f720,plain,(
% 6.77/2.22    ! [X197 : term] : (? [X198 : subst > term > term] : ((sub @ X197 @ (push @ one @ sh)) = (X198 @ sh @ one)) => ((sub @ X197 @ (push @ one @ sh)) = (sK612 @ X197 @ sh @ one)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f721,plain,(
% 6.77/2.22    ? [X199 : term] : ! [X200 : subst > term > term] : ((sub @ X199 @ (push @ one @ sh)) != (X200 @ sh @ one)) => ! [X200 : subst > term > term] : ((sub @ sK613 @ (push @ one @ sh)) != (X200 @ sh @ one))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f722,plain,(
% 6.77/2.22    ? [X201 : subst > term > subst > $o] : ! [X202 : term > $o] : ? [X203 : term] : ((X201 @ id @ X203 @ id) != (X202 @ X203)) => ! [X202 : term > $o] : ? [X203 : term] : ((sK614 @ id @ X203 @ id) != (X202 @ X203))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f723,plain,(
% 6.77/2.22    ! [X202 : term > $o] : (? [X203 : term] : ((sK614 @ id @ X203 @ id) != (X202 @ X203)) => ((sK614 @ id @ (sK615 @ X202) @ id) != (X202 @ (sK615 @ X202))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f724,plain,(
% 6.77/2.22    ! [X204 : subst > term > subst > $o] : (? [X205 : term > $o] : ! [X206 : term] : ((X204 @ id @ X206 @ id) = (X205 @ X206)) => ! [X206 : term] : ((sK616 @ X204 @ X206) = (X204 @ id @ X206 @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f725,plain,(
% 6.77/2.22    ? [X208 : subst > term > subst > $o] : ! [X209 : term > $o] : ? [X210 : term] : ((X209 @ X210) != (X208 @ id @ X210 @ id)) => ! [X209 : term > $o] : ? [X210 : term] : ((sK617 @ id @ X210 @ id) != (X209 @ X210))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f726,plain,(
% 6.77/2.22    ! [X209 : term > $o] : (? [X210 : term] : ((sK617 @ id @ X210 @ id) != (X209 @ X210)) => ((X209 @ (sK618 @ X209)) != (sK617 @ id @ (sK618 @ X209) @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f727,plain,(
% 6.77/2.22    ? [X211 : term] : ((sub @ X211 @ id) != X211) => ((sub @ sK619 @ id) != sK619)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f728,plain,(
% 6.77/2.22    ! [X212 : subst > term > subst > $o] : (? [X213 : term > $o] : ! [X214 : term] : ((X213 @ X214) = (X212 @ id @ X214 @ id)) => ! [X214 : term] : ((sK620 @ X212 @ X214) = (X212 @ id @ X214 @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f729,plain,(
% 6.77/2.22    ? [X218 : term,X219 : term] : (((lam @ X218) = (lam @ X219)) & (X218 != X219)) => (((lam @ sK622) = (lam @ sK621)) & (sK622 != sK621))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f730,plain,(
% 6.77/2.22    ? [X221 : term] : ((sub @ X221 @ id) != X221) => (sK623 != (sub @ sK623 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f731,plain,(
% 6.77/2.22    ? [X222 : term] : ! [X223 : subst > term > term] : ? [X224 : subst,X225 : term] : ((X223 @ X224 @ X225) != (sub @ X222 @ (push @ X225 @ X224))) => ! [X223 : subst > term > term] : ? [X225 : term,X224 : subst] : ((X223 @ X224 @ X225) != (sub @ sK624 @ (push @ X225 @ X224)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f732,plain,(
% 6.77/2.22    ! [X223 : subst > term > term] : (? [X225 : term,X224 : subst] : ((X223 @ X224 @ X225) != (sub @ sK624 @ (push @ X225 @ X224))) => ((sub @ sK624 @ (push @ (sK626 @ X223) @ (sK625 @ X223))) != (X223 @ (sK625 @ X223) @ (sK626 @ X223))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f733,plain,(
% 6.77/2.22    ? [X226 : term] : ((sub @ X226 @ id) != X226) => ((sub @ sK627 @ id) != sK627)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f734,plain,(
% 6.77/2.22    ! [X227 : term] : (? [X228 : subst > term > term] : ! [X229 : subst,X230 : term] : ((sub @ X227 @ (push @ X230 @ X229)) = (X228 @ X229 @ X230)) => ! [X230 : term,X229 : subst] : ((sub @ X227 @ (push @ X230 @ X229)) = (sK628 @ X227 @ X229 @ X230)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f735,plain,(
% 6.77/2.22    ? [X232 : term,X233 : term,X234 : term,X235 : term] : (((ap @ (sub @ X235 @ id) @ X233) = (ap @ (sub @ X232 @ id) @ X234)) & (X232 != X235)) => (((ap @ (sub @ sK632 @ id) @ sK630) = (ap @ (sub @ sK629 @ id) @ sK631)) & (sK629 != sK632))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f736,plain,(
% 6.77/2.22    ? [X240 : subst] : ((comp @ X240 @ id) != X240) => (sK633 != (comp @ sK633 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f737,plain,(
% 6.77/2.22    ? [X241 : subst] : ((comp @ id @ X241) != X241) => ((comp @ id @ sK634) != sK634)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f738,plain,(
% 6.77/2.22    ? [X244 : term,X245 : term > $o,X246 : subst] : ! [X247 : term > $o] : ? [X248 : term] : ((X247 @ X248) != (X245 @ (sub @ X248 @ (push @ X244 @ X246)))) => ! [X247 : term > $o] : ? [X248 : term] : ((X247 @ X248) != (sK636 @ (sub @ X248 @ (push @ sK635 @ sK637))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f739,plain,(
% 6.77/2.22    ! [X247 : term > $o] : (? [X248 : term] : ((X247 @ X248) != (sK636 @ (sub @ X248 @ (push @ sK635 @ sK637)))) => ((X247 @ (sK638 @ X247)) != (sK636 @ (sub @ (sK638 @ X247) @ (push @ sK635 @ sK637)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f740,plain,(
% 6.77/2.22    ! [X249 : term,X250 : term > $o,X251 : subst] : (? [X252 : term > $o] : ! [X253 : term] : ((X252 @ X253) = (X250 @ (sub @ X253 @ (push @ X249 @ X251)))) => ! [X253 : term] : ((sK639 @ X251 @ X250 @ X249 @ X253) = (X250 @ (sub @ X253 @ (push @ X249 @ X251)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f741,plain,(
% 6.77/2.22    ? [X254 : subst] : ((comp @ id @ X254) != X254) => (sK640 != (comp @ id @ sK640))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f742,plain,(
% 6.77/2.22    ? [X256 : term] : ((sub @ X256 @ id) != X256) => (sK641 != (sub @ sK641 @ id))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f743,plain,(
% 6.77/2.22    ? [X258 : term,X259 : subst] : ((comp @ sh @ (push @ X258 @ X259)) != X259) => ((comp @ sh @ (push @ sK642 @ sK643)) != sK643)),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f744,plain,(
% 6.77/2.22    ! [X262 : term] : (? [X263 : d_term] : ((d2term @ X263) = X262) => ((d2term @ (sK644 @ X262)) = X262))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f669,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP108) & ($true != sP107) & ! [X0 : subst > term > subst > $o] : ? [X1 : term > $o] : ! [X2 : term] : ((X1 @ X2) = (X0 @ id @ X2 @ id)) & ($true != sP106) & ! [X3 : term] : ((sub @ X3 @ id) = X3))) & (($true = sP108) | ($true = sP107) | ? [X4 : subst > term > subst > $o] : ! [X5 : term > $o] : ? [X6 : term] : ((X4 @ id @ X6 @ id) != (X5 @ X6)) | ($true = sP106) | ? [X7 : term] : ((sub @ X7 @ id) != X7) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X8 : term] : ((sub @ X8 @ id) = X8) & ($true != sP98) & ($true != sP99))) & (? [X9 : term] : ((sub @ X9 @ id) != X9) | ($true = sP98) | ($true = sP99) | (hoasinduction_lem3_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X10 : subst,X11 : term] : ((sub @ one @ (push @ X11 @ X10)) = X11) & ? [X12 : term,X13 : subst,X14 : term > $o,X15 : term,X16 : term > $o] : (($true != (X16 @ (sub @ X15 @ (push @ X12 @ X13)))) & ($true = (X14 @ X15))) & ! [X17 : subst,X18 : term] : ((comp @ sh @ (push @ X18 @ X17)) = X17))) & (? [X19 : subst,X20 : term] : ((sub @ one @ (push @ X20 @ X19)) != X20) | ! [X21 : term,X22 : subst,X23 : term > $o,X24 : term,X25 : term > $o] : (($true = (X25 @ (sub @ X24 @ (push @ X21 @ X22)))) | ((X23 @ X24) != $true)) | ? [X26 : subst,X27 : term] : ((comp @ sh @ (push @ X27 @ X26)) != X26) | (pushprop_lem1_lthm != $true)) & (! [X28 : subst,X29 : term > $o,X30 : term,X31 : term > $o] : (($true != (X29 @ X30)) | ($true = (X31 @ one)) | ? [X32 : term] : ((X31 @ X32) != (X29 @ (sub @ X32 @ (push @ X30 @ X28))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X33 : subst,X34 : term > $o,X35 : term,X36 : term > $o] : (($true = (X34 @ X35)) & ($true != (X36 @ one)) & ! [X37 : term] : ((X34 @ (sub @ X37 @ (push @ X35 @ X33))) = (X36 @ X37)))) & (hoasapnotvar = $true) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & ((d2subst @ d_id) = id) & (($true = sP90) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP90)) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | ? [X38 : subst > term > subst > $o,X39 : term] : (($true != (sP85 @ X38)) & ($true != (sP84 @ X38)) & ($true != (X38 @ id @ X39 @ id)))) & (! [X40 : subst > term > subst > $o,X41 : term] : (($true = (sP85 @ X40)) | ($true = (sP84 @ X40)) | ($true = (X40 @ id @ X41 @ id))) | (hoasinduction_no_psi_cond != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & ((shinj = $true) | ? [X42 : term,X43 : term] : (((sub @ X43 @ sh) = (sub @ X42 @ sh)) & (X42 != X43))) & (! [X44 : term,X45 : term] : (((sub @ X44 @ sh) != (sub @ X45 @ sh)) | (X44 = X45)) | (shinj != $true)) & (ulamvarind = $true) & ! [X46 : d_subst,X47 : d_subst] : (((d2subst @ X47) != (d2subst @ X46)) | (X46 = X47)) & ((apinj2 = $true) | ? [X48 : term,X49 : term,X50 : term,X51 : term] : ((X49 != X51) & ((ap @ X50 @ X49) = (ap @ X48 @ X51)))) & (! [X52 : term,X53 : term,X54 : term,X55 : term] : ((X53 = X55) | ((ap @ X52 @ X55) != (ap @ X54 @ X53))) | (apinj2 != $true)) & (($true = sP83) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP83)) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP81) & ($true != sP80) & ! [X56 : term] : ((sub @ X56 @ id) = X56))) & (($true = sP81) | ($true = sP80) | ? [X57 : term] : ((sub @ X57 @ id) != X57) | (hoasinduction_lem3a_lthm != $true)) & (! [X58 : term,X59 : term,X60 : term,X61 : term] : (((ap @ (sub @ X61 @ id) @ X59) != (ap @ (sub @ X58 @ id) @ X60)) | (X59 = X60)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X62 : term,X63 : term,X64 : term,X65 : term] : (((ap @ (sub @ X62 @ id) @ X64) = (ap @ (sub @ X65 @ id) @ X63)) & (X63 != X64))) & ! [X66 : d_term,X67 : d_term] : (((d2term @ X67) != (d2term @ X66)) | (X66 = X67)) & (pushprop_lem2v2_lthm = $true) & (! [X68 : term] : ? [X69 : subst > term > term] : ! [X70 : term,X71 : subst] : ((X69 @ X71 @ X70) = (sub @ X68 @ (push @ X70 @ X71))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X72 : term] : ! [X73 : subst > term > term] : ? [X74 : term,X75 : subst] : ((X73 @ X75 @ X74) != (sub @ X72 @ (push @ X74 @ X75)))) & (termmset_gthm = $true) & (? [X76 : term,X77 : subst] : ((sub @ one @ (push @ X76 @ X77)) != X76) | ? [X78 : subst] : ((comp @ X78 @ id) != X78) | ? [X79 : term,X80 : subst] : ((comp @ sh @ (push @ X79 @ X80)) != X80) | ($true = sP76) | ($true = sP77) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | (! [X81 : term,X82 : subst] : ((sub @ one @ (push @ X81 @ X82)) = X81) & ! [X83 : subst] : ((comp @ X83 @ id) = X83) & ! [X84 : term,X85 : subst] : ((comp @ sh @ (push @ X84 @ X85)) = X85) & ($true != sP76) & ($true != sP77))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1 = $true) | ? [X86 : subst,X87 : term > $o,X88 : term,X89 : term,X90 : term > $o] : (($true = (X90 @ X89)) & ($true != (X87 @ (sub @ X89 @ (push @ X88 @ X86)))))) & (! [X91 : subst,X92 : term > $o,X93 : term,X94 : term,X95 : term > $o] : (($true != (X95 @ X94)) | ($true = (X92 @ (sub @ X94 @ (push @ X93 @ X91))))) | (pushprop_lem1 != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & (! [X96 : subst,X97 : term] : ((sub @ one @ (push @ X97 @ X96)) = X97) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X98 : subst,X99 : term] : ((sub @ one @ (push @ X99 @ X98)) != X99)) & (pushprop_lem3v2 = $true) & ((pushprop_lem1v2_lthm = $true) | (! [X100 : term,X101 : subst] : ((sub @ one @ (push @ X100 @ X101)) = X100) & ? [X102 : term,X103 : term > $o,X104 : term > $o,X105 : subst] : (! [X106 : term] : ((X103 @ X106) = (X104 @ (sub @ X106 @ (push @ X102 @ X105)))) & ($true = (X104 @ X102)) & ($true != (X103 @ one))))) & (? [X107 : term,X108 : subst] : ((sub @ one @ (push @ X107 @ X108)) != X107) | ! [X109 : term,X110 : term > $o,X111 : term > $o,X112 : subst] : (? [X113 : term] : ((X110 @ X113) != (X111 @ (sub @ X113 @ (push @ X109 @ X112)))) | ($true != (X111 @ X109)) | ($true = (X110 @ one))) | (pushprop_lem1v2_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & (($true = sP71) | ($true = sP70) | ($true = sP69) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP71) & ($true != sP70) & ($true != sP69) & ($true != sP68))) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & (! [X114 : term,X115 : term,X116 : term,X117 : term] : ((X115 = X116) | ((ap @ X115 @ X114) != (ap @ X116 @ X117))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X118 : term,X119 : term,X120 : term,X121 : term] : ((X119 != X120) & ((ap @ X120 @ X121) = (ap @ X119 @ X118)))) & (! [X122 : subst > term > term,X123 : subst,X124 : subst > term > term,X125 : term] : (? [X126 : term,X127 : subst,X128 : subst] : ((X124 @ (comp @ X128 @ X127) @ (sub @ X126 @ X127)) != (sub @ (X124 @ X128 @ X126) @ X127)) | ((lam @ (X122 @ sh @ one)) != (lam @ (X124 @ sh @ one))) | ((X122 @ X123 @ X125) = (X124 @ X123 @ X125)) | ? [X129 : subst,X130 : term,X131 : subst] : ((X122 @ (comp @ X131 @ X129) @ (sub @ X130 @ X129)) != (sub @ (X122 @ X131 @ X130) @ X129))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X132 : subst > term > term,X133 : subst,X134 : subst > term > term,X135 : term] : (! [X136 : term,X137 : subst,X138 : subst] : ((X134 @ (comp @ X138 @ X137) @ (sub @ X136 @ X137)) = (sub @ (X134 @ X138 @ X136) @ X137)) & ((lam @ (X134 @ sh @ one)) = (lam @ (X132 @ sh @ one))) & ((X132 @ X133 @ X135) != (X134 @ X133 @ X135)) & ! [X139 : subst,X140 : term,X141 : subst] : ((X132 @ (comp @ X141 @ X139) @ (sub @ X140 @ X139)) = (sub @ (X132 @ X141 @ X140) @ X139)))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((hoasinduction_lem3aaa = $true) | ($true != sP56)) & (($true = sP56) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X142 : term] : ! [X143 : subst > term > term] : ? [X144 : term,X145 : subst] : ((sub @ X142 @ (push @ X144 @ X145)) != (X143 @ X145 @ X144))) & (! [X146 : term] : ? [X147 : subst > term > term] : ! [X148 : term,X149 : subst] : ((sub @ X146 @ (push @ X148 @ X149)) = (X147 @ X149 @ X148)) | (hoasinduction_lem3v2_f != $true)) & ! [X150 : d_term] : (d_one = X150) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X151 : subst > term > term,X152 : term,X153 : term] : (((ap @ (sub @ X153 @ id) @ X152) != (lam @ (X151 @ sh @ one))) | ? [X154 : term,X155 : subst,X156 : subst] : ((sub @ (X151 @ X156 @ X154) @ X155) != (X151 @ (comp @ X156 @ X155) @ (sub @ X154 @ X155)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X157 : subst > term > term,X158 : term,X159 : term] : (((lam @ (X157 @ sh @ one)) = (ap @ (sub @ X159 @ id) @ X158)) & ! [X160 : term,X161 : subst,X162 : subst] : ((X157 @ (comp @ X162 @ X161) @ (sub @ X160 @ X161)) = (sub @ (X157 @ X162 @ X160) @ X161)))) & (hoaslamnotvar = $true) & (? [X163 : term] : ((sub @ X163 @ id) != X163) | ! [X164 : term] : ((sub @ X164 @ id) = X164) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X165 : term] : ((sub @ X165 @ id) = X165) & ? [X166 : term] : ((sub @ X166 @ id) != X166))) & ((hoasinduction_lem3aa_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3aa_lthm != $true)) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & ((axidr = $true) | ? [X167 : subst] : ((comp @ X167 @ id) != X167)) & (! [X168 : subst] : ((comp @ X168 @ id) = X168) | (axidr != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & ((axscons = $true) | ? [X169 : subst] : ((push @ (sub @ one @ X169) @ (comp @ sh @ X169)) != X169)) & (! [X170 : subst] : ((push @ (sub @ one @ X170) @ (comp @ sh @ X170)) = X170) | (axscons != $true)) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasinduction_lem3b = $true) | ? [X171 : term] : ! [X172 : subst > term > term] : ((X172 @ sh @ one) != (sub @ X171 @ (push @ one @ sh)))) & (! [X173 : term] : ? [X174 : subst > term > term] : ((X174 @ sh @ one) = (sub @ X173 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3v2a != $true)) & (($true = sP48) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP48)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & ((induction2 = $true) | ($true != sP47)) & (($true = sP47) | (induction2 != $true)) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & (! [X175 : subst,X176 : term > $o,X177 : term] : ? [X178 : term > $o] : ! [X179 : term] : ((X176 @ (sub @ X179 @ (push @ X177 @ X175))) = (X178 @ X179)) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X180 : subst,X181 : term > $o,X182 : term] : ! [X183 : term > $o] : ? [X184 : term] : ((X181 @ (sub @ X184 @ (push @ X182 @ X180))) != (X183 @ X184))) & (! [X185 : term] : ((sub @ X185 @ id) = X185) | (axvarid != $true)) & ((axvarid = $true) | ? [X186 : term] : ((sub @ X186 @ id) != X186)) & (! [X187 : subst > term > subst > $o] : ? [X188 : term > $o] : ! [X189 : term] : ((X187 @ id @ X189 @ id) = (X188 @ X189)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X190 : subst > term > subst > $o] : ! [X191 : term > $o] : ? [X192 : term] : ((X191 @ X192) != (X190 @ id @ X192 @ id))) & ((sP43 = $true) | ? [X193 : term] : ((sub @ X193 @ id) != X193) | ($true = sP44) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ((sP43 != $true) & ! [X194 : term] : ((sub @ X194 @ id) = X194) & ($true != sP44))) & ! [X195 : subst] : ? [X196 : d_subst] : ((d2subst @ X196) = X195) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & (! [X197 : term] : ? [X198 : subst > term > term] : ((sub @ X197 @ (push @ one @ sh)) = (X198 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X199 : term] : ! [X200 : subst > term > term] : ((sub @ X199 @ (push @ one @ sh)) != (X200 @ sh @ one))) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem0 = $true) | ? [X201 : subst > term > subst > $o] : ! [X202 : term > $o] : ? [X203 : term] : ((X201 @ id @ X203 @ id) != (X202 @ X203))) & (! [X204 : subst > term > subst > $o] : ? [X205 : term > $o] : ! [X206 : term] : ((X204 @ id @ X206 @ id) = (X205 @ X206)) | (hoasinduction_lem0 != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X207 : d_subst] : (d_id = X207) & ((hoasinduction_lem3 = $true) | ($true != sP35)) & (($true = sP35) | (hoasinduction_lem3 != $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP31) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP31)) & (? [X208 : subst > term > subst > $o] : ! [X209 : term > $o] : ? [X210 : term] : ((X209 @ X210) != (X208 @ id @ X210 @ id)) | ? [X211 : term] : ((sub @ X211 @ id) != X211) | ($true = sP27) | ($true = sP29) | ($true = sP28) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X212 : subst > term > subst > $o] : ? [X213 : term > $o] : ! [X214 : term] : ((X213 @ X214) = (X212 @ id @ X214 @ id)) & ! [X215 : term] : ((sub @ X215 @ id) = X215) & ($true != sP27) & ($true != sP29) & ($true != sP28))) & ((induction2lem = $true) | ($true != sP19)) & (($true = sP19) | (induction2lem != $true)) & (! [X216 : term,X217 : term] : (((lam @ X216) != (lam @ X217)) | (X216 = X217)) | (laminj != $true)) & ((laminj = $true) | ? [X218 : term,X219 : term] : (((lam @ X218) = (lam @ X219)) & (X218 != X219))) & (! [X220 : term] : ((sub @ X220 @ id) = X220) | (termmset != $true)) & ((termmset = $true) | ? [X221 : term] : ((sub @ X221 @ id) != X221)) & ((sP16 = $true) | ? [X222 : term] : ! [X223 : subst > term > term] : ? [X224 : subst,X225 : term] : ((X223 @ X224 @ X225) != (sub @ X222 @ (push @ X225 @ X224))) | ? [X226 : term] : ((sub @ X226 @ id) != X226) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ((sP16 != $true) & ! [X227 : term] : ? [X228 : subst > term > term] : ! [X229 : subst,X230 : term] : ((sub @ X227 @ (push @ X230 @ X229)) = (X228 @ X229 @ X230)) & ! [X231 : term] : ((sub @ X231 @ id) = X231))) & (hoaslaminj_gthm = $true) & ((hoasapinj1 = $true) | ? [X232 : term,X233 : term,X234 : term,X235 : term] : (((ap @ (sub @ X235 @ id) @ X233) = (ap @ (sub @ X232 @ id) @ X234)) & (X232 != X235))) & (! [X236 : term,X237 : term,X238 : term,X239 : term] : (((ap @ (sub @ X236 @ id) @ X238) != (ap @ (sub @ X239 @ id) @ X237)) | (X236 = X239)) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & ((substmonoid = $true) | ? [X240 : subst] : ((comp @ X240 @ id) != X240) | ? [X241 : subst] : ((comp @ id @ X241) != X241)) & ((! [X242 : subst] : ((comp @ X242 @ id) = X242) & ! [X243 : subst] : ((comp @ id @ X243) = X243)) | (substmonoid != $true)) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & (($true = sP14) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP14)) & ((hoasapinj2_lthm = $true) | (sP12 != $true)) & ((sP12 = $true) | (hoasapinj2_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ? [X244 : term,X245 : term > $o,X246 : subst] : ! [X247 : term > $o] : ? [X248 : term] : ((X247 @ X248) != (X245 @ (sub @ X248 @ (push @ X244 @ X246))))) & (! [X249 : term,X250 : term > $o,X251 : subst] : ? [X252 : term > $o] : ! [X253 : term] : ((X252 @ X253) = (X250 @ (sub @ X253 @ (push @ X249 @ X251)))) | (pushprop_lem0 != $true)) & ((axidl = $true) | ? [X254 : subst] : ((comp @ id @ X254) != X254)) & (! [X255 : subst] : ((comp @ id @ X255) = X255) | (axidl != $true)) & (($true = sP10) | ? [X256 : term] : ((sub @ X256 @ id) != X256) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (($true != sP10) & ! [X257 : term] : ((sub @ X257 @ id) = X257))) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP6)) & (($true = sP6) | (hoasinduction_lem2 != $true)) & ((axshiftcons = $true) | ? [X258 : term,X259 : subst] : ((comp @ sh @ (push @ X258 @ X259)) != X259)) & (! [X260 : term,X261 : subst] : ((comp @ sh @ (push @ X260 @ X261)) = X261) | (axshiftcons != $true)) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X262 : term] : ? [X263 : d_term] : ((d2term @ X263) = X262) & (($true = sP3) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP3)) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    inference(rectify,[status(thm)],[f668])).
% 6.77/2.22  thf(f668,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP108) & ($true != sP107) & ! [X10 : subst > term > subst > $o] : ? [X11 : term > $o] : ! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) & ($true != sP106) & ! [X20 : term] : ((sub @ X20 @ id) = X20))) & (($true = sP108) | ($true = sP107) | ? [X10 : subst > term > subst > $o] : ! [X11 : term > $o] : ? [X12 : term] : ((X11 @ X12) != (X10 @ id @ X12 @ id)) | ($true = sP106) | ? [X20 : term] : ((sub @ X20 @ id) != X20) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X159 : term] : ((sub @ X159 @ id) = X159) & ($true != sP98) & ($true != sP99))) & (? [X159 : term] : ((sub @ X159 @ id) != X159) | ($true = sP98) | ($true = sP99) | (hoasinduction_lem3_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) = X495) & ? [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true != (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) & ($true = (X500 @ X501))) & ! [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) = X496))) & (? [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) != X495) | ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501))) | ? [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) != X496) | (pushprop_lem1_lthm != $true)) & (! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ? [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) != (X55 @ X56))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true = (X53 @ X54)) & ($true != (X55 @ one)) & ! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56)))) & (hoasapnotvar = $true) & (($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93)) & ((d2subst @ d_id) = id) & (($true = sP90) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP90)) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((hoasinduction_no_psi_cond = $true) | ? [X466 : subst > term > subst > $o,X467 : term] : (($true != (sP85 @ X466)) & ($true != (sP84 @ X466)) & ($true != (X466 @ id @ X467 @ id)))) & (! [X466 : subst > term > subst > $o,X467 : term] : (($true = (sP85 @ X466)) | ($true = (sP84 @ X466)) | ($true = (X466 @ id @ X467 @ id))) | (hoasinduction_no_psi_cond != $true)) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & ((shinj = $true) | ? [X266 : term,X267 : term] : (((sub @ X266 @ sh) = (sub @ X267 @ sh)) & (X266 != X267))) & (! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267)) | (shinj != $true)) & (ulamvarind = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) != (d2subst @ X45)) | (X44 = X45)) & ((apinj2 = $true) | ? [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 != X347) & ((ap @ X344 @ X347) = (ap @ X346 @ X345)))) & (! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345))) | (apinj2 != $true)) & (($true = sP83) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP83)) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) | (($true != sP81) & ($true != sP80) & ! [X249 : term] : ((sub @ X249 @ id) = X249))) & (($true = sP81) | ($true = sP80) | ? [X249 : term] : ((sub @ X249 @ id) != X249) | (hoasinduction_lem3a_lthm != $true)) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) = (ap @ (sub @ X465 @ id) @ X463)) & (X463 != X464))) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) != (d2term @ X460)) | (X459 = X460)) & (pushprop_lem2v2_lthm = $true) & (! [X48 : term] : ? [X49 : subst > term > term] : ! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X48 : term] : ! [X49 : subst > term > term] : ? [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) != (X49 @ X51 @ X50))) & (termmset_gthm = $true) & (? [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) != X475) | ? [X479 : subst] : ((comp @ X479 @ id) != X479) | ? [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) != X478) | ($true = sP76) | ($true = sP77) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | (! [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) = X475) & ! [X479 : subst] : ((comp @ X479 @ id) = X479) & ! [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) = X478) & ($true != sP76) & ($true != sP77))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1 = $true) | ? [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true = (X428 @ X427)) & ($true != (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & (! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424))))) | (pushprop_lem1 != $true)) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) != X524)) & (pushprop_lem3v2 = $true) & ((pushprop_lem1v2_lthm = $true) | (! [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) = X416) & ? [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (! [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) = (X419 @ X422)) & ($true = (X420 @ X418)) & ($true != (X419 @ one))))) & (? [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) != X416) | ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (? [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) != (X419 @ X422)) | ($true != (X420 @ X418)) | ($true = (X419 @ one))) | (pushprop_lem1v2_lthm != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & (($true = sP71) | ($true = sP70) | ($true = sP69) | ($true = sP68) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP71) & ($true != sP70) & ($true != sP69) & ($true != sP68))) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 != X157) & ((ap @ X156 @ X155) = (ap @ X157 @ X158)))) & (! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (? [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) != (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ? [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) != (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153)) & ((lam @ (X147 @ sh @ one)) = (lam @ (X145 @ sh @ one))) & ((X147 @ X146 @ X148) != (X145 @ X146 @ X148)) & ! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149))))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((hoasinduction_lem3aaa = $true) | ($true != sP56)) & (($true = sP56) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X445 : term] : ! [X446 : subst > term > term] : ? [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) != (sub @ X445 @ (push @ X447 @ X448)))) & (! [X445 : term] : ? [X446 : subst > term > term] : ! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448))) | (hoasinduction_lem3v2_f != $true)) & ! [X132 : d_term] : (d_one = X132) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))) | ? [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) != (sub @ (X368 @ X373 @ X371) @ X372))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) = (lam @ (X368 @ sh @ one))) & ! [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) = (sub @ (X368 @ X373 @ X371) @ X372)))) & (hoaslamnotvar = $true) & (? [X0 : term] : ((sub @ X0 @ id) != X0) | ! [X1 : term] : ((sub @ X1 @ id) = X1) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X0 : term] : ((sub @ X0 @ id) = X0) & ? [X1 : term] : ((sub @ X1 @ id) != X1))) & ((hoasinduction_lem3aa_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3aa_lthm != $true)) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & ((axidr = $true) | ? [X269 : subst] : ((comp @ X269 @ id) != X269)) & (! [X269 : subst] : ((comp @ X269 @ id) = X269) | (axidr != $true)) & ((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true)) & ((axscons = $true) | ? [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) != X268)) & (! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268) | (axscons != $true)) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasinduction_lem3b = $true) | ? [X130 : term] : ! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh)))) & (! [X130 : term] : ? [X131 : subst > term > term] : ((X131 @ sh @ one) = (sub @ X130 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3v2a = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3v2a != $true)) & (($true = sP48) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP48)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & ((induction2 = $true) | ($true != sP47)) & (($true = sP47) | (induction2 != $true)) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & (! [X535 : subst,X536 : term > $o,X537 : term] : ? [X538 : term > $o] : ! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X535 : subst,X536 : term > $o,X537 : term] : ! [X538 : term > $o] : ? [X539 : term] : ((X538 @ X539) != (X536 @ (sub @ X539 @ (push @ X537 @ X535))))) & (! [X461 : term] : ((sub @ X461 @ id) = X461) | (axvarid != $true)) & ((axvarid = $true) | ? [X461 : term] : ((sub @ X461 @ id) != X461)) & (! [X270 : subst > term > subst > $o] : ? [X271 : term > $o] : ! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X270 : subst > term > subst > $o] : ! [X271 : term > $o] : ? [X272 : term] : ((X270 @ id @ X272 @ id) != (X271 @ X272))) & ((sP43 = $true) | ? [X328 : term] : ((sub @ X328 @ id) != X328) | ($true = sP44) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ((sP43 != $true) & ! [X328 : term] : ((sub @ X328 @ id) = X328) & ($true != sP44))) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & (($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & (! [X40 : term] : ? [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) = (X41 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X40 : term] : ! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one))) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem0 = $true) | ? [X429 : subst > term > subst > $o] : ! [X430 : term > $o] : ? [X431 : term] : ((X429 @ id @ X431 @ id) != (X430 @ X431))) & (! [X429 : subst > term > subst > $o] : ? [X430 : term > $o] : ! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431)) | (hoasinduction_lem0 != $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X273 : d_subst] : (d_id = X273) & ((hoasinduction_lem3 = $true) | ($true != sP35)) & (($true = sP35) | (hoasinduction_lem3 != $true)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP31) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP31)) & (? [X194 : subst > term > subst > $o] : ! [X195 : term > $o] : ? [X196 : term] : ((X194 @ id @ X196 @ id) != (X195 @ X196)) | ? [X204 : term] : ((sub @ X204 @ id) != X204) | ($true = sP27) | ($true = sP29) | ($true = sP28) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X194 : subst > term > subst > $o] : ? [X195 : term > $o] : ! [X196 : term] : ((X194 @ id @ X196 @ id) = (X195 @ X196)) & ! [X204 : term] : ((sub @ X204 @ id) = X204) & ($true != sP27) & ($true != sP29) & ($true != sP28))) & ((induction2lem = $true) | ($true != sP19)) & (($true = sP19) | (induction2lem != $true)) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) | (laminj != $true)) & ((laminj = $true) | ? [X46 : term,X47 : term] : (((lam @ X47) = (lam @ X46)) & (X46 != X47))) & (! [X184 : term] : ((sub @ X184 @ id) = X184) | (termmset != $true)) & ((termmset = $true) | ? [X184 : term] : ((sub @ X184 @ id) != X184)) & ((sP16 = $true) | ? [X381 : term] : ! [X382 : subst > term > term] : ? [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) != (X382 @ X383 @ X384)) | ? [X385 : term] : ((sub @ X385 @ id) != X385) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ((sP16 != $true) & ! [X381 : term] : ? [X382 : subst > term > term] : ! [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) = (X382 @ X383 @ X384)) & ! [X385 : term] : ((sub @ X385 @ id) = X385))) & (hoaslaminj_gthm = $true) & ((hoasapinj1 = $true) | ? [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) = (ap @ (sub @ X136 @ id) @ X134)) & (X133 != X136))) & (! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136)) | (hoasapinj1 != $true)) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & ((substmonoid = $true) | ? [X534 : subst] : ((comp @ X534 @ id) != X534) | ? [X533 : subst] : ((comp @ id @ X533) != X533)) & ((! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533)) | (substmonoid != $true)) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & (($true = sP14) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP14)) & ((hoasapinj2_lthm = $true) | (sP12 != $true)) & ((sP12 = $true) | (hoasapinj2_lthm != $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) | ? [X348 : term,X349 : term > $o,X350 : subst] : ! [X351 : term > $o] : ? [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) != (X351 @ X352))) & (! [X348 : term,X349 : term > $o,X350 : subst] : ? [X351 : term > $o] : ! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352)) | (pushprop_lem0 != $true)) & ((axidl = $true) | ? [X423 : subst] : ((comp @ id @ X423) != X423)) & (! [X423 : subst] : ((comp @ id @ X423) = X423) | (axidl != $true)) & (($true = sP10) | ? [X111 : term] : ((sub @ X111 @ id) != X111) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (($true != sP10) & ! [X111 : term] : ((sub @ X111 @ id) = X111))) & (axassoc = $true) & ((hoasinduction_lem2 = $true) | ($true != sP6)) & (($true = sP6) | (hoasinduction_lem2 != $true)) & ((axshiftcons = $true) | ? [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) != X415)) & (! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415) | (axshiftcons != $true)) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & (($true = sP3) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP3)) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    inference(flattening,[status(thm)],[f667])).
% 6.77/2.22  thf(f667,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & (((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP108) & ($true != sP107) & ! [X10 : subst > term > subst > $o] : ? [X11 : term > $o] : ! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) & ($true != sP106) & ! [X20 : term] : ((sub @ X20 @ id) = X20))) & ((($true = sP108) | ($true = sP107) | ? [X10 : subst > term > subst > $o] : ! [X11 : term > $o] : ? [X12 : term] : ((X11 @ X12) != (X10 @ id @ X12 @ id)) | ($true = sP106) | ? [X20 : term] : ((sub @ X20 @ id) != X20)) | (hoasinduction_no_psi_cond_lthm != $true))) & (((hoasinduction_lem3_lthm = $true) | (! [X159 : term] : ((sub @ X159 @ id) = X159) & ($true != sP98) & ($true != sP99))) & ((? [X159 : term] : ((sub @ X159 @ id) != X159) | ($true = sP98) | ($true = sP99)) | (hoasinduction_lem3_lthm != $true))) & (((pushprop_lem1_lthm = $true) | (! [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) = X495) & ? [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true != (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) & ($true = (X500 @ X501))) & ! [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) = X496))) & ((? [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) != X495) | ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501))) | ? [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) != X496)) | (pushprop_lem1_lthm != $true))) & ((! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ? [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) != (X55 @ X56))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true = (X53 @ X54)) & ($true != (X55 @ one)) & ! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56))))) & (hoasapnotvar = $true) & ((($true = sP93) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ($true != sP93))) & ((d2subst @ d_id) = id) & ((($true = sP90) | (hoasinduction != $true)) & ((hoasinduction = $true) | ($true != sP90))) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & (((hoasinduction_no_psi_cond = $true) | ? [X466 : subst > term > subst > $o,X467 : term] : (($true != (sP85 @ X466)) & ($true != (sP84 @ X466)) & ($true != (X466 @ id @ X467 @ id)))) & (! [X466 : subst > term > subst > $o,X467 : term] : (($true = (sP85 @ X466)) | ($true = (sP84 @ X466)) | ($true = (X466 @ id @ X467 @ id))) | (hoasinduction_no_psi_cond != $true))) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & (((shinj = $true) | ? [X266 : term,X267 : term] : (((sub @ X266 @ sh) = (sub @ X267 @ sh)) & (X266 != X267))) & (! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267)) | (shinj != $true))) & (ulamvarind = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) != (d2subst @ X45)) | (X44 = X45)) & (((apinj2 = $true) | ? [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 != X347) & ((ap @ X344 @ X347) = (ap @ X346 @ X345)))) & (! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345))) | (apinj2 != $true))) & ((($true = sP83) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ($true != sP83))) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & (((hoasinduction_lem3a_lthm = $true) | (($true != sP81) & ($true != sP80) & ! [X249 : term] : ((sub @ X249 @ id) = X249))) & ((($true = sP81) | ($true = sP80) | ? [X249 : term] : ((sub @ X249 @ id) != X249)) | (hoasinduction_lem3a_lthm != $true))) & ((! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) = (ap @ (sub @ X465 @ id) @ X463)) & (X463 != X464)))) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) != (d2term @ X460)) | (X459 = X460)) & (pushprop_lem2v2_lthm = $true) & ((! [X48 : term] : ? [X49 : subst > term > term] : ! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X48 : term] : ! [X49 : subst > term > term] : ? [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) != (X49 @ X51 @ X50)))) & (termmset_gthm = $true) & (((? [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) != X475) | ? [X479 : subst] : ((comp @ X479 @ id) != X479) | ? [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) != X478) | ($true = sP76) | ($true = sP77)) | (induction2lem_lthm != $true)) & ((induction2lem_lthm = $true) | (! [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) = X475) & ! [X479 : subst] : ((comp @ X479 @ id) = X479) & ! [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) = X478) & ($true != sP76) & ($true != sP77)))) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (((pushprop_lem1 = $true) | ? [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true = (X428 @ X427)) & ($true != (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & (! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424))))) | (pushprop_lem1 != $true))) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & ((! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) != X524))) & (pushprop_lem3v2 = $true) & (((pushprop_lem1v2_lthm = $true) | (! [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) = X416) & ? [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (! [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) = (X419 @ X422)) & ($true = (X420 @ X418)) & ($true != (X419 @ one))))) & ((? [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) != X416) | ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (? [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) != (X419 @ X422)) | ($true != (X420 @ X418)) | ($true = (X419 @ one)))) | (pushprop_lem1v2_lthm != $true))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & (((($true = sP71) | ($true = sP70) | ($true = sP69) | ($true = sP68)) | (hoasinduction_lthm != $true)) & ((hoasinduction_lthm = $true) | (($true != sP71) & ($true != sP70) & ($true != sP69) & ($true != sP68)))) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & ((! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 != X157) & ((ap @ X156 @ X155) = (ap @ X157 @ X158))))) & ((! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (? [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) != (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ? [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) != (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153)) & ((lam @ (X147 @ sh @ one)) = (lam @ (X145 @ sh @ one))) & ((X147 @ X146 @ X148) != (X145 @ X146 @ X148)) & ! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))))) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & (((hoasinduction_lem3aaa = $true) | ($true != sP56)) & (($true = sP56) | (hoasinduction_lem3aaa != $true))) & (((hoasinduction_lem3v2_f = $true) | ? [X445 : term] : ! [X446 : subst > term > term] : ? [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) != (sub @ X445 @ (push @ X447 @ X448)))) & (! [X445 : term] : ? [X446 : subst > term > term] : ! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448))) | (hoasinduction_lem3v2_f != $true))) & ! [X132 : d_term] : (d_one = X132) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ((! [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))) | ? [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) != (sub @ (X368 @ X373 @ X371) @ X372))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) = (lam @ (X368 @ sh @ one))) & ! [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) = (sub @ (X368 @ X373 @ X371) @ X372))))) & (hoaslamnotvar = $true) & (((? [X0 : term] : ((sub @ X0 @ id) != X0) | ! [X1 : term] : ((sub @ X1 @ id) = X1)) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X0 : term] : ((sub @ X0 @ id) = X0) & ? [X1 : term] : ((sub @ X1 @ id) != X1)))) & (((hoasinduction_lem3aa_lthm = $true) | (sP54 != $true)) & ((sP54 = $true) | (hoasinduction_lem3aa_lthm != $true))) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & (((axidr = $true) | ? [X269 : subst] : ((comp @ X269 @ id) != X269)) & (! [X269 : subst] : ((comp @ X269 @ id) = X269) | (axidr != $true))) & (((hoasinduction_lem3a = $true) | ($true != sP52)) & (($true = sP52) | (hoasinduction_lem3a != $true))) & (((axscons = $true) | ? [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) != X268)) & (! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268) | (axscons != $true))) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (((hoasinduction_lem3b = $true) | ? [X130 : term] : ! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh)))) & (! [X130 : term] : ? [X131 : subst > term > term] : ((X131 @ sh @ one) = (sub @ X130 @ (push @ one @ sh))) | (hoasinduction_lem3b != $true))) & (((hoasinduction_lem3v2a = $true) | ($true != sP50)) & (($true = sP50) | (hoasinduction_lem3v2a != $true))) & ((($true = sP48) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ($true != sP48))) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & (((induction2 = $true) | ($true != sP47)) & (($true = sP47) | (induction2 != $true))) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & ((! [X535 : subst,X536 : term > $o,X537 : term] : ? [X538 : term > $o] : ! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X535 : subst,X536 : term > $o,X537 : term] : ! [X538 : term > $o] : ? [X539 : term] : ((X538 @ X539) != (X536 @ (sub @ X539 @ (push @ X537 @ X535)))))) & ((! [X461 : term] : ((sub @ X461 @ id) = X461) | (axvarid != $true)) & ((axvarid = $true) | ? [X461 : term] : ((sub @ X461 @ id) != X461))) & ((! [X270 : subst > term > subst > $o] : ? [X271 : term > $o] : ! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272)) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X270 : subst > term > subst > $o] : ! [X271 : term > $o] : ? [X272 : term] : ((X270 @ id @ X272 @ id) != (X271 @ X272)))) & ((((sP43 = $true) | ? [X328 : term] : ((sub @ X328 @ id) != X328) | ($true = sP44)) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ((sP43 != $true) & ! [X328 : term] : ((sub @ X328 @ id) = X328) & ($true != sP44)))) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & ((($true = sP38) | (induction != $true)) & ((induction = $true) | ($true != sP38))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & ((! [X40 : term] : ? [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) = (X41 @ sh @ one)) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X40 : term] : ! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one)))) & (hoasapinj2_gthm = $true) & (((hoasinduction_lem0 = $true) | ? [X429 : subst > term > subst > $o] : ! [X430 : term > $o] : ? [X431 : term] : ((X429 @ id @ X431 @ id) != (X430 @ X431))) & (! [X429 : subst > term > subst > $o] : ? [X430 : term > $o] : ! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431)) | (hoasinduction_lem0 != $true))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X273 : d_subst] : (d_id = X273) & (((hoasinduction_lem3 = $true) | ($true != sP35)) & (($true = sP35) | (hoasinduction_lem3 != $true))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((($true = sP31) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | ($true != sP31))) & (((? [X194 : subst > term > subst > $o] : ! [X195 : term > $o] : ? [X196 : term] : ((X194 @ id @ X196 @ id) != (X195 @ X196)) | ? [X204 : term] : ((sub @ X204 @ id) != X204) | ($true = sP27) | ($true = sP29) | ($true = sP28)) | (hoasinduction_lthm_3 != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X194 : subst > term > subst > $o] : ? [X195 : term > $o] : ! [X196 : term] : ((X194 @ id @ X196 @ id) = (X195 @ X196)) & ! [X204 : term] : ((sub @ X204 @ id) = X204) & ($true != sP27) & ($true != sP29) & ($true != sP28)))) & (((induction2lem = $true) | ($true != sP19)) & (($true = sP19) | (induction2lem != $true))) & ((! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) | (laminj != $true)) & ((laminj = $true) | ? [X46 : term,X47 : term] : (((lam @ X47) = (lam @ X46)) & (X46 != X47)))) & ((! [X184 : term] : ((sub @ X184 @ id) = X184) | (termmset != $true)) & ((termmset = $true) | ? [X184 : term] : ((sub @ X184 @ id) != X184))) & ((((sP16 = $true) | ? [X381 : term] : ! [X382 : subst > term > term] : ? [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) != (X382 @ X383 @ X384)) | ? [X385 : term] : ((sub @ X385 @ id) != X385)) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | ((sP16 != $true) & ! [X381 : term] : ? [X382 : subst > term > term] : ! [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) = (X382 @ X383 @ X384)) & ! [X385 : term] : ((sub @ X385 @ id) = X385)))) & (hoaslaminj_gthm = $true) & (((hoasapinj1 = $true) | ? [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) = (ap @ (sub @ X136 @ id) @ X134)) & (X133 != X136))) & (! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136)) | (hoasapinj1 != $true))) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & (((substmonoid = $true) | (? [X534 : subst] : ((comp @ X534 @ id) != X534) | ? [X533 : subst] : ((comp @ id @ X533) != X533))) & ((! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533)) | (substmonoid != $true))) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & ((($true = sP14) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | ($true != sP14))) & (((hoasapinj2_lthm = $true) | (sP12 != $true)) & ((sP12 = $true) | (hoasapinj2_lthm != $true))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & (((pushprop_lem0 = $true) | ? [X348 : term,X349 : term > $o,X350 : subst] : ! [X351 : term > $o] : ? [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) != (X351 @ X352))) & (! [X348 : term,X349 : term > $o,X350 : subst] : ? [X351 : term > $o] : ! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352)) | (pushprop_lem0 != $true))) & (((axidl = $true) | ? [X423 : subst] : ((comp @ id @ X423) != X423)) & (! [X423 : subst] : ((comp @ id @ X423) = X423) | (axidl != $true))) & (((($true = sP10) | ? [X111 : term] : ((sub @ X111 @ id) != X111)) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (($true != sP10) & ! [X111 : term] : ((sub @ X111 @ id) = X111)))) & (axassoc = $true) & (((hoasinduction_lem2 = $true) | ($true != sP6)) & (($true = sP6) | (hoasinduction_lem2 != $true))) & (((axshiftcons = $true) | ? [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) != X415)) & (! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415) | (axshiftcons != $true))) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & ((($true = sP3) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ($true != sP3))) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    inference(nnf_transformation,[status(thm)],[f124])).
% 6.77/2.22  thf(f124,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (($true = sP108) | ($true = sP107) | ? [X10 : subst > term > subst > $o] : ! [X11 : term > $o] : ? [X12 : term] : ((X11 @ X12) != (X10 @ id @ X12 @ id)) | ($true = sP106) | ? [X20 : term] : ((sub @ X20 @ id) != X20))) & ((hoasinduction_lem3_lthm = $true) <=> (? [X159 : term] : ((sub @ X159 @ id) != X159) | ($true = sP98) | ($true = sP99))) & ((pushprop_lem1_lthm = $true) <=> (? [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) != X495) | ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501))) | ? [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) != X496))) & (! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ? [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) != (X55 @ X56))) <=> (pushprop_lem1v2 = $true)) & (hoasapnotvar = $true) & (($true = sP93) <=> (hoasinduction_lem2v2 = $true)) & ((d2subst @ d_id) = id) & (($true = sP90) <=> (hoasinduction = $true)) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((hoasinduction_no_psi_cond = $true) <=> ! [X466 : subst > term > subst > $o,X467 : term] : (($true = (sP85 @ X466)) | ($true = (sP84 @ X466)) | ($true = (X466 @ id @ X467 @ id)))) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & ((shinj = $true) <=> ! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267))) & (ulamvarind = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) != (d2subst @ X45)) | (X44 = X45)) & ((apinj2 = $true) <=> ! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345)))) & (($true = sP83) <=> (hoasinduction_lem3aa = $true)) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (($true = sP81) | ($true = sP80) | ? [X249 : term] : ((sub @ X249 @ id) != X249))) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) <=> (hoasapinj2 = $true)) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) != (d2term @ X460)) | (X459 = X460)) & (pushprop_lem2v2_lthm = $true) & (! [X48 : term] : ? [X49 : subst > term > term] : ! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (termmset_gthm = $true) & ((? [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) != X475) | ? [X479 : subst] : ((comp @ X479 @ id) != X479) | ? [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) != X478) | ($true = sP76) | ($true = sP77)) <=> (induction2lem_lthm = $true)) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1 = $true) <=> ! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) <=> (axvarcons = $true)) & (pushprop_lem3v2 = $true) & ((pushprop_lem1v2_lthm = $true) <=> (? [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) != X416) | ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (? [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) != (X419 @ X422)) | ($true != (X420 @ X418)) | ($true = (X419 @ one))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & ((($true = sP71) | ($true = sP70) | ($true = sP69) | ($true = sP68)) <=> (hoasinduction_lthm = $true)) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & (! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (? [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) != (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ? [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) != (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))) <=> (hoaslaminj = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((hoasinduction_lem3aaa = $true) <=> ($true = sP56)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X445 : term] : ? [X446 : subst > term > term] : ! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448)))) & ! [X132 : d_term] : (d_one = X132) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))) | ? [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) != (sub @ (X368 @ X373 @ X371) @ X372))) <=> (hoaslamnotap = $true)) & (hoaslamnotvar = $true) & ((? [X0 : term] : ((sub @ X0 @ id) != X0) | ! [X1 : term] : ((sub @ X1 @ id) = X1)) <=> (termmset_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> (sP54 = $true)) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & ((axidr = $true) <=> ! [X269 : subst] : ((comp @ X269 @ id) = X269)) & ((hoasinduction_lem3a = $true) <=> ($true = sP52)) & ((axscons = $true) <=> ! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268)) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasinduction_lem3b = $true) <=> ! [X130 : term] : ? [X131 : subst > term > term] : ((X131 @ sh @ one) = (sub @ X130 @ (push @ one @ sh)))) & ((hoasinduction_lem3v2a = $true) <=> ($true = sP50)) & (($true = sP48) <=> (substmonoid_lthm = $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & ((induction2 = $true) <=> ($true = sP47)) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & (! [X535 : subst,X536 : term > $o,X537 : term] : ? [X538 : term > $o] : ! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))) <=> (pushprop_lem0_lthm = $true)) & (! [X461 : term] : ((sub @ X461 @ id) = X461) <=> (axvarid = $true)) & (! [X270 : subst > term > subst > $o] : ? [X271 : term > $o] : ! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272)) <=> (hoasinduction_lem0_lthm = $true)) & (((sP43 = $true) | ? [X328 : term] : ((sub @ X328 @ id) != X328) | ($true = sP44)) <=> (induction2_lthm = $true)) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & (($true = sP38) <=> (induction = $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & (! [X40 : term] : ? [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) = (X41 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X429 : subst > term > subst > $o] : ? [X430 : term > $o] : ! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X273 : d_subst] : (d_id = X273) & ((hoasinduction_lem3 = $true) <=> ($true = sP35)) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (($true = sP31) <=> (hoaslaminj_lthm = $true)) & ((? [X194 : subst > term > subst > $o] : ! [X195 : term > $o] : ? [X196 : term] : ((X194 @ id @ X196 @ id) != (X195 @ X196)) | ? [X204 : term] : ((sub @ X204 @ id) != X204) | ($true = sP27) | ($true = sP29) | ($true = sP28)) <=> (hoasinduction_lthm_3 = $true)) & ((induction2lem = $true) <=> ($true = sP19)) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (! [X184 : term] : ((sub @ X184 @ id) = X184) <=> (termmset = $true)) & (((sP16 = $true) | ? [X381 : term] : ! [X382 : subst > term > term] : ? [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) != (X382 @ X383 @ X384)) | ? [X385 : term] : ((sub @ X385 @ id) != X385)) <=> (hoasinduction_lem3v2a_lthm = $true)) & (hoaslaminj_gthm = $true) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & ((substmonoid = $true) <=> (! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533))) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & (($true = sP14) <=> (hoasapinj1_lthm = $true)) & ((hoasapinj2_lthm = $true) <=> (sP12 = $true)) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X348 : term,X349 : term > $o,X350 : subst] : ? [X351 : term > $o] : ! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352))) & ((axidl = $true) <=> ! [X423 : subst] : ((comp @ id @ X423) = X423)) & ((($true = sP10) | ? [X111 : term] : ((sub @ X111 @ id) != X111)) <=> (hoasinduction_lem3v2_lthm = $true)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) <=> ($true = sP6)) & ((axshiftcons = $true) <=> ! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415)) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & (($true = sP3) <=> (hoasinduction_lem3v2 = $true)) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    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])).
% 6.77/2.22  thf(f15,plain,(
% 6.77/2.22    ! [X76 : subst > term > subst > $o] : (($true = (sP0 @ X76)) <=> ? [X82 : subst > term > term] : (($true != (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) & ! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85)) & ! [X83 : term] : (($true != (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f16,plain,(
% 6.77/2.22    ! [X76 : subst > term > subst > $o] : (($true = (sP1 @ X76)) <=> ? [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true != (X76 @ X79 @ X78 @ (comp @ X81 @ X80))) & ($true = (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f17,plain,(
% 6.77/2.22    ! [X76 : subst > term > subst > $o] : (($true = (sP2 @ X76)) <=> ? [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (($true = (X76 @ X91 @ X90 @ (comp @ X89 @ X88))) & ($true != (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f18,plain,(
% 6.77/2.22    ($true = sP3) <=> ! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (? [X92 : term] : (((X75 @ (sub @ X77 @ (push @ X92 @ id))) != $true) & ($true = (X75 @ X92))) | ($true = (X75 @ (lam @ X77))) | ($true = (sP0 @ X76)) | ? [X87 : term] : ((X75 @ X87) != (X76 @ id @ X87 @ id)) | ($true = (sP2 @ X76)) | ($true = (sP1 @ X76)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f19,plain,(
% 6.77/2.22    ! [X432 : subst > term > subst > $o] : (($true = (sP4 @ X432)) <=> ? [X443 : term,X444 : term] : (($true = (X432 @ id @ X443 @ id)) & ($true != (X432 @ id @ (ap @ (sub @ X444 @ id) @ X443) @ id)) & ($true = (X432 @ id @ X444 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f20,plain,(
% 6.77/2.22    ! [X432 : subst > term > subst > $o] : (($true = (sP5 @ X432)) <=> ? [X439 : subst,X440 : subst,X441 : subst,X442 : term] : (($true = (X432 @ (comp @ X440 @ X441) @ (sub @ X442 @ X441) @ X439)) & ($true != (X432 @ X440 @ X442 @ (comp @ X441 @ X439)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f21,plain,(
% 6.77/2.22    ($true = sP6) <=> ! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (($true != (X432 @ id @ X434 @ id)) | ? [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true != (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) & ($true = (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ($true = (sP4 @ X432)) | ((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ($true = (sP5 @ X432)) | ($true != (X432 @ id @ X433 @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f22,plain,(
% 6.77/2.22    ! [X114 : subst > term > subst > $o] : (($true = (sP7 @ X114)) <=> ? [X121 : subst > term > term] : (! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124)) & ! [X122 : term] : (($true != (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id))) & ($true != (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f23,plain,(
% 6.77/2.22    ! [X114 : subst > term > subst > $o] : (($true = (sP8 @ X114)) <=> ? [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (($true != (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118)) & ($true = (X114 @ X119 @ X116 @ (comp @ X117 @ X118)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f24,plain,(
% 6.77/2.22    ! [X114 : subst > term > subst > $o] : (($true = (sP9 @ X114)) <=> ? [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (($true = (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126)) & ($true != (X114 @ X128 @ X127 @ (comp @ X129 @ X126)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f25,plain,(
% 6.77/2.22    ($true = sP10) <=> ! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (($true = (X112 @ (lam @ X113))) | ? [X120 : term] : (($true != (X112 @ (sub @ X113 @ (push @ X120 @ id)))) & ($true = (X112 @ X120))) | ($true = (sP9 @ X114)) | ($true = (sP8 @ X114)) | ? [X115 : term] : ((X114 @ id @ X115 @ id) != (X112 @ X115)) | ($true = (sP7 @ X114)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f26,plain,(
% 6.77/2.22    (sP11 = $true) <=> ! [X507 : term,X508 : term,X509 : term,X510 : term] : ((X508 = X509) | ((ap @ (sub @ X507 @ id) @ X508) != (ap @ (sub @ X510 @ id) @ X509)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f27,plain,(
% 6.77/2.22    (sP12 = $true) <=> ((sP11 = $true) | ? [X503 : term,X504 : term,X505 : term,X506 : term] : (((ap @ X505 @ X503) = (ap @ X506 @ X504)) & (X503 != X504)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f28,plain,(
% 6.77/2.22    ($true = sP13) <=> ! [X190 : term,X191 : term,X192 : term,X193 : term] : (((ap @ (sub @ X192 @ id) @ X191) != (ap @ (sub @ X190 @ id) @ X193)) | (X190 = X192))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f29,plain,(
% 6.77/2.22    ($true = sP14) <=> (? [X185 : term] : ((sub @ X185 @ id) != X185) | ($true = sP13) | ? [X186 : term,X187 : term,X188 : term,X189 : term] : (((ap @ X187 @ X186) = (ap @ X189 @ X188)) & (X187 != X189)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f30,plain,(
% 6.77/2.22    ! [X386 : subst > term > subst > $o] : (($true = (sP15 @ X386)) <=> ? [X389 : subst > term > term] : (! [X393 : term] : (($true = (X386 @ id @ (X389 @ id @ X393) @ id)) | ($true != (X386 @ id @ X393 @ id))) & ($true != (X386 @ id @ (lam @ (X389 @ sh @ one)) @ id)) & ! [X390 : subst,X391 : subst,X392 : term] : ((X389 @ (comp @ X391 @ X390) @ (sub @ X392 @ X390)) = (sub @ (X389 @ X391 @ X392) @ X390))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f31,plain,(
% 6.77/2.22    (sP16 = $true) <=> ! [X386 : subst > term > subst > $o,X387 : term > $o,X388 : term] : (($true = (sP15 @ X386)) | ? [X394 : term] : (((X387 @ X394) = $true) & ((X387 @ (sub @ X388 @ (push @ X394 @ id))) != $true)) | ? [X395 : term] : ((X387 @ X395) != (X386 @ id @ X395 @ id)) | ($true = (X387 @ (lam @ X388))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f32,plain,(
% 6.77/2.22    ! [X525 : term > $o] : (($true = (sP17 @ X525)) <=> ? [X528 : term] : (($true != (X525 @ (lam @ X528))) & ! [X529 : term] : (($true = (X525 @ (sub @ X528 @ (push @ X529 @ id)))) | ($true != (X525 @ X529)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f33,plain,(
% 6.77/2.22    ! [X525 : term > $o] : (($true = (sP18 @ X525)) <=> ? [X530 : term,X531 : term] : (($true = (X525 @ X531)) & ($true != (X525 @ (ap @ X531 @ X530))) & ($true = (X525 @ X530))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f34,plain,(
% 6.77/2.22    ($true = sP19) <=> ! [X525 : term > $o,X526 : subst,X527 : term] : (($true = (sP17 @ X525)) | ($true = (X525 @ (sub @ X527 @ X526))) | ($true = (sP18 @ X525)) | ? [X532 : term] : (($true != (X525 @ (sub @ X532 @ X526))) & ($true = (var @ X532))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f35,plain,(
% 6.77/2.22    ! [X197 : term > $o] : (($true = (sP20 @ X197)) <=> ! [X200 : term,X201 : term] : (($true = (X197 @ (ap @ X201 @ X200))) | ($true != (X197 @ X200)) | ($true != (X197 @ X201))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f36,plain,(
% 6.77/2.22    ! [X197 : term > $o] : (($true = (sP21 @ X197)) <=> ! [X202 : term] : (($true = (X197 @ (lam @ X202))) | ? [X203 : term] : (($true != (X197 @ (sub @ X202 @ (push @ X203 @ id)))) & ((X197 @ X203) = $true))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f37,plain,(
% 6.77/2.22    ! [X207 : subst > term > subst > $o] : (($true = (sP22 @ X207)) <=> ! [X208 : subst > term > term] : (($true = (X207 @ id @ (lam @ (X208 @ sh @ one)) @ id)) | ? [X209 : subst,X210 : subst,X211 : term] : ((X208 @ (comp @ X209 @ X210) @ (sub @ X211 @ X210)) != (sub @ (X208 @ X209 @ X211) @ X210)) | ? [X212 : term] : (($true = (X207 @ id @ X212 @ id)) & ((X207 @ id @ (X208 @ id @ X212) @ id) != $true))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f38,plain,(
% 6.77/2.22    ! [X216 : subst > term > subst > $o] : (($true = (sP23 @ X216)) <=> ? [X221 : subst > term > term] : (($true != (X216 @ id @ (lam @ (X221 @ sh @ one)) @ id)) & ! [X222 : subst,X223 : term,X224 : subst] : ((X221 @ (comp @ X222 @ X224) @ (sub @ X223 @ X224)) = (sub @ (X221 @ X222 @ X223) @ X224)) & ! [X225 : term] : (($true = (X216 @ id @ (X221 @ id @ X225) @ id)) | ($true != (X216 @ id @ X225 @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f39,plain,(
% 6.77/2.22    ! [X216 : subst > term > subst > $o] : (($true = (sP24 @ X216)) <=> ? [X231 : term,X232 : term] : (($true = (X216 @ id @ X231 @ id)) & ((X216 @ id @ X232 @ id) = $true) & ($true != (X216 @ id @ (ap @ (sub @ X231 @ id) @ X232) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f40,plain,(
% 6.77/2.22    ! [X216 : subst > term > subst > $o] : (((sP25 @ X216) = $true) <=> ? [X217 : term,X218 : subst,X219 : subst,X220 : subst] : (($true != (X216 @ (comp @ X219 @ X218) @ (sub @ X217 @ X218) @ X220)) & ($true = (X216 @ X219 @ X217 @ (comp @ X218 @ X220)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f41,plain,(
% 6.77/2.22    ! [X216 : subst > term > subst > $o] : (($true = (sP26 @ X216)) <=> ? [X230 : term] : (($true != (X216 @ id @ X230 @ id)) & ($true = (var @ (sub @ X230 @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f42,plain,(
% 6.77/2.22    ($true = sP27) <=> ! [X215 : term,X216 : subst > term > subst > $o] : (($true = (X216 @ id @ X215 @ id)) | ($true = (sP24 @ X216)) | ? [X226 : subst,X227 : term,X228 : subst,X229 : subst] : (($true != (X216 @ X229 @ X227 @ (comp @ X226 @ X228))) & ($true = (X216 @ (comp @ X229 @ X226) @ (sub @ X227 @ X226) @ X228))) | ($true = (sP23 @ X216)) | ($true = (sP26 @ X216)) | ((sP25 @ X216) = $true))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f43,plain,(
% 6.77/2.22    ($true = sP28) <=> ? [X197 : term > $o,X198 : term] : (! [X199 : term] : (($true = (X197 @ X199)) | ($true != (var @ X199))) & ($true != (X197 @ X198)) & ($true = (sP21 @ X197)) & ($true = (sP20 @ X197)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f44,plain,(
% 6.77/2.22    ($true = sP29) <=> ? [X205 : term > $o,X206 : term,X207 : subst > term > subst > $o] : (! [X213 : term] : (((X205 @ (sub @ X206 @ (push @ X213 @ id))) = $true) | ($true != (X205 @ X213))) & ! [X214 : term] : ((X205 @ X214) = (X207 @ id @ X214 @ id)) & ($true = (sP22 @ X207)) & ($true != (X205 @ (lam @ X206))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f45,plain,(
% 6.77/2.22    ($true = sP30) <=> ! [X404 : term,X405 : subst > term > term,X406 : subst,X407 : subst > term > term] : (((X407 @ X406 @ X404) = (X405 @ X406 @ X404)) | ((lam @ (X405 @ sh @ one)) != (lam @ (X407 @ sh @ one))) | ? [X408 : subst,X409 : term,X410 : subst] : ((X405 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408)) != (sub @ (X405 @ X410 @ X409) @ X408)) | ? [X411 : term,X412 : subst,X413 : subst] : ((sub @ (X407 @ X412 @ X411) @ X413) != (X407 @ (comp @ X412 @ X413) @ (sub @ X411 @ X413))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f46,plain,(
% 6.77/2.22    ($true = sP31) <=> (? [X400 : term,X401 : subst] : ((comp @ sh @ (push @ X400 @ X401)) != X401) | ($true = sP30) | ? [X402 : term,X403 : term] : (((lam @ X403) = (lam @ X402)) & (X402 != X403)) | ? [X398 : term,X399 : subst] : ((sub @ one @ (push @ X398 @ X399)) != X398))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f47,plain,(
% 6.77/2.22    ! [X233 : subst > term > subst > $o] : (($true = (sP32 @ X233)) <=> ? [X239 : subst > term > term] : (! [X241 : subst,X242 : subst,X243 : term] : ((X239 @ (comp @ X242 @ X241) @ (sub @ X243 @ X241)) = (sub @ (X239 @ X242 @ X243) @ X241)) & ! [X240 : term] : (($true = (X233 @ id @ (X239 @ id @ X240) @ id)) | ($true != (X233 @ id @ X240 @ id))) & ($true != (X233 @ id @ (lam @ (X239 @ sh @ one)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f48,plain,(
% 6.77/2.22    ! [X233 : subst > term > subst > $o] : (($true = (sP33 @ X233)) <=> ? [X235 : subst,X236 : subst,X237 : subst,X238 : term] : (($true = (X233 @ X236 @ X238 @ (comp @ X235 @ X237))) & ($true != (X233 @ (comp @ X236 @ X235) @ (sub @ X238 @ X235) @ X237))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f49,plain,(
% 6.77/2.22    ! [X233 : subst > term > subst > $o,X234 : term] : (($true = (sP34 @ X234 @ X233)) <=> ? [X244 : term] : (($true = (X233 @ id @ X244 @ id)) & ($true != (X233 @ id @ (sub @ X234 @ (push @ X244 @ id)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f50,plain,(
% 6.77/2.22    ($true = sP35) <=> ! [X233 : subst > term > subst > $o,X234 : term] : (($true = (sP32 @ X233)) | ? [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (($true = (X233 @ (comp @ X248 @ X247) @ (sub @ X245 @ X247) @ X246)) & ($true != (X233 @ X248 @ X245 @ (comp @ X247 @ X246)))) | ($true = (sP34 @ X234 @ X233)) | ($true = (sP33 @ X233)) | ($true = (X233 @ id @ (lam @ X234) @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f51,plain,(
% 6.77/2.22    ! [X57 : term > $o] : (($true = (sP36 @ X57)) <=> ? [X61 : term,X62 : term] : (($true = (X57 @ X62)) & ($true != (X57 @ (ap @ X62 @ X61))) & ($true = (X57 @ X61))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f52,plain,(
% 6.77/2.22    ! [X57 : term > $o] : (($true = (sP37 @ X57)) <=> ? [X59 : term] : (($true = (var @ X59)) & ($true != (X57 @ X59))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f53,plain,(
% 6.77/2.22    ($true = sP38) <=> ! [X57 : term > $o,X58 : term] : (? [X60 : term] : (($true = (X57 @ X60)) & ($true != (X57 @ (lam @ X60)))) | ($true = (sP36 @ X57)) | ($true = (sP37 @ X57)) | ($true = (X57 @ X58)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f54,plain,(
% 6.77/2.22    ! [X331 : term > $o] : (((sP39 @ X331) = $true) <=> ! [X332 : term,X333 : term] : (($true = (X331 @ (ap @ X332 @ X333))) | ($true != (X331 @ X332)) | ($true != (X331 @ X333))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f55,plain,(
% 6.77/2.22    ! [X331 : term > $o] : (($true = (sP40 @ X331)) <=> ! [X335 : term] : (? [X336 : term] : (($true = (X331 @ X336)) & ($true != (X331 @ (sub @ X335 @ (push @ X336 @ id))))) | ($true = (X331 @ (lam @ X335)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f56,plain,(
% 6.77/2.22    ! [X337 : term > $o] : (($true = (sP41 @ X337)) <=> ? [X342 : term] : (($true != (X337 @ (lam @ X342))) & ! [X343 : term] : (($true = (X337 @ (sub @ X342 @ (push @ X343 @ id)))) | ($true != (X337 @ X343)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f57,plain,(
% 6.77/2.22    ! [X337 : term > $o] : (($true = (sP42 @ X337)) <=> ? [X339 : term,X340 : term] : (($true = (X337 @ X340)) & ($true != (X337 @ (ap @ X339 @ X340))) & ($true = (X337 @ X339))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f58,plain,(
% 6.77/2.22    (sP43 = $true) <=> ! [X337 : term > $o,X338 : term] : (($true = (sP41 @ X337)) | ($true = (sP42 @ X337)) | ($true = (X337 @ X338)) | ? [X341 : term] : (($true != (X337 @ X341)) & ($true = (var @ X341))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f59,plain,(
% 6.77/2.22    ($true = sP44) <=> ? [X329 : term,X330 : subst,X331 : term > $o] : (((sP39 @ X331) = $true) & ! [X334 : term] : (($true != (var @ X334)) | ($true = (X331 @ (sub @ X334 @ X330)))) & ((X331 @ (sub @ X329 @ X330)) != $true) & ($true = (sP40 @ X331)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f60,plain,(
% 6.77/2.22    ! [X374 : term > $o] : (($true = (sP45 @ X374)) <=> ? [X376 : term] : (! [X377 : term] : (($true != (X374 @ X377)) | ($true = (X374 @ (sub @ X376 @ (push @ X377 @ id))))) & ($true != (X374 @ (lam @ X376)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f61,plain,(
% 6.77/2.22    ! [X374 : term > $o] : (($true = (sP46 @ X374)) <=> ? [X379 : term,X380 : term] : (($true != (X374 @ (ap @ X380 @ X379))) & ($true = (X374 @ X379)) & ($true = (X374 @ X380))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f62,plain,(
% 6.77/2.22    ($true = sP47) <=> ! [X374 : term > $o,X375 : term] : (($true = (sP46 @ X374)) | ((X374 @ X375) = $true) | ($true = (sP45 @ X374)) | ? [X378 : term] : (($true = (var @ X378)) & ($true != (X374 @ X378))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f63,plain,(
% 6.77/2.22    ($true = sP48) <=> (? [X72 : subst] : ((comp @ X72 @ id) != X72) | (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74)) | ? [X71 : subst] : ((comp @ id @ X71) != X71))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f64,plain,(
% 6.77/2.22    ! [X450 : subst > term > subst > $o] : (($true = (sP49 @ X450)) <=> ? [X453 : subst > term > term] : (! [X454 : term] : (($true = (X450 @ id @ (X453 @ id @ X454) @ id)) | ($true != (X450 @ id @ X454 @ id))) & ($true != (X450 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X455 : subst,X456 : term,X457 : subst] : ((sub @ (X453 @ X455 @ X456) @ X457) = (X453 @ (comp @ X455 @ X457) @ (sub @ X456 @ X457)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f65,plain,(
% 6.77/2.22    ($true = sP50) <=> ! [X449 : term,X450 : subst > term > subst > $o,X451 : term > $o] : (($true = (X451 @ (lam @ X449))) | ($true = (sP49 @ X450)) | ? [X452 : term] : ((X450 @ id @ X452 @ id) != (X451 @ X452)) | ? [X458 : term] : (($true != (X451 @ (sub @ X449 @ (push @ X458 @ id)))) & ($true = (X451 @ X458))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f66,plain,(
% 6.77/2.22    ! [X64 : subst > term > subst > $o] : (($true = (sP51 @ X64)) <=> ? [X66 : subst > term > term] : (! [X67 : term] : (($true != (X64 @ id @ X67 @ id)) | ($true = (X64 @ id @ (X66 @ id @ X67) @ id))) & ($true != (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) & ! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f67,plain,(
% 6.77/2.22    ($true = sP52) <=> ! [X63 : term,X64 : subst > term > subst > $o] : (? [X65 : term] : (($true = (X64 @ id @ X65 @ id)) & ($true != (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ($true = (sP51 @ X64)) | ($true = (X64 @ id @ (lam @ X63) @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f68,plain,(
% 6.77/2.22    ! [X3 : subst > term > subst > $o] : (($true = (sP53 @ X3)) <=> ? [X4 : subst > term > term] : (! [X5 : term] : (($true != (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) & ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) != $true) & ! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f69,plain,(
% 6.77/2.22    (sP54 = $true) <=> ! [X2 : term,X3 : subst > term > subst > $o] : (($true = (sP53 @ X3)) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ? [X9 : term] : (($true = (X3 @ id @ X9 @ id)) & ($true != (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f70,plain,(
% 6.77/2.22    ! [X512 : subst > term > subst > $o] : (($true = (sP55 @ X512)) <=> ? [X513 : term,X514 : subst > term > term] : (! [X515 : term] : (($true != (X512 @ id @ X515 @ id)) | ($true = (X512 @ id @ (X514 @ id @ X515) @ id))) & ! [X516 : subst,X517 : term,X518 : subst] : ((X514 @ (comp @ X516 @ X518) @ (sub @ X517 @ X518)) = (sub @ X513 @ (push @ (sub @ X517 @ X518) @ (comp @ X516 @ X518)))) & ($true != (X512 @ id @ (lam @ (X514 @ sh @ one)) @ id)) & ! [X519 : term,X520 : subst,X521 : subst] : ((sub @ (sub @ X513 @ (push @ X519 @ X521)) @ X520) = (sub @ (X514 @ X521 @ X519) @ X520))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f71,plain,(
% 6.77/2.22    ($true = sP56) <=> ! [X511 : term,X512 : subst > term > subst > $o] : (? [X522 : term] : (((X512 @ id @ (sub @ X511 @ (push @ X522 @ id)) @ id) != $true) & ($true = (X512 @ id @ X522 @ id))) | ($true = (sP55 @ X512)) | ($true = (X512 @ id @ (lam @ (sub @ X511 @ (push @ one @ sh))) @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f72,plain,(
% 6.77/2.22    ! [X310 : subst > term > subst > $o] : (((sP57 @ X310) = $true) <=> ? [X318 : subst > term > term] : (($true != (X310 @ id @ (lam @ (X318 @ sh @ one)) @ id)) & ! [X319 : term,X320 : subst,X321 : subst] : ((X318 @ (comp @ X321 @ X320) @ (sub @ X319 @ X320)) = (sub @ (X318 @ X321 @ X319) @ X320)) & ! [X322 : term] : (($true = (X310 @ id @ (X318 @ id @ X322) @ id)) | ($true != (X310 @ id @ X322 @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f73,plain,(
% 6.77/2.22    ! [X310 : subst > term > subst > $o] : (($true = (sP58 @ X310)) <=> ? [X312 : term,X313 : term] : (($true != (X310 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) & ($true = (X310 @ id @ X313 @ id)) & ($true = (X310 @ id @ X312 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f74,plain,(
% 6.77/2.22    ! [X310 : subst > term > subst > $o] : (($true = (sP59 @ X310)) <=> ? [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (($true = (X310 @ (comp @ X316 @ X315) @ (sub @ X314 @ X315) @ X317)) & ($true != (X310 @ X316 @ X314 @ (comp @ X315 @ X317)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f75,plain,(
% 6.77/2.22    ! [X310 : subst > term > subst > $o] : (($true = (sP60 @ X310)) <=> ? [X323 : term] : (($true = (var @ (sub @ X323 @ id))) & ($true != (X310 @ id @ X323 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f76,plain,(
% 6.77/2.22    ! [X294 : subst > term > subst > $o] : (($true = (sP61 @ X294)) <=> ! [X301 : subst > term > term] : (? [X303 : term,X304 : subst,X305 : subst] : ((sub @ (X301 @ X305 @ X303) @ X304) != (X301 @ (comp @ X305 @ X304) @ (sub @ X303 @ X304))) | ? [X302 : term] : (($true != (X294 @ id @ (X301 @ id @ X302) @ id)) & ($true = (X294 @ id @ X302 @ id))) | ($true = (X294 @ id @ (lam @ (X301 @ sh @ one)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f77,plain,(
% 6.77/2.22    ! [X294 : subst > term > subst > $o] : (($true = (sP62 @ X294)) <=> ! [X297 : subst,X298 : term,X299 : subst,X300 : subst] : (($true = (X294 @ X300 @ X298 @ (comp @ X297 @ X299))) | ((X294 @ (comp @ X300 @ X297) @ (sub @ X298 @ X297) @ X299) != $true)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f78,plain,(
% 6.77/2.22    ! [X295 : term,X294 : subst > term > subst > $o] : (($true = (sP63 @ X294 @ X295)) <=> ! [X296 : term] : (((X294 @ id @ (sub @ X295 @ (push @ X296 @ id)) @ id) = $true) | ($true != (X294 @ id @ X296 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f79,plain,(
% 6.77/2.22    ! [X274 : term > $o] : (($true = (sP64 @ X274)) <=> ! [X279 : term,X280 : term] : (($true != (X274 @ X279)) | ($true != (X274 @ X280)) | ($true = (X274 @ (ap @ X280 @ X279)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f80,plain,(
% 6.77/2.22    ! [X274 : term > $o] : (($true = (sP65 @ X274)) <=> ! [X276 : term] : (? [X277 : term] : (((X274 @ X277) = $true) & ($true != (X274 @ (sub @ X276 @ (push @ X277 @ id))))) | ($true = (X274 @ (lam @ X276)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f81,plain,(
% 6.77/2.22    ! [X283 : subst > term > subst > $o] : (($true = (sP66 @ X283)) <=> ! [X284 : term,X285 : term] : (((X283 @ id @ X284 @ id) != $true) | ($true = (X283 @ id @ (ap @ (sub @ X285 @ id) @ X284) @ id)) | ($true != (X283 @ id @ X285 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f82,plain,(
% 6.77/2.22    ! [X283 : subst > term > subst > $o] : (($true = (sP67 @ X283)) <=> ! [X286 : subst,X287 : subst,X288 : term,X289 : subst] : (($true = (X283 @ (comp @ X286 @ X287) @ (sub @ X288 @ X287) @ X289)) | ($true != (X283 @ X286 @ X288 @ (comp @ X287 @ X289)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f83,plain,(
% 6.77/2.22    ($true = sP68) <=> ! [X310 : subst > term > subst > $o,X311 : term] : (? [X324 : subst,X325 : term,X326 : subst,X327 : subst] : (($true = (X310 @ X326 @ X325 @ (comp @ X324 @ X327))) & ($true != (X310 @ (comp @ X326 @ X324) @ (sub @ X325 @ X324) @ X327))) | ((sP57 @ X310) = $true) | ($true = (X310 @ id @ X311 @ id)) | ($true = (sP58 @ X310)) | ($true = (sP60 @ X310)) | ($true = (sP59 @ X310)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f84,plain,(
% 6.77/2.22    ($true = sP69) <=> ? [X294 : subst > term > subst > $o,X295 : term] : (! [X306 : term,X307 : subst,X308 : subst,X309 : subst] : (($true = (X294 @ (comp @ X308 @ X309) @ (sub @ X306 @ X309) @ X307)) | ($true != (X294 @ X308 @ X306 @ (comp @ X309 @ X307)))) & ($true = (sP63 @ X294 @ X295)) & ($true != (X294 @ id @ (lam @ X295) @ id)) & ($true = (sP62 @ X294)) & ($true = (sP61 @ X294)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f85,plain,(
% 6.77/2.22    ($true = sP70) <=> ? [X274 : term > $o,X275 : term] : (($true != (X274 @ X275)) & ! [X278 : term] : (($true = (X274 @ X278)) | ($true != (var @ X278))) & ($true = (sP64 @ X274)) & ($true = (sP65 @ X274)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f86,plain,(
% 6.77/2.22    ($true = sP71) <=> ? [X281 : term,X282 : term,X283 : subst > term > subst > $o] : (($true = (sP66 @ X283)) & ! [X290 : term,X291 : subst,X292 : subst,X293 : subst] : (($true != (X283 @ (comp @ X291 @ X292) @ (sub @ X290 @ X292) @ X293)) | ($true = (X283 @ X291 @ X290 @ (comp @ X292 @ X293)))) & ($true = (X283 @ id @ X282 @ id)) & ($true != (X283 @ id @ (ap @ X282 @ X281) @ id)) & ($true = (sP67 @ X283)) & ($true = (X283 @ id @ X281 @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f87,plain,(
% 6.77/2.22    ! [X481 : term > $o] : (($true = (sP72 @ X481)) <=> ! [X483 : term,X484 : term] : (($true != (X481 @ X484)) | ($true != (X481 @ X483)) | ($true = (X481 @ (ap @ X484 @ X483)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f88,plain,(
% 6.77/2.22    ! [X481 : term > $o] : (($true = (sP73 @ X481)) <=> ! [X482 : term] : (($true = (X481 @ (lam @ X482))) | ($true != (X481 @ X482))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f89,plain,(
% 6.77/2.22    ! [X487 : term > $o] : (($true = (sP74 @ X487)) <=> ? [X492 : term] : (! [X493 : term] : (($true != (X487 @ X493)) | ($true = (X487 @ (sub @ X492 @ (push @ X493 @ id))))) & ($true != (X487 @ (lam @ X492)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f90,plain,(
% 6.77/2.22    ! [X487 : term > $o] : (($true = (sP75 @ X487)) <=> ? [X489 : term,X490 : term] : (($true = (X487 @ X489)) & ($true = (X487 @ X490)) & ($true != (X487 @ (ap @ X490 @ X489)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f91,plain,(
% 6.77/2.22    ($true = sP76) <=> ! [X486 : term,X487 : term > $o,X488 : subst] : (($true = (X487 @ (sub @ X486 @ X488))) | ($true = (sP75 @ X487)) | ? [X491 : term] : (($true = (var @ X491)) & ($true != (X487 @ (sub @ X491 @ X488)))) | ($true = (sP74 @ X487)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f92,plain,(
% 6.77/2.22    ($true = sP77) <=> ? [X480 : term,X481 : term > $o] : (! [X485 : term] : (($true = (X481 @ X485)) | ($true != (var @ X485))) & ($true = (sP73 @ X481)) & ($true != (X481 @ X480)) & ($true = (sP72 @ X481)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f93,plain,(
% 6.77/2.22    ! [X258 : subst > term > subst > $o] : (($true = (sP78 @ X258)) <=> ? [X261 : subst > term > term] : (($true != (X258 @ id @ (lam @ (X261 @ sh @ one)) @ id)) & ! [X263 : term,X264 : subst,X265 : subst] : ((sub @ (X261 @ X265 @ X263) @ X264) = (X261 @ (comp @ X265 @ X264) @ (sub @ X263 @ X264))) & ! [X262 : term] : (((X258 @ id @ X262 @ id) != $true) | ($true = (X258 @ id @ (X261 @ id @ X262) @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f94,plain,(
% 6.77/2.22    ! [X251 : subst > term > subst > $o] : (($true = (sP79 @ X251)) <=> ! [X252 : subst > term > term] : (? [X256 : term] : (($true != (X251 @ id @ (X252 @ id @ X256) @ id)) & ((X251 @ id @ X256 @ id) = $true)) | ($true = (X251 @ id @ (lam @ (X252 @ sh @ one)) @ id)) | ? [X253 : subst,X254 : term,X255 : subst] : ((X252 @ (comp @ X253 @ X255) @ (sub @ X254 @ X255)) != (sub @ (X252 @ X253 @ X254) @ X255))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f95,plain,(
% 6.77/2.22    ($true = sP80) <=> ! [X258 : subst > term > subst > $o,X259 : term] : (? [X260 : term] : (($true != (X258 @ id @ (sub @ X259 @ (push @ X260 @ id)) @ id)) & ($true = (X258 @ id @ X260 @ id))) | ($true = (sP78 @ X258)) | ($true = (X258 @ id @ (lam @ X259) @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f96,plain,(
% 6.77/2.22    ($true = sP81) <=> ? [X250 : term,X251 : subst > term > subst > $o] : (! [X257 : term] : (($true = (X251 @ id @ (sub @ X250 @ (push @ X257 @ id)) @ id)) | ($true != (X251 @ id @ X257 @ id))) & ($true != (X251 @ id @ (lam @ (sub @ X250 @ (push @ one @ sh))) @ id)) & ($true = (sP79 @ X251)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f97,plain,(
% 6.77/2.22    ! [X138 : subst > term > subst > $o] : (($true = (sP82 @ X138)) <=> ? [X140 : subst > term > term] : (($true != (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) & ! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ($true != (X138 @ id @ X141 @ id))) & ! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f98,plain,(
% 6.77/2.22    ($true = sP83) <=> ! [X137 : term,X138 : subst > term > subst > $o] : (? [X139 : term] : (($true != (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id)) & ($true = (X138 @ id @ X139 @ id))) | ($true = (sP82 @ X138)) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f99,plain,(
% 6.77/2.22    ! [X466 : subst > term > subst > $o] : (($true = (sP84 @ X466)) <=> ? [X468 : subst > term > term] : (($true != (X466 @ id @ (lam @ (X468 @ sh @ one)) @ id)) & ! [X469 : term] : (($true = (X466 @ id @ (X468 @ id @ X469) @ id)) | ($true != (X466 @ id @ X469 @ id))) & ! [X470 : subst,X471 : subst,X472 : term] : ((sub @ (X468 @ X471 @ X472) @ X470) = (X468 @ (comp @ X471 @ X470) @ (sub @ X472 @ X470)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f100,plain,(
% 6.77/2.22    ! [X466 : subst > term > subst > $o] : (($true = (sP85 @ X466)) <=> ? [X473 : term,X474 : term] : (($true = (X466 @ id @ X473 @ id)) & ($true != (X466 @ id @ (ap @ (sub @ X474 @ id) @ X473) @ id)) & ($true = (X466 @ id @ X474 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f101,plain,(
% 6.77/2.22    ! [X93 : subst > term > subst > $o] : (($true = (sP86 @ X93)) <=> ? [X95 : subst > term > term] : (! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) & ($true != (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id)) & ! [X96 : term] : (($true != (X93 @ id @ X96 @ id)) | ($true = (X93 @ id @ (X95 @ id @ X96) @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f102,plain,(
% 6.77/2.22    ! [X93 : subst > term > subst > $o] : (($true = (sP87 @ X93)) <=> ? [X100 : term,X101 : term] : (($true = (X93 @ id @ X101 @ id)) & ($true != (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id)) & ($true = (X93 @ id @ X100 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f103,plain,(
% 6.77/2.22    ! [X93 : subst > term > subst > $o] : (($true = (sP88 @ X93)) <=> ? [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (($true != (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105)) & ($true = (X93 @ X104 @ X102 @ (comp @ X103 @ X105)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f104,plain,(
% 6.77/2.22    ! [X93 : subst > term > subst > $o] : (($true = (sP89 @ X93)) <=> ? [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (($true = (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108)) & ($true != (X93 @ X107 @ X109 @ (comp @ X106 @ X108)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f105,plain,(
% 6.77/2.22    ($true = sP90) <=> ! [X93 : subst > term > subst > $o,X94 : term] : (($true = (X93 @ id @ X94 @ id)) | ? [X110 : term] : (($true != (X93 @ id @ X110 @ id)) & ($true = (var @ (sub @ X110 @ id)))) | ($true = (sP89 @ X93)) | ($true = (sP87 @ X93)) | ($true = (sP88 @ X93)) | ($true = (sP86 @ X93)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f106,plain,(
% 6.77/2.22    ! [X354 : subst > term > subst > $o] : (($true = (sP91 @ X354)) <=> ? [X361 : term,X362 : term] : (($true = (X354 @ id @ X362 @ id)) & ($true != (X354 @ id @ (ap @ (sub @ X361 @ id) @ X362) @ id)) & ($true = (X354 @ id @ X361 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f107,plain,(
% 6.77/2.22    ! [X354 : subst > term > subst > $o] : (($true = (sP92 @ X354)) <=> ? [X363 : term,X364 : subst,X365 : subst,X366 : subst] : (($true != (X354 @ X364 @ X363 @ (comp @ X365 @ X366))) & ((X354 @ (comp @ X364 @ X365) @ (sub @ X363 @ X365) @ X366) = $true)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f108,plain,(
% 6.77/2.22    ($true = sP93) <=> ! [X353 : term > $o,X354 : subst > term > subst > $o,X355 : term,X356 : term] : (($true = (X353 @ (ap @ X356 @ X355))) | ? [X367 : term] : ((X353 @ X367) != (X354 @ id @ X367 @ id)) | ($true != (X353 @ X355)) | ($true = (sP91 @ X354)) | ? [X357 : term,X358 : subst,X359 : subst,X360 : subst] : (($true != (X354 @ (comp @ X358 @ X360) @ (sub @ X357 @ X360) @ X359)) & ($true = (X354 @ X358 @ X357 @ (comp @ X360 @ X359)))) | ($true = (sP92 @ X354)) | ($true != (X353 @ X356)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f109,plain,(
% 6.77/2.22    ! [X161 : subst > term > subst > $o] : (($true = (sP94 @ X161)) <=> ! [X163 : subst > term > term] : (? [X164 : term] : (((X161 @ id @ X164 @ id) = $true) & ($true != (X161 @ id @ (X163 @ id @ X164) @ id))) | ? [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) != (sub @ (X163 @ X166 @ X165) @ X167)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f110,plain,(
% 6.77/2.22    ! [X168 : subst > term > subst > $o] : (($true = (sP95 @ X168)) <=> ? [X170 : subst > term > term] : (($true != (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id)) & ! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) & ! [X174 : term] : (($true != (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f111,plain,(
% 6.77/2.22    ! [X168 : subst > term > subst > $o] : (((sP96 @ X168) = $true) <=> ? [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) = $true) & ($true != (X168 @ X181 @ X180 @ (comp @ X183 @ X182)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f112,plain,(
% 6.77/2.22    ! [X168 : subst > term > subst > $o] : (($true = (sP97 @ X168)) <=> ? [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (($true = (X168 @ X177 @ X176 @ (comp @ X178 @ X175))) & ($true != (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f113,plain,(
% 6.77/2.22    ($true = sP98) <=> ! [X168 : subst > term > subst > $o,X169 : term] : (($true = (sP95 @ X168)) | ? [X179 : term] : (($true = (X168 @ id @ X179 @ id)) & ($true != (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id))) | ($true = (X168 @ id @ (lam @ X169) @ id)) | ($true = (sP97 @ X168)) | ((sP96 @ X168) = $true))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f114,plain,(
% 6.77/2.22    ($true = sP99) <=> ? [X160 : term,X161 : subst > term > subst > $o] : (($true = (sP94 @ X161)) & ! [X162 : term] : (($true != (X161 @ id @ X162 @ id)) | ($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id))) & ($true != (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f115,plain,(
% 6.77/2.22    ! [X31 : subst > term > subst > $o] : (((sP100 @ X31) = $true) <=> ? [X35 : subst > term > term] : (($true != (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) & ! [X36 : term] : (($true != (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id))) & ! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f116,plain,(
% 6.77/2.22    ! [X31 : subst > term > subst > $o] : (((sP101 @ X31) = $true) <=> ? [X33 : term,X34 : term] : (($true = (X31 @ id @ X34 @ id)) & ($true = (X31 @ id @ X33 @ id)) & ($true != (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f117,plain,(
% 6.77/2.22    ! [X21 : subst > term > subst > $o] : (($true = (sP102 @ X21)) <=> ! [X26 : subst > term > term] : (? [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) != (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ? [X30 : term] : (((X21 @ id @ X30 @ id) = $true) & ($true != (X21 @ id @ (X26 @ id @ X30) @ id)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f118,plain,(
% 6.77/2.22    ! [X14 : term > $o] : (($true = (sP103 @ X14)) <=> ! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ($true != (X14 @ X16)) | ($true != (X14 @ X15))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f119,plain,(
% 6.77/2.22    ! [X14 : term > $o] : (($true = (sP104 @ X14)) <=> ! [X17 : term] : (($true = (X14 @ X17)) | ($true != (var @ X17))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f120,plain,(
% 6.77/2.22    ! [X14 : term > $o] : (($true = (sP105 @ X14)) <=> ! [X18 : term] : (? [X19 : term] : (($true != (X14 @ (sub @ X18 @ (push @ X19 @ id)))) & ($true = (X14 @ X19))) | ($true = (X14 @ (lam @ X18)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f121,plain,(
% 6.77/2.22    ($true = sP106) <=> ! [X31 : subst > term > subst > $o,X32 : term] : (((sP100 @ X31) = $true) | ($true = (X31 @ id @ X32 @ id)) | ((sP101 @ X31) = $true))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f122,plain,(
% 6.77/2.22    ($true = sP107) <=> ? [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (($true != (X22 @ (lam @ X23))) & ($true = (sP102 @ X21)) & ! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) & ! [X25 : term] : (($true != (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id))))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f123,plain,(
% 6.77/2.22    ($true = sP108) <=> ? [X13 : term,X14 : term > $o] : (($true = (sP105 @ X14)) & ($true = (sP104 @ X14)) & ($true = (sP103 @ X14)) & ($true != (X14 @ X13)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f14,plain,(
% 6.77/2.22    (hoasinduction_lem1_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (? [X13 : term,X14 : term > $o] : (! [X18 : term] : (? [X19 : term] : (($true != (X14 @ (sub @ X18 @ (push @ X19 @ id)))) & ($true = (X14 @ X19))) | ($true = (X14 @ (lam @ X18)))) & ! [X17 : term] : (($true = (X14 @ X17)) | ($true != (var @ X17))) & ! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ($true != (X14 @ X16)) | ($true != (X14 @ X15))) & ($true != (X14 @ X13))) | ? [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (($true != (X22 @ (lam @ X23))) & ! [X26 : subst > term > term] : (? [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) != (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ? [X30 : term] : (((X21 @ id @ X30 @ id) = $true) & ($true != (X21 @ id @ (X26 @ id @ X30) @ id)))) & ! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) & ! [X25 : term] : (($true != (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id)))))) | ? [X10 : subst > term > subst > $o] : ! [X11 : term > $o] : ? [X12 : term] : ((X11 @ X12) != (X10 @ id @ X12 @ id)) | ! [X31 : subst > term > subst > $o,X32 : term] : (? [X35 : subst > term > term] : (($true != (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) & ! [X36 : term] : (($true != (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id))) & ! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))) | ($true = (X31 @ id @ X32 @ id)) | ? [X33 : term,X34 : term] : (($true = (X31 @ id @ X34 @ id)) & ($true = (X31 @ id @ X33 @ id)) & ($true != (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id)))) | ? [X20 : term] : ((sub @ X20 @ id) != X20))) & ((hoasinduction_lem3_lthm = $true) <=> (? [X159 : term] : ((sub @ X159 @ id) != X159) | ! [X168 : subst > term > subst > $o,X169 : term] : (? [X170 : subst > term > term] : (($true != (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id)) & ! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) & ! [X174 : term] : (($true != (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id)))) | ? [X179 : term] : (($true = (X168 @ id @ X179 @ id)) & ($true != (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id))) | ($true = (X168 @ id @ (lam @ X169) @ id)) | ? [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (($true = (X168 @ X177 @ X176 @ (comp @ X178 @ X175))) & ($true != (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175))) | ? [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) = $true) & ($true != (X168 @ X181 @ X180 @ (comp @ X183 @ X182))))) | ? [X160 : term,X161 : subst > term > subst > $o] : (! [X163 : subst > term > term] : (? [X164 : term] : (((X161 @ id @ X164 @ id) = $true) & ($true != (X161 @ id @ (X163 @ id @ X164) @ id))) | ? [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) != (sub @ (X163 @ X166 @ X165) @ X167)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id))) & ! [X162 : term] : (($true != (X161 @ id @ X162 @ id)) | ($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id))) & ($true != (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id))))) & ((pushprop_lem1_lthm = $true) <=> (? [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) != X495) | ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501))) | ? [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) != X496))) & (! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ? [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) != (X55 @ X56))) <=> (pushprop_lem1v2 = $true)) & (hoasapnotvar = $true) & (! [X353 : term > $o,X354 : subst > term > subst > $o,X355 : term,X356 : term] : (($true = (X353 @ (ap @ X356 @ X355))) | ? [X367 : term] : ((X353 @ X367) != (X354 @ id @ X367 @ id)) | ($true != (X353 @ X355)) | ? [X361 : term,X362 : term] : (($true = (X354 @ id @ X362 @ id)) & ($true != (X354 @ id @ (ap @ (sub @ X361 @ id) @ X362) @ id)) & ($true = (X354 @ id @ X361 @ id))) | ? [X357 : term,X358 : subst,X359 : subst,X360 : subst] : (($true != (X354 @ (comp @ X358 @ X360) @ (sub @ X357 @ X360) @ X359)) & ($true = (X354 @ X358 @ X357 @ (comp @ X360 @ X359)))) | ? [X363 : term,X364 : subst,X365 : subst,X366 : subst] : (($true != (X354 @ X364 @ X363 @ (comp @ X365 @ X366))) & ((X354 @ (comp @ X364 @ X365) @ (sub @ X363 @ X365) @ X366) = $true)) | ($true != (X353 @ X356))) <=> (hoasinduction_lem2v2 = $true)) & ((d2subst @ d_id) = id) & (! [X93 : subst > term > subst > $o,X94 : term] : (($true = (X93 @ id @ X94 @ id)) | ? [X110 : term] : (($true != (X93 @ id @ X110 @ id)) & ($true = (var @ (sub @ X110 @ id)))) | ? [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (($true = (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108)) & ($true != (X93 @ X107 @ X109 @ (comp @ X106 @ X108)))) | ? [X100 : term,X101 : term] : (($true = (X93 @ id @ X101 @ id)) & ($true != (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id)) & ($true = (X93 @ id @ X100 @ id))) | ? [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (($true != (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105)) & ($true = (X93 @ X104 @ X102 @ (comp @ X103 @ X105)))) | ? [X95 : subst > term > term] : (! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) & ($true != (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id)) & ! [X96 : term] : (($true != (X93 @ id @ X96 @ id)) | ($true = (X93 @ id @ (X95 @ id @ X96) @ id))))) <=> (hoasinduction = $true)) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_lem1_lthm = $true) & (hoasinduction_lem3b_gthm = $true) & ((hoasinduction_no_psi_cond = $true) <=> ! [X466 : subst > term > subst > $o,X467 : term] : (? [X473 : term,X474 : term] : (($true = (X466 @ id @ X473 @ id)) & ($true != (X466 @ id @ (ap @ (sub @ X474 @ id) @ X473) @ id)) & ($true = (X466 @ id @ X474 @ id))) | ? [X468 : subst > term > term] : (($true != (X466 @ id @ (lam @ (X468 @ sh @ one)) @ id)) & ! [X469 : term] : (($true = (X466 @ id @ (X468 @ id @ X469) @ id)) | ($true != (X466 @ id @ X469 @ id))) & ! [X470 : subst,X471 : subst,X472 : term] : ((sub @ (X468 @ X471 @ X472) @ X470) = (X468 @ (comp @ X471 @ X470) @ (sub @ X472 @ X470)))) | ($true = (X466 @ id @ X467 @ id)))) & (ulamvar1 != $true) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem3v2_gthm = $true) & ((d2subst @ d_id) = sh) & ((shinj = $true) <=> ! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267))) & (ulamvarind = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) != (d2subst @ X45)) | (X44 = X45)) & ((apinj2 = $true) <=> ! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345)))) & (! [X137 : term,X138 : subst > term > subst > $o] : (? [X139 : term] : (($true != (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id)) & ($true = (X138 @ id @ X139 @ id))) | ? [X140 : subst > term > term] : (($true != (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) & ! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ($true != (X138 @ id @ X141 @ id))) & ! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & (axapp = $true) & (hoasapnotvar_gthm = $true) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3a_lthm = $true) <=> (? [X250 : term,X251 : subst > term > subst > $o] : (! [X257 : term] : (($true = (X251 @ id @ (sub @ X250 @ (push @ X257 @ id)) @ id)) | ($true != (X251 @ id @ X257 @ id))) & ($true != (X251 @ id @ (lam @ (sub @ X250 @ (push @ one @ sh))) @ id)) & ! [X252 : subst > term > term] : (? [X256 : term] : (($true != (X251 @ id @ (X252 @ id @ X256) @ id)) & ((X251 @ id @ X256 @ id) = $true)) | ($true = (X251 @ id @ (lam @ (X252 @ sh @ one)) @ id)) | ? [X253 : subst,X254 : term,X255 : subst] : ((X252 @ (comp @ X253 @ X255) @ (sub @ X254 @ X255)) != (sub @ (X252 @ X253 @ X254) @ X255)))) | ! [X258 : subst > term > subst > $o,X259 : term] : (? [X260 : term] : (($true != (X258 @ id @ (sub @ X259 @ (push @ X260 @ id)) @ id)) & ($true = (X258 @ id @ X260 @ id))) | ? [X261 : subst > term > term] : (($true != (X258 @ id @ (lam @ (X261 @ sh @ one)) @ id)) & ! [X263 : term,X264 : subst,X265 : subst] : ((sub @ (X261 @ X265 @ X263) @ X264) = (X261 @ (comp @ X265 @ X264) @ (sub @ X263 @ X264))) & ! [X262 : term] : (((X258 @ id @ X262 @ id) != $true) | ($true = (X258 @ id @ (X261 @ id @ X262) @ id)))) | ($true = (X258 @ id @ (lam @ X259) @ id))) | ? [X249 : term] : ((sub @ X249 @ id) != X249))) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) <=> (hoasapinj2 = $true)) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) != (d2term @ X460)) | (X459 = X460)) & (pushprop_lem2v2_lthm = $true) & (! [X48 : term] : ? [X49 : subst > term > term] : ! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (termmset_gthm = $true) & ((? [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) != X475) | ? [X479 : subst] : ((comp @ X479 @ id) != X479) | ? [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) != X478) | ! [X486 : term,X487 : term > $o,X488 : subst] : (($true = (X487 @ (sub @ X486 @ X488))) | ? [X489 : term,X490 : term] : (($true = (X487 @ X489)) & ($true = (X487 @ X490)) & ($true != (X487 @ (ap @ X490 @ X489)))) | ? [X491 : term] : (($true = (var @ X491)) & ($true != (X487 @ (sub @ X491 @ X488)))) | ? [X492 : term] : (! [X493 : term] : (($true != (X487 @ X493)) | ($true = (X487 @ (sub @ X492 @ (push @ X493 @ id))))) & ($true != (X487 @ (lam @ X492))))) | ? [X480 : term,X481 : term > $o] : (! [X485 : term] : (($true = (X481 @ X485)) | ($true != (var @ X485))) & ! [X482 : term] : (($true = (X481 @ (lam @ X482))) | ($true != (X481 @ X482))) & ($true != (X481 @ X480)) & ! [X483 : term,X484 : term] : (($true != (X481 @ X484)) | ($true != (X481 @ X483)) | ($true = (X481 @ (ap @ X484 @ X483)))))) <=> (induction2lem_lthm = $true)) & (one = (d2term @ d_one)) & (hoaslamnotap_lthm = $true) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1 = $true) <=> ! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & (pushprop_lem0_gthm = $true) & (pushprop_lem2v2 = $true) & (axabs = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) <=> (axvarcons = $true)) & (pushprop_lem3v2 = $true) & ((pushprop_lem1v2_lthm = $true) <=> (? [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) != X416) | ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (? [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) != (X419 @ X422)) | ($true != (X420 @ X418)) | ($true = (X419 @ one))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & ((var @ (d2term @ d_one)) != $true) & ((? [X281 : term,X282 : term,X283 : subst > term > subst > $o] : (! [X284 : term,X285 : term] : (((X283 @ id @ X284 @ id) != $true) | ($true = (X283 @ id @ (ap @ (sub @ X285 @ id) @ X284) @ id)) | ($true != (X283 @ id @ X285 @ id))) & ! [X290 : term,X291 : subst,X292 : subst,X293 : subst] : (($true != (X283 @ (comp @ X291 @ X292) @ (sub @ X290 @ X292) @ X293)) | ($true = (X283 @ X291 @ X290 @ (comp @ X292 @ X293)))) & ($true = (X283 @ id @ X282 @ id)) & ($true != (X283 @ id @ (ap @ X282 @ X281) @ id)) & ! [X286 : subst,X287 : subst,X288 : term,X289 : subst] : (($true = (X283 @ (comp @ X286 @ X287) @ (sub @ X288 @ X287) @ X289)) | ($true != (X283 @ X286 @ X288 @ (comp @ X287 @ X289)))) & ($true = (X283 @ id @ X281 @ id))) | ? [X274 : term > $o,X275 : term] : (($true != (X274 @ X275)) & ! [X278 : term] : (($true = (X274 @ X278)) | ($true != (var @ X278))) & ! [X279 : term,X280 : term] : (($true != (X274 @ X279)) | ($true != (X274 @ X280)) | ($true = (X274 @ (ap @ X280 @ X279)))) & ! [X276 : term] : (? [X277 : term] : (((X274 @ X277) = $true) & ($true != (X274 @ (sub @ X276 @ (push @ X277 @ id))))) | ($true = (X274 @ (lam @ X276))))) | ? [X294 : subst > term > subst > $o,X295 : term] : (! [X306 : term,X307 : subst,X308 : subst,X309 : subst] : (($true = (X294 @ (comp @ X308 @ X309) @ (sub @ X306 @ X309) @ X307)) | ($true != (X294 @ X308 @ X306 @ (comp @ X309 @ X307)))) & ! [X296 : term] : (((X294 @ id @ (sub @ X295 @ (push @ X296 @ id)) @ id) = $true) | ($true != (X294 @ id @ X296 @ id))) & ($true != (X294 @ id @ (lam @ X295) @ id)) & ! [X297 : subst,X298 : term,X299 : subst,X300 : subst] : (($true = (X294 @ X300 @ X298 @ (comp @ X297 @ X299))) | ((X294 @ (comp @ X300 @ X297) @ (sub @ X298 @ X297) @ X299) != $true)) & ! [X301 : subst > term > term] : (? [X303 : term,X304 : subst,X305 : subst] : ((sub @ (X301 @ X305 @ X303) @ X304) != (X301 @ (comp @ X305 @ X304) @ (sub @ X303 @ X304))) | ? [X302 : term] : (($true != (X294 @ id @ (X301 @ id @ X302) @ id)) & ($true = (X294 @ id @ X302 @ id))) | ($true = (X294 @ id @ (lam @ (X301 @ sh @ one)) @ id)))) | ! [X310 : subst > term > subst > $o,X311 : term] : (? [X324 : subst,X325 : term,X326 : subst,X327 : subst] : (($true = (X310 @ X326 @ X325 @ (comp @ X324 @ X327))) & ($true != (X310 @ (comp @ X326 @ X324) @ (sub @ X325 @ X324) @ X327))) | ? [X318 : subst > term > term] : (($true != (X310 @ id @ (lam @ (X318 @ sh @ one)) @ id)) & ! [X319 : term,X320 : subst,X321 : subst] : ((X318 @ (comp @ X321 @ X320) @ (sub @ X319 @ X320)) = (sub @ (X318 @ X321 @ X319) @ X320)) & ! [X322 : term] : (($true = (X310 @ id @ (X318 @ id @ X322) @ id)) | ($true != (X310 @ id @ X322 @ id)))) | ($true = (X310 @ id @ X311 @ id)) | ? [X312 : term,X313 : term] : (($true != (X310 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) & ($true = (X310 @ id @ X313 @ id)) & ($true = (X310 @ id @ X312 @ id))) | ? [X323 : term] : (($true = (var @ (sub @ X323 @ id))) & ($true != (X310 @ id @ X323 @ id))) | ? [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (($true = (X310 @ (comp @ X316 @ X315) @ (sub @ X314 @ X315) @ X317)) & ($true != (X310 @ X316 @ X314 @ (comp @ X315 @ X317)))))) <=> (hoasinduction_lthm = $true)) & (lamnotvar = $true) & (hoasapinj1_gthm = $true) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & (! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (? [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) != (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ? [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) != (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))) <=> (hoaslaminj = $true)) & (hoasinduction_lem1v2_gthm = $true) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X511 : term,X512 : subst > term > subst > $o] : (? [X522 : term] : (((X512 @ id @ (sub @ X511 @ (push @ X522 @ id)) @ id) != $true) & ($true = (X512 @ id @ X522 @ id))) | ? [X513 : term,X514 : subst > term > term] : (! [X515 : term] : (($true != (X512 @ id @ X515 @ id)) | ($true = (X512 @ id @ (X514 @ id @ X515) @ id))) & ! [X516 : subst,X517 : term,X518 : subst] : ((X514 @ (comp @ X516 @ X518) @ (sub @ X517 @ X518)) = (sub @ X513 @ (push @ (sub @ X517 @ X518) @ (comp @ X516 @ X518)))) & ($true != (X512 @ id @ (lam @ (X514 @ sh @ one)) @ id)) & ! [X519 : term,X520 : subst,X521 : subst] : ((sub @ (sub @ X513 @ (push @ X519 @ X521)) @ X520) = (sub @ (X514 @ X521 @ X519) @ X520))) | ($true = (X512 @ id @ (lam @ (sub @ X511 @ (push @ one @ sh))) @ id)))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X445 : term] : ? [X446 : subst > term > term] : ! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448)))) & ! [X132 : d_term] : (d_one = X132) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (! [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))) | ? [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) != (sub @ (X368 @ X373 @ X371) @ X372))) <=> (hoaslamnotap = $true)) & (hoaslamnotvar = $true) & ((? [X0 : term] : ((sub @ X0 @ id) != X0) | ! [X1 : term] : ((sub @ X1 @ id) = X1)) <=> (termmset_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X2 : term,X3 : subst > term > subst > $o] : (? [X4 : subst > term > term] : (! [X5 : term] : (($true != (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) & ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) != $true) & ! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6))) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ? [X9 : term] : (($true = (X3 @ id @ X9 @ id)) & ($true != (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id))))) & (apnotvar = $true) & (pushprop_lem1_gthm = $true) & ((axidr = $true) <=> ! [X269 : subst] : ((comp @ X269 @ id) = X269)) & ((hoasinduction_lem3a = $true) <=> ! [X63 : term,X64 : subst > term > subst > $o] : (? [X65 : term] : (($true = (X64 @ id @ X65 @ id)) & ($true != (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ? [X66 : subst > term > term] : (! [X67 : term] : (($true != (X64 @ id @ X67 @ id)) | ($true = (X64 @ id @ (X66 @ id @ X67) @ id))) & ($true != (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) & ! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70))) | ($true = (X64 @ id @ (lam @ X63) @ id)))) & ((axscons = $true) <=> ! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268)) & (hoaslamnotvar_gthm = $true) & (induction2lem_gthm = $true) & (axvarshift = $true) & (pushprop_lthm_orig = $true) & (ulamvarsh = $true) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((hoasinduction_lem3b = $true) <=> ! [X130 : term] : ? [X131 : subst > term > term] : ((X131 @ sh @ one) = (sub @ X130 @ (push @ one @ sh)))) & ((hoasinduction_lem3v2a = $true) <=> ! [X449 : term,X450 : subst > term > subst > $o,X451 : term > $o] : (($true = (X451 @ (lam @ X449))) | ? [X453 : subst > term > term] : (! [X454 : term] : (($true = (X450 @ id @ (X453 @ id @ X454) @ id)) | ($true != (X450 @ id @ X454 @ id))) & ($true != (X450 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X455 : subst,X456 : term,X457 : subst] : ((sub @ (X453 @ X455 @ X456) @ X457) = (X453 @ (comp @ X455 @ X457) @ (sub @ X456 @ X457)))) | ? [X452 : term] : ((X450 @ id @ X452 @ id) != (X451 @ X452)) | ? [X458 : term] : (($true != (X451 @ (sub @ X449 @ (push @ X458 @ id)))) & ($true = (X451 @ X458))))) & ((? [X72 : subst] : ((comp @ X72 @ id) != X72) | (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74)) | ? [X71 : subst] : ((comp @ id @ X71) != X71)) <=> (substmonoid_lthm = $true)) & (pushprop_lem2v2_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2_lthm = $true) & (substmonoid_gthm = $true) & ((induction2 = $true) <=> ! [X374 : term > $o,X375 : term] : (? [X379 : term,X380 : term] : (($true != (X374 @ (ap @ X380 @ X379))) & ($true = (X374 @ X379)) & ($true = (X374 @ X380))) | ((X374 @ X375) = $true) | ? [X376 : term] : (! [X377 : term] : (($true != (X374 @ X377)) | ($true = (X374 @ (sub @ X376 @ (push @ X377 @ id))))) & ($true != (X374 @ (lam @ X376)))) | ? [X378 : term] : (($true = (var @ X378)) & ($true != (X374 @ X378))))) & (lamnotap != $true) & (hoasinduction_lem2_gthm = $true) & (! [X535 : subst,X536 : term > $o,X537 : term] : ? [X538 : term > $o] : ! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))) <=> (pushprop_lem0_lthm = $true)) & (! [X461 : term] : ((sub @ X461 @ id) = X461) <=> (axvarid = $true)) & (! [X270 : subst > term > subst > $o] : ? [X271 : term > $o] : ! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272)) <=> (hoasinduction_lem0_lthm = $true)) & ((! [X337 : term > $o,X338 : term] : (? [X342 : term] : (($true != (X337 @ (lam @ X342))) & ! [X343 : term] : (($true = (X337 @ (sub @ X342 @ (push @ X343 @ id)))) | ($true != (X337 @ X343)))) | ? [X339 : term,X340 : term] : (($true = (X337 @ X340)) & ($true != (X337 @ (ap @ X339 @ X340))) & ($true = (X337 @ X339))) | ($true = (X337 @ X338)) | ? [X341 : term] : (($true != (X337 @ X341)) & ($true = (var @ X341)))) | ? [X328 : term] : ((sub @ X328 @ id) != X328) | ? [X329 : term,X330 : subst,X331 : term > $o] : (! [X332 : term,X333 : term] : (($true = (X331 @ (ap @ X332 @ X333))) | ($true != (X331 @ X332)) | ($true != (X331 @ X333))) & ! [X334 : term] : (($true != (var @ X334)) | ($true = (X331 @ (sub @ X334 @ X330)))) & ((X331 @ (sub @ X329 @ X330)) != $true) & ! [X335 : term] : (? [X336 : term] : (($true = (X331 @ X336)) & ($true != (X331 @ (sub @ X335 @ (push @ X336 @ id))))) | ($true = (X331 @ (lam @ X335)))))) <=> (induction2_lthm = $true)) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & (! [X57 : term > $o,X58 : term] : (? [X60 : term] : (($true = (X57 @ X60)) & ($true != (X57 @ (lam @ X60)))) | ? [X61 : term,X62 : term] : (($true = (X57 @ X62)) & ($true != (X57 @ (ap @ X62 @ X61))) & ($true = (X57 @ X61))) | ? [X59 : term] : (($true = (var @ X59)) & ($true != (X57 @ X59))) | ($true = (X57 @ X58))) <=> (induction = $true)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (pushprop = $true) & (! [X40 : term] : ? [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) = (X41 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X429 : subst > term > subst > $o] : ? [X430 : term > $o] : ! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (pushprop_gthm = $true) & (hoasapnotvar_lthm = $true) & ! [X273 : d_subst] : (d_id = X273) & ((hoasinduction_lem3 = $true) <=> ! [X233 : subst > term > subst > $o,X234 : term] : (? [X239 : subst > term > term] : (! [X241 : subst,X242 : subst,X243 : term] : ((X239 @ (comp @ X242 @ X241) @ (sub @ X243 @ X241)) = (sub @ (X239 @ X242 @ X243) @ X241)) & ! [X240 : term] : (($true = (X233 @ id @ (X239 @ id @ X240) @ id)) | ($true != (X233 @ id @ X240 @ id))) & ($true != (X233 @ id @ (lam @ (X239 @ sh @ one)) @ id))) | ? [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (($true = (X233 @ (comp @ X248 @ X247) @ (sub @ X245 @ X247) @ X246)) & ($true != (X233 @ X248 @ X245 @ (comp @ X247 @ X246)))) | ? [X244 : term] : (($true = (X233 @ id @ X244 @ id)) & ($true != (X233 @ id @ (sub @ X234 @ (push @ X244 @ id)) @ id))) | ? [X235 : subst,X236 : subst,X237 : subst,X238 : term] : (($true = (X233 @ X236 @ X238 @ (comp @ X235 @ X237))) & ($true != (X233 @ (comp @ X236 @ X235) @ (sub @ X238 @ X235) @ X237))) | ($true = (X233 @ id @ (lam @ X234) @ id)))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ((? [X400 : term,X401 : subst] : ((comp @ sh @ (push @ X400 @ X401)) != X401) | ! [X404 : term,X405 : subst > term > term,X406 : subst,X407 : subst > term > term] : (((X407 @ X406 @ X404) = (X405 @ X406 @ X404)) | ((lam @ (X405 @ sh @ one)) != (lam @ (X407 @ sh @ one))) | ? [X408 : subst,X409 : term,X410 : subst] : ((X405 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408)) != (sub @ (X405 @ X410 @ X409) @ X408)) | ? [X411 : term,X412 : subst,X413 : subst] : ((sub @ (X407 @ X412 @ X411) @ X413) != (X407 @ (comp @ X412 @ X413) @ (sub @ X411 @ X413)))) | ? [X402 : term,X403 : term] : (((lam @ X403) = (lam @ X402)) & (X402 != X403)) | ? [X398 : term,X399 : subst] : ((sub @ one @ (push @ X398 @ X399)) != X398)) <=> (hoaslaminj_lthm = $true)) & ((? [X194 : subst > term > subst > $o] : ! [X195 : term > $o] : ? [X196 : term] : ((X194 @ id @ X196 @ id) != (X195 @ X196)) | ? [X204 : term] : ((sub @ X204 @ id) != X204) | ! [X215 : term,X216 : subst > term > subst > $o] : (($true = (X216 @ id @ X215 @ id)) | ? [X231 : term,X232 : term] : (($true = (X216 @ id @ X231 @ id)) & ((X216 @ id @ X232 @ id) = $true) & ($true != (X216 @ id @ (ap @ (sub @ X231 @ id) @ X232) @ id))) | ? [X226 : subst,X227 : term,X228 : subst,X229 : subst] : (($true != (X216 @ X229 @ X227 @ (comp @ X226 @ X228))) & ($true = (X216 @ (comp @ X229 @ X226) @ (sub @ X227 @ X226) @ X228))) | ? [X221 : subst > term > term] : (($true != (X216 @ id @ (lam @ (X221 @ sh @ one)) @ id)) & ! [X222 : subst,X223 : term,X224 : subst] : ((X221 @ (comp @ X222 @ X224) @ (sub @ X223 @ X224)) = (sub @ (X221 @ X222 @ X223) @ X224)) & ! [X225 : term] : (($true = (X216 @ id @ (X221 @ id @ X225) @ id)) | ($true != (X216 @ id @ X225 @ id)))) | ? [X230 : term] : (($true != (X216 @ id @ X230 @ id)) & ($true = (var @ (sub @ X230 @ id)))) | ? [X217 : term,X218 : subst,X219 : subst,X220 : subst] : (($true != (X216 @ (comp @ X219 @ X218) @ (sub @ X217 @ X218) @ X220)) & ($true = (X216 @ X219 @ X217 @ (comp @ X218 @ X220))))) | ? [X205 : term > $o,X206 : term,X207 : subst > term > subst > $o] : (! [X213 : term] : (((X205 @ (sub @ X206 @ (push @ X213 @ id))) = $true) | ($true != (X205 @ X213))) & ! [X214 : term] : ((X205 @ X214) = (X207 @ id @ X214 @ id)) & ! [X208 : subst > term > term] : (($true = (X207 @ id @ (lam @ (X208 @ sh @ one)) @ id)) | ? [X209 : subst,X210 : subst,X211 : term] : ((X208 @ (comp @ X209 @ X210) @ (sub @ X211 @ X210)) != (sub @ (X208 @ X209 @ X211) @ X210)) | ? [X212 : term] : (($true = (X207 @ id @ X212 @ id)) & ((X207 @ id @ (X208 @ id @ X212) @ id) != $true))) & ($true != (X205 @ (lam @ X206)))) | ? [X197 : term > $o,X198 : term] : (! [X199 : term] : (($true = (X197 @ X199)) | ($true != (var @ X199))) & ($true != (X197 @ X198)) & ! [X202 : term] : (($true = (X197 @ (lam @ X202))) | ? [X203 : term] : (($true != (X197 @ (sub @ X202 @ (push @ X203 @ id)))) & ((X197 @ X203) = $true))) & ! [X200 : term,X201 : term] : (($true = (X197 @ (ap @ X201 @ X200))) | ($true != (X197 @ X200)) | ($true != (X197 @ X201))))) <=> (hoasinduction_lthm_3 = $true)) & ((induction2lem = $true) <=> ! [X525 : term > $o,X526 : subst,X527 : term] : (? [X528 : term] : (($true != (X525 @ (lam @ X528))) & ! [X529 : term] : (($true = (X525 @ (sub @ X528 @ (push @ X529 @ id)))) | ($true != (X525 @ X529)))) | ($true = (X525 @ (sub @ X527 @ X526))) | ? [X530 : term,X531 : term] : (($true = (X525 @ X531)) & ($true != (X525 @ (ap @ X531 @ X530))) & ($true = (X525 @ X530))) | ? [X532 : term] : (($true != (X525 @ (sub @ X532 @ X526))) & ($true = (var @ X532))))) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (! [X184 : term] : ((sub @ X184 @ id) = X184) <=> (termmset = $true)) & ((! [X386 : subst > term > subst > $o,X387 : term > $o,X388 : term] : (? [X389 : subst > term > term] : (! [X393 : term] : (($true = (X386 @ id @ (X389 @ id @ X393) @ id)) | ($true != (X386 @ id @ X393 @ id))) & ($true != (X386 @ id @ (lam @ (X389 @ sh @ one)) @ id)) & ! [X390 : subst,X391 : subst,X392 : term] : ((X389 @ (comp @ X391 @ X390) @ (sub @ X392 @ X390)) = (sub @ (X389 @ X391 @ X392) @ X390))) | ? [X394 : term] : (((X387 @ X394) = $true) & ((X387 @ (sub @ X388 @ (push @ X394 @ id))) != $true)) | ? [X395 : term] : ((X387 @ X395) != (X386 @ id @ X395 @ id)) | ($true = (X387 @ (lam @ X388)))) | ? [X381 : term] : ! [X382 : subst > term > term] : ? [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) != (X382 @ X383 @ X384)) | ? [X385 : term] : ((sub @ X385 @ id) != X385)) <=> (hoasinduction_lem3v2a_lthm = $true)) & (hoaslaminj_gthm = $true) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & (pushprop_lthm = $true) & (hoasinduction_lem1v2 = $true) & (hoasinduction_gthm = $true) & ((substmonoid = $true) <=> (! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533))) & (axmap = $true) & (hoasinduction_lem2v2_gthm = $true) & ((? [X185 : term] : ((sub @ X185 @ id) != X185) | ! [X190 : term,X191 : term,X192 : term,X193 : term] : (((ap @ (sub @ X192 @ id) @ X191) != (ap @ (sub @ X190 @ id) @ X193)) | (X190 = X192)) | ? [X186 : term,X187 : term,X188 : term,X189 : term] : (((ap @ X187 @ X186) = (ap @ X189 @ X188)) & (X187 != X189))) <=> (hoasapinj1_lthm = $true)) & ((hoasapinj2_lthm = $true) <=> (! [X507 : term,X508 : term,X509 : term,X510 : term] : ((X508 = X509) | ((ap @ (sub @ X507 @ id) @ X508) != (ap @ (sub @ X510 @ id) @ X509))) | ? [X503 : term,X504 : term,X505 : term,X506 : term] : (((ap @ X505 @ X503) = (ap @ X506 @ X504)) & (X503 != X504)))) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasinduction_lem2_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X348 : term,X349 : term > $o,X350 : subst] : ? [X351 : term > $o] : ! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352))) & ((axidl = $true) <=> ! [X423 : subst] : ((comp @ id @ X423) = X423)) & ((! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (($true = (X112 @ (lam @ X113))) | ? [X120 : term] : (($true != (X112 @ (sub @ X113 @ (push @ X120 @ id)))) & ($true = (X112 @ X120))) | ? [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (($true = (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126)) & ($true != (X114 @ X128 @ X127 @ (comp @ X129 @ X126)))) | ? [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (($true != (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118)) & ($true = (X114 @ X119 @ X116 @ (comp @ X117 @ X118)))) | ? [X115 : term] : ((X114 @ id @ X115 @ id) != (X112 @ X115)) | ? [X121 : subst > term > term] : (! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124)) & ! [X122 : term] : (($true != (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id))) & ($true != (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id)))) | ? [X111 : term] : ((sub @ X111 @ id) != X111)) <=> (hoasinduction_lem3v2_lthm = $true)) & (axassoc = $true) & ((hoasinduction_lem2 = $true) <=> ! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (($true != (X432 @ id @ X434 @ id)) | ? [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true != (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) & ($true = (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ? [X443 : term,X444 : term] : (($true = (X432 @ id @ X443 @ id)) & ($true != (X432 @ id @ (ap @ (sub @ X444 @ id) @ X443) @ id)) & ($true = (X432 @ id @ X444 @ id))) | ((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ? [X439 : subst,X440 : subst,X441 : subst,X442 : term] : (($true = (X432 @ (comp @ X440 @ X441) @ (sub @ X442 @ X441) @ X439)) & ($true != (X432 @ X440 @ X442 @ (comp @ X441 @ X439)))) | ($true != (X432 @ id @ X433 @ id)))) & ((axshiftcons = $true) <=> ! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415)) & (induction2_gthm = $true) & (hoaslamnotvar_lthm = $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & (! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (? [X92 : term] : (((X75 @ (sub @ X77 @ (push @ X92 @ id))) != $true) & ($true = (X75 @ X92))) | ($true = (X75 @ (lam @ X77))) | ? [X82 : subst > term > term] : (($true != (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) & ! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85)) & ! [X83 : term] : (($true != (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id)))) | ? [X87 : term] : ((X75 @ X87) != (X76 @ id @ X87 @ id)) | ? [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (($true = (X76 @ X91 @ X90 @ (comp @ X89 @ X88))) & ($true != (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88))) | ? [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true != (X76 @ X79 @ X78 @ (comp @ X81 @ X80))) & ($true = (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80)))) <=> (hoasinduction_lem3v2 = $true)) & (pushprop_lem1v2_gthm = $true) & (axclos = $true)),
% 6.77/2.22    inference(flattening,[status(thm)],[f13])).
% 6.77/2.22  thf(f13,plain,(
% 6.77/2.22    (hoasinduction_lem1v2_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & (! [X270 : subst > term > subst > $o] : ? [X271 : term > $o] : ! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272)) <=> (hoasinduction_lem0_lthm = $true)) & ((((! [X404 : term,X405 : subst > term > term,X406 : subst,X407 : subst > term > term] : (((X407 @ X406 @ X404) = (X405 @ X406 @ X404)) | ((lam @ (X405 @ sh @ one)) != (lam @ (X407 @ sh @ one))) | ? [X408 : subst,X409 : term,X410 : subst] : ((X405 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408)) != (sub @ (X405 @ X410 @ X409) @ X408)) | ? [X411 : term,X412 : subst,X413 : subst] : ((sub @ (X407 @ X412 @ X411) @ X413) != (X407 @ (comp @ X412 @ X413) @ (sub @ X411 @ X413)))) | ? [X402 : term,X403 : term] : (((lam @ X403) = (lam @ X402)) & (X402 != X403))) | ? [X400 : term,X401 : subst] : ((comp @ sh @ (push @ X400 @ X401)) != X401)) | ? [X398 : term,X399 : subst] : ((sub @ one @ (push @ X398 @ X399)) != X398)) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & (! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (? [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) != (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ? [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) != (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149)))) <=> (hoaslaminj = $true)) & (axabs = $true) & (hoasinduction_lem3_gthm = $true) & (axclos = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction_lem3b = $true) <=> ! [X130 : term] : ? [X131 : subst > term > term] : ((X131 @ sh @ one) = (sub @ X130 @ (push @ one @ sh)))) & (((((! [X486 : term,X487 : term > $o,X488 : subst] : (($true = (X487 @ (sub @ X486 @ X488))) | ? [X489 : term,X490 : term] : (($true = (X487 @ X489)) & ($true = (X487 @ X490)) & ($true != (X487 @ (ap @ X490 @ X489)))) | ? [X491 : term] : (($true = (var @ X491)) & ($true != (X487 @ (sub @ X491 @ X488)))) | ? [X492 : term] : (! [X493 : term] : (($true != (X487 @ X493)) | ($true = (X487 @ (sub @ X492 @ (push @ X493 @ id))))) & ($true != (X487 @ (lam @ X492))))) | ? [X480 : term,X481 : term > $o] : (! [X485 : term] : (($true = (X481 @ X485)) | ($true != (var @ X485))) & ! [X482 : term] : (($true = (X481 @ (lam @ X482))) | ($true != (X481 @ X482))) & ($true != (X481 @ X480)) & ! [X483 : term,X484 : term] : (($true != (X481 @ X484)) | ($true != (X481 @ X483)) | ($true = (X481 @ (ap @ X484 @ X483)))))) | ? [X479 : subst] : ((comp @ X479 @ id) != X479)) | ? [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) != X478)) | ? [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) != X475)) <=> (induction2lem_lthm = $true)) & (hoasapinj1_gthm = $true) & (axassoc = $true) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) != (d2term @ X460)) | (X459 = X460)) & ((substmonoid_lthm = $true) <=> (((! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74)) | ? [X72 : subst] : ((comp @ X72 @ id) != X72)) | ? [X71 : subst] : ((comp @ id @ X71) != X71))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1_lthm = $true) & (! [X353 : term > $o,X354 : subst > term > subst > $o,X355 : term,X356 : term] : (($true = (X353 @ (ap @ X356 @ X355))) | ? [X367 : term] : ((X353 @ X367) != (X354 @ id @ X367 @ id)) | ($true != (X353 @ X355)) | ? [X361 : term,X362 : term] : (($true = (X354 @ id @ X362 @ id)) & ($true != (X354 @ id @ (ap @ (sub @ X361 @ id) @ X362) @ id)) & ($true = (X354 @ id @ X361 @ id))) | ? [X357 : term,X358 : subst,X359 : subst,X360 : subst] : (($true != (X354 @ (comp @ X358 @ X360) @ (sub @ X357 @ X360) @ X359)) & ($true = (X354 @ X358 @ X357 @ (comp @ X360 @ X359)))) | ? [X363 : term,X364 : subst,X365 : subst,X366 : subst] : (($true != (X354 @ X364 @ X363 @ (comp @ X365 @ X366))) & ((X354 @ (comp @ X364 @ X365) @ (sub @ X363 @ X365) @ X366) = $true)) | ($true != (X353 @ X356))) <=> (hoasinduction_lem2v2 = $true)) & (((((! [X215 : term,X216 : subst > term > subst > $o] : (($true = (X216 @ id @ X215 @ id)) | ? [X231 : term,X232 : term] : (($true = (X216 @ id @ X231 @ id)) & ((X216 @ id @ X232 @ id) = $true) & ($true != (X216 @ id @ (ap @ (sub @ X231 @ id) @ X232) @ id))) | ? [X226 : subst,X227 : term,X228 : subst,X229 : subst] : (($true != (X216 @ X229 @ X227 @ (comp @ X226 @ X228))) & ($true = (X216 @ (comp @ X229 @ X226) @ (sub @ X227 @ X226) @ X228))) | ? [X221 : subst > term > term] : (($true != (X216 @ id @ (lam @ (X221 @ sh @ one)) @ id)) & ! [X222 : subst,X223 : term,X224 : subst] : ((X221 @ (comp @ X222 @ X224) @ (sub @ X223 @ X224)) = (sub @ (X221 @ X222 @ X223) @ X224)) & ! [X225 : term] : (($true = (X216 @ id @ (X221 @ id @ X225) @ id)) | ($true != (X216 @ id @ X225 @ id)))) | ? [X230 : term] : (($true != (X216 @ id @ X230 @ id)) & ($true = (var @ (sub @ X230 @ id)))) | ? [X217 : term,X218 : subst,X219 : subst,X220 : subst] : (($true != (X216 @ (comp @ X219 @ X218) @ (sub @ X217 @ X218) @ X220)) & ($true = (X216 @ X219 @ X217 @ (comp @ X218 @ X220))))) | ? [X205 : term > $o,X206 : term,X207 : subst > term > subst > $o] : (! [X213 : term] : (((X205 @ (sub @ X206 @ (push @ X213 @ id))) = $true) | ($true != (X205 @ X213))) & ! [X214 : term] : ((X205 @ X214) = (X207 @ id @ X214 @ id)) & ! [X208 : subst > term > term] : (($true = (X207 @ id @ (lam @ (X208 @ sh @ one)) @ id)) | ? [X209 : subst,X210 : subst,X211 : term] : ((X208 @ (comp @ X209 @ X210) @ (sub @ X211 @ X210)) != (sub @ (X208 @ X209 @ X211) @ X210)) | ? [X212 : term] : (($true = (X207 @ id @ X212 @ id)) & ((X207 @ id @ (X208 @ id @ X212) @ id) != $true))) & ($true != (X205 @ (lam @ X206))))) | ? [X204 : term] : ((sub @ X204 @ id) != X204)) | ? [X197 : term > $o,X198 : term] : (! [X199 : term] : (($true = (X197 @ X199)) | ($true != (var @ X199))) & ($true != (X197 @ X198)) & ! [X202 : term] : (($true = (X197 @ (lam @ X202))) | ? [X203 : term] : (($true != (X197 @ (sub @ X202 @ (push @ X203 @ id)))) & ((X197 @ X203) = $true))) & ! [X200 : term,X201 : term] : (($true = (X197 @ (ap @ X201 @ X200))) | ($true != (X197 @ X200)) | ($true != (X197 @ X201))))) | ? [X194 : subst > term > subst > $o] : ! [X195 : term > $o] : ? [X196 : term] : ((X194 @ id @ X196 @ id) != (X195 @ X196))) <=> (hoasinduction_lthm_3 = $true)) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & (! [X57 : term > $o,X58 : term] : (? [X60 : term] : (($true = (X57 @ X60)) & ($true != (X57 @ (lam @ X60)))) | ? [X61 : term,X62 : term] : (($true = (X57 @ X62)) & ($true != (X57 @ (ap @ X62 @ X61))) & ($true = (X57 @ X61))) | ? [X59 : term] : (($true = (var @ X59)) & ($true != (X57 @ X59))) | ($true = (X57 @ X58))) <=> (induction = $true)) & (hoaslamnotvar = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X449 : term,X450 : subst > term > subst > $o,X451 : term > $o] : (($true = (X451 @ (lam @ X449))) | ? [X453 : subst > term > term] : (! [X454 : term] : (($true = (X450 @ id @ (X453 @ id @ X454) @ id)) | ($true != (X450 @ id @ X454 @ id))) & ($true != (X450 @ id @ (lam @ (X453 @ sh @ one)) @ id)) & ! [X455 : subst,X456 : term,X457 : subst] : ((sub @ (X453 @ X455 @ X456) @ X457) = (X453 @ (comp @ X455 @ X457) @ (sub @ X456 @ X457)))) | ? [X452 : term] : ((X450 @ id @ X452 @ id) != (X451 @ X452)) | ? [X458 : term] : (($true != (X451 @ (sub @ X449 @ (push @ X458 @ id)))) & ($true = (X451 @ X458))))) & ((axshiftcons = $true) <=> ! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415)) & ((axscons = $true) <=> ! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & (((! [X258 : subst > term > subst > $o,X259 : term] : (? [X260 : term] : (($true != (X258 @ id @ (sub @ X259 @ (push @ X260 @ id)) @ id)) & ($true = (X258 @ id @ X260 @ id))) | ? [X261 : subst > term > term] : (($true != (X258 @ id @ (lam @ (X261 @ sh @ one)) @ id)) & ! [X263 : term,X264 : subst,X265 : subst] : ((sub @ (X261 @ X265 @ X263) @ X264) = (X261 @ (comp @ X265 @ X264) @ (sub @ X263 @ X264))) & ! [X262 : term] : (((X258 @ id @ X262 @ id) != $true) | ($true = (X258 @ id @ (X261 @ id @ X262) @ id)))) | ($true = (X258 @ id @ (lam @ X259) @ id))) | ? [X250 : term,X251 : subst > term > subst > $o] : (! [X257 : term] : (($true = (X251 @ id @ (sub @ X250 @ (push @ X257 @ id)) @ id)) | ($true != (X251 @ id @ X257 @ id))) & ($true != (X251 @ id @ (lam @ (sub @ X250 @ (push @ one @ sh))) @ id)) & ! [X252 : subst > term > term] : (? [X256 : term] : (($true != (X251 @ id @ (X252 @ id @ X256) @ id)) & ((X251 @ id @ X256 @ id) = $true)) | ($true = (X251 @ id @ (lam @ (X252 @ sh @ one)) @ id)) | ? [X253 : subst,X254 : term,X255 : subst] : ((X252 @ (comp @ X253 @ X255) @ (sub @ X254 @ X255)) != (sub @ (X252 @ X253 @ X254) @ X255))))) | ? [X249 : term] : ((sub @ X249 @ id) != X249)) <=> (hoasinduction_lem3a_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & ((shinj = $true) <=> ! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267))) & ((d2subst @ d_id) = sh) & ((induction2 = $true) <=> ! [X374 : term > $o,X375 : term] : (? [X379 : term,X380 : term] : (($true != (X374 @ (ap @ X380 @ X379))) & ($true = (X374 @ X379)) & ($true = (X374 @ X380))) | ((X374 @ X375) = $true) | ? [X376 : term] : (! [X377 : term] : (($true != (X374 @ X377)) | ($true = (X374 @ (sub @ X376 @ (push @ X377 @ id))))) & ($true != (X374 @ (lam @ X376)))) | ? [X378 : term] : (($true = (var @ X378)) & ($true != (X374 @ X378))))) & ((hoasinduction_lem3aaa = $true) <=> ! [X511 : term,X512 : subst > term > subst > $o] : (? [X522 : term] : (((X512 @ id @ (sub @ X511 @ (push @ X522 @ id)) @ id) != $true) & ($true = (X512 @ id @ X522 @ id))) | ? [X513 : term,X514 : subst > term > term] : (! [X515 : term] : (($true != (X512 @ id @ X515 @ id)) | ($true = (X512 @ id @ (X514 @ id @ X515) @ id))) & ! [X516 : subst,X517 : term,X518 : subst] : ((X514 @ (comp @ X516 @ X518) @ (sub @ X517 @ X518)) = (sub @ X513 @ (push @ (sub @ X517 @ X518) @ (comp @ X516 @ X518)))) & ($true != (X512 @ id @ (lam @ (X514 @ sh @ one)) @ id)) & ! [X519 : term,X520 : subst,X521 : subst] : ((sub @ (sub @ X513 @ (push @ X519 @ X521)) @ X520) = (sub @ (X514 @ X521 @ X519) @ X520))) | ($true = (X512 @ id @ (lam @ (sub @ X511 @ (push @ one @ sh))) @ id)))) & (((! [X386 : subst > term > subst > $o,X387 : term > $o,X388 : term] : (? [X389 : subst > term > term] : (! [X393 : term] : (($true = (X386 @ id @ (X389 @ id @ X393) @ id)) | ($true != (X386 @ id @ X393 @ id))) & ($true != (X386 @ id @ (lam @ (X389 @ sh @ one)) @ id)) & ! [X390 : subst,X391 : subst,X392 : term] : ((X389 @ (comp @ X391 @ X390) @ (sub @ X392 @ X390)) = (sub @ (X389 @ X391 @ X392) @ X390))) | ? [X394 : term] : (((X387 @ X394) = $true) & ((X387 @ (sub @ X388 @ (push @ X394 @ id))) != $true)) | ? [X395 : term] : ((X387 @ X395) != (X386 @ id @ X395 @ id)) | ($true = (X387 @ (lam @ X388)))) | ? [X385 : term] : ((sub @ X385 @ id) != X385)) | ? [X381 : term] : ! [X382 : subst > term > term] : ? [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) != (X382 @ X383 @ X384))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X2 : term,X3 : subst > term > subst > $o] : (? [X4 : subst > term > term] : (! [X5 : term] : (($true != (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) & ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) != $true) & ! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6))) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ? [X9 : term] : (($true = (X3 @ id @ X9 @ id)) & ($true != (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id))))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem3v2 = $true) & (((! [X190 : term,X191 : term,X192 : term,X193 : term] : (((ap @ (sub @ X192 @ id) @ X191) != (ap @ (sub @ X190 @ id) @ X193)) | (X190 = X192)) | ? [X186 : term,X187 : term,X188 : term,X189 : term] : (((ap @ X187 @ X186) = (ap @ X189 @ X188)) & (X187 != X189))) | ? [X185 : term] : ((sub @ X185 @ id) != X185)) <=> (hoasapinj1_lthm = $true)) & (hoaslamnotap_lthm = $true) & (induction2lem_gthm = $true) & (hoaslaminj_gthm = $true) & (pushprop_lem0_gthm = $true) & (! [X40 : term] : ? [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) = (X41 @ sh @ one)) <=> (hoasinduction_lem3b_lthm = $true)) & (pushprop_lthm_orig = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) <=> (axvarcons = $true)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & (hoasinduction_lem1_gthm = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X445 : term] : ? [X446 : subst > term > term] : ! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448)))) & ((pushprop_lem0 = $true) <=> ! [X348 : term,X349 : term > $o,X350 : subst] : ? [X351 : term > $o] : ! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352))) & ((induction2lem = $true) <=> ! [X525 : term > $o,X526 : subst,X527 : term] : (? [X528 : term] : (($true != (X525 @ (lam @ X528))) & ! [X529 : term] : (($true = (X525 @ (sub @ X528 @ (push @ X529 @ id)))) | ($true != (X525 @ X529)))) | ($true = (X525 @ (sub @ X527 @ X526))) | ? [X530 : term,X531 : term] : (($true = (X525 @ X531)) & ($true != (X525 @ (ap @ X531 @ X530))) & ($true = (X525 @ X530))) | ? [X532 : term] : (($true != (X525 @ (sub @ X532 @ X526))) & ($true = (var @ X532))))) & (ulamvarsh = $true) & (induction2_gthm = $true) & (axvarshift = $true) & (hoasapnotvar = $true) & ((hoasinduction_lem3_lthm = $true) <=> ((! [X168 : subst > term > subst > $o,X169 : term] : (? [X170 : subst > term > term] : (($true != (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id)) & ! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) & ! [X174 : term] : (($true != (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id)))) | ? [X179 : term] : (($true = (X168 @ id @ X179 @ id)) & ($true != (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id))) | ($true = (X168 @ id @ (lam @ X169) @ id)) | ? [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (($true = (X168 @ X177 @ X176 @ (comp @ X178 @ X175))) & ($true != (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175))) | ? [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) = $true) & ($true != (X168 @ X181 @ X180 @ (comp @ X183 @ X182))))) | ? [X160 : term,X161 : subst > term > subst > $o] : (! [X163 : subst > term > term] : (? [X164 : term] : (((X161 @ id @ X164 @ id) = $true) & ($true != (X161 @ id @ (X163 @ id @ X164) @ id))) | ? [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) != (sub @ (X163 @ X166 @ X165) @ X167)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id))) & ! [X162 : term] : (($true != (X161 @ id @ X162 @ id)) | ($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id))) & ($true != (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id)))) | ? [X159 : term] : ((sub @ X159 @ id) != X159))) & ! [X132 : d_term] : (d_one = X132) & ((hoasinduction_lem3 = $true) <=> ! [X233 : subst > term > subst > $o,X234 : term] : (? [X239 : subst > term > term] : (! [X241 : subst,X242 : subst,X243 : term] : ((X239 @ (comp @ X242 @ X241) @ (sub @ X243 @ X241)) = (sub @ (X239 @ X242 @ X243) @ X241)) & ! [X240 : term] : (($true = (X233 @ id @ (X239 @ id @ X240) @ id)) | ($true != (X233 @ id @ X240 @ id))) & ($true != (X233 @ id @ (lam @ (X239 @ sh @ one)) @ id))) | ? [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (($true = (X233 @ (comp @ X248 @ X247) @ (sub @ X245 @ X247) @ X246)) & ($true != (X233 @ X248 @ X245 @ (comp @ X247 @ X246)))) | ? [X244 : term] : (($true = (X233 @ id @ X244 @ id)) & ($true != (X233 @ id @ (sub @ X234 @ (push @ X244 @ id)) @ id))) | ? [X235 : subst,X236 : subst,X237 : subst,X238 : term] : (($true = (X233 @ X236 @ X238 @ (comp @ X235 @ X237))) & ($true != (X233 @ (comp @ X236 @ X235) @ (sub @ X238 @ X235) @ X237))) | ($true = (X233 @ id @ (lam @ X234) @ id)))) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (hoasinduction_lem2_lthm = $true) & ((! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (($true = (X112 @ (lam @ X113))) | ? [X120 : term] : (($true != (X112 @ (sub @ X113 @ (push @ X120 @ id)))) & ($true = (X112 @ X120))) | ? [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (($true = (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126)) & ($true != (X114 @ X128 @ X127 @ (comp @ X129 @ X126)))) | ? [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (($true != (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118)) & ($true = (X114 @ X119 @ X116 @ (comp @ X117 @ X118)))) | ? [X115 : term] : ((X114 @ id @ X115 @ id) != (X112 @ X115)) | ? [X121 : subst > term > term] : (! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124)) & ! [X122 : term] : (($true != (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id))) & ($true != (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id)))) | ? [X111 : term] : ((sub @ X111 @ id) != X111)) <=> (hoasinduction_lem3v2_lthm = $true)) & (termmset_gthm = $true) & ((pushprop_lem1_lthm = $true) <=> ((! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501))) | ? [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) != X496)) | ? [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) != X495))) & (! [X48 : term] : ? [X49 : subst > term > term] : ! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((d2subst @ d_id) = id) & ((hoasinduction_no_psi_cond = $true) <=> ! [X466 : subst > term > subst > $o,X467 : term] : (? [X473 : term,X474 : term] : (($true = (X466 @ id @ X473 @ id)) & ($true != (X466 @ id @ (ap @ (sub @ X474 @ id) @ X473) @ id)) & ($true = (X466 @ id @ X474 @ id))) | ? [X468 : subst > term > term] : (($true != (X466 @ id @ (lam @ (X468 @ sh @ one)) @ id)) & ! [X469 : term] : (($true = (X466 @ id @ (X468 @ id @ X469) @ id)) | ($true != (X466 @ id @ X469 @ id))) & ! [X470 : subst,X471 : subst,X472 : term] : ((sub @ (X468 @ X471 @ X472) @ X470) = (X468 @ (comp @ X471 @ X470) @ (sub @ X472 @ X470)))) | ($true = (X466 @ id @ X467 @ id)))) & (hoaslamnotvar_gthm = $true) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) <=> (hoasapinj2 = $true)) & (! [X368 : subst > term > term,X369 : term,X370 : term] : (((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))) | ? [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) != (sub @ (X368 @ X373 @ X371) @ X372))) <=> (hoaslamnotap = $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & (! [X461 : term] : ((sub @ X461 @ id) = X461) <=> (axvarid = $true)) & (hoaslamnotvar_lthm = $true) & ((induction2_lthm = $true) <=> ((! [X337 : term > $o,X338 : term] : (? [X342 : term] : (($true != (X337 @ (lam @ X342))) & ! [X343 : term] : (($true = (X337 @ (sub @ X342 @ (push @ X343 @ id)))) | ($true != (X337 @ X343)))) | ? [X339 : term,X340 : term] : (($true = (X337 @ X340)) & ($true != (X337 @ (ap @ X339 @ X340))) & ($true = (X337 @ X339))) | ($true = (X337 @ X338)) | ? [X341 : term] : (($true != (X337 @ X341)) & ($true = (var @ X341)))) | ? [X329 : term,X330 : subst,X331 : term > $o] : (! [X332 : term,X333 : term] : (($true = (X331 @ (ap @ X332 @ X333))) | ($true != (X331 @ X332)) | ($true != (X331 @ X333))) & ! [X334 : term] : (($true != (var @ X334)) | ($true = (X331 @ (sub @ X334 @ X330)))) & ((X331 @ (sub @ X329 @ X330)) != $true) & ! [X335 : term] : (? [X336 : term] : (($true = (X331 @ X336)) & ($true != (X331 @ (sub @ X335 @ (push @ X336 @ id))))) | ($true = (X331 @ (lam @ X335)))))) | ? [X328 : term] : ((sub @ X328 @ id) != X328))) & (hoasapnotvar_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (! [X535 : subst,X536 : term > $o,X537 : term] : ? [X538 : term > $o] : ! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))) <=> (pushprop_lem0_lthm = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ? [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) != (X55 @ X56))) <=> (pushprop_lem1v2 = $true)) & (pushprop_lem2v2 = $true) & ((apinj2 = $true) <=> ! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345)))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (pushprop_lem1_gthm = $true) & (((((! [X31 : subst > term > subst > $o,X32 : term] : (? [X35 : subst > term > term] : (($true != (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) & ! [X36 : term] : (($true != (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id))) & ! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))) | ($true = (X31 @ id @ X32 @ id)) | ? [X33 : term,X34 : term] : (($true = (X31 @ id @ X34 @ id)) & ($true = (X31 @ id @ X33 @ id)) & ($true != (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id)))) | ? [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (($true != (X22 @ (lam @ X23))) & ! [X26 : subst > term > term] : (? [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) != (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ? [X30 : term] : (((X21 @ id @ X30 @ id) = $true) & ($true != (X21 @ id @ (X26 @ id @ X30) @ id)))) & ! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) & ! [X25 : term] : (($true != (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id))))))) | ? [X20 : term] : ((sub @ X20 @ id) != X20)) | ? [X13 : term,X14 : term > $o] : (! [X18 : term] : (? [X19 : term] : (($true != (X14 @ (sub @ X18 @ (push @ X19 @ id)))) & ($true = (X14 @ X19))) | ($true = (X14 @ (lam @ X18)))) & ! [X17 : term] : (($true = (X14 @ X17)) | ($true != (var @ X17))) & ! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ($true != (X14 @ X16)) | ($true != (X14 @ X15))) & ($true != (X14 @ X13)))) | ? [X10 : subst > term > subst > $o] : ! [X11 : term > $o] : ? [X12 : term] : ((X11 @ X12) != (X10 @ id @ X12 @ id))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ((hoasinduction_lem2 = $true) <=> ! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (($true != (X432 @ id @ X434 @ id)) | ? [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true != (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) & ($true = (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ? [X443 : term,X444 : term] : (($true = (X432 @ id @ X443 @ id)) & ($true != (X432 @ id @ (ap @ (sub @ X444 @ id) @ X443) @ id)) & ($true = (X432 @ id @ X444 @ id))) | ((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ? [X439 : subst,X440 : subst,X441 : subst,X442 : term] : (($true = (X432 @ (comp @ X440 @ X441) @ (sub @ X442 @ X441) @ X439)) & ($true != (X432 @ X440 @ X442 @ (comp @ X441 @ X439)))) | ($true != (X432 @ id @ X433 @ id)))) & (apnotvar = $true) & ((hoasapinj2_lthm = $true) <=> (! [X507 : term,X508 : term,X509 : term,X510 : term] : ((X508 = X509) | ((ap @ (sub @ X507 @ id) @ X508) != (ap @ (sub @ X510 @ id) @ X509))) | ? [X503 : term,X504 : term,X505 : term,X506 : term] : (((ap @ X505 @ X503) = (ap @ X506 @ X504)) & (X503 != X504)))) & (axapp = $true) & ((pushprop_lem1 = $true) <=> ! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & ((((! [X310 : subst > term > subst > $o,X311 : term] : (? [X324 : subst,X325 : term,X326 : subst,X327 : subst] : (($true = (X310 @ X326 @ X325 @ (comp @ X324 @ X327))) & ($true != (X310 @ (comp @ X326 @ X324) @ (sub @ X325 @ X324) @ X327))) | ? [X318 : subst > term > term] : (($true != (X310 @ id @ (lam @ (X318 @ sh @ one)) @ id)) & ! [X319 : term,X320 : subst,X321 : subst] : ((X318 @ (comp @ X321 @ X320) @ (sub @ X319 @ X320)) = (sub @ (X318 @ X321 @ X319) @ X320)) & ! [X322 : term] : (($true = (X310 @ id @ (X318 @ id @ X322) @ id)) | ($true != (X310 @ id @ X322 @ id)))) | ($true = (X310 @ id @ X311 @ id)) | ? [X312 : term,X313 : term] : (($true != (X310 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) & ($true = (X310 @ id @ X313 @ id)) & ($true = (X310 @ id @ X312 @ id))) | ? [X323 : term] : (($true = (var @ (sub @ X323 @ id))) & ($true != (X310 @ id @ X323 @ id))) | ? [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (($true = (X310 @ (comp @ X316 @ X315) @ (sub @ X314 @ X315) @ X317)) & ($true != (X310 @ X316 @ X314 @ (comp @ X315 @ X317))))) | ? [X294 : subst > term > subst > $o,X295 : term] : (! [X306 : term,X307 : subst,X308 : subst,X309 : subst] : (($true = (X294 @ (comp @ X308 @ X309) @ (sub @ X306 @ X309) @ X307)) | ($true != (X294 @ X308 @ X306 @ (comp @ X309 @ X307)))) & ! [X296 : term] : (((X294 @ id @ (sub @ X295 @ (push @ X296 @ id)) @ id) = $true) | ($true != (X294 @ id @ X296 @ id))) & ($true != (X294 @ id @ (lam @ X295) @ id)) & ! [X297 : subst,X298 : term,X299 : subst,X300 : subst] : (($true = (X294 @ X300 @ X298 @ (comp @ X297 @ X299))) | ((X294 @ (comp @ X300 @ X297) @ (sub @ X298 @ X297) @ X299) != $true)) & ! [X301 : subst > term > term] : (? [X303 : term,X304 : subst,X305 : subst] : ((sub @ (X301 @ X305 @ X303) @ X304) != (X301 @ (comp @ X305 @ X304) @ (sub @ X303 @ X304))) | ? [X302 : term] : (($true != (X294 @ id @ (X301 @ id @ X302) @ id)) & ($true = (X294 @ id @ X302 @ id))) | ($true = (X294 @ id @ (lam @ (X301 @ sh @ one)) @ id))))) | ? [X281 : term,X282 : term,X283 : subst > term > subst > $o] : (! [X284 : term,X285 : term] : (((X283 @ id @ X284 @ id) != $true) | ($true = (X283 @ id @ (ap @ (sub @ X285 @ id) @ X284) @ id)) | ($true != (X283 @ id @ X285 @ id))) & ! [X290 : term,X291 : subst,X292 : subst,X293 : subst] : (($true != (X283 @ (comp @ X291 @ X292) @ (sub @ X290 @ X292) @ X293)) | ($true = (X283 @ X291 @ X290 @ (comp @ X292 @ X293)))) & ($true = (X283 @ id @ X282 @ id)) & ($true != (X283 @ id @ (ap @ X282 @ X281) @ id)) & ! [X286 : subst,X287 : subst,X288 : term,X289 : subst] : (($true = (X283 @ (comp @ X286 @ X287) @ (sub @ X288 @ X287) @ X289)) | ($true != (X283 @ X286 @ X288 @ (comp @ X287 @ X289)))) & ($true = (X283 @ id @ X281 @ id)))) | ? [X274 : term > $o,X275 : term] : (($true != (X274 @ X275)) & ! [X278 : term] : (($true = (X274 @ X278)) | ($true != (var @ X278))) & ! [X279 : term,X280 : term] : (($true != (X274 @ X279)) | ($true != (X274 @ X280)) | ($true = (X274 @ (ap @ X280 @ X279)))) & ! [X276 : term] : (? [X277 : term] : (((X274 @ X277) = $true) & ($true != (X274 @ (sub @ X276 @ (push @ X277 @ id))))) | ($true = (X274 @ (lam @ X276)))))) <=> (hoasinduction_lthm = $true)) & (! [X93 : subst > term > subst > $o,X94 : term] : (($true = (X93 @ id @ X94 @ id)) | ? [X110 : term] : (($true != (X93 @ id @ X110 @ id)) & ($true = (var @ (sub @ X110 @ id)))) | ? [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (($true = (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108)) & ($true != (X93 @ X107 @ X109 @ (comp @ X106 @ X108)))) | ? [X100 : term,X101 : term] : (($true = (X93 @ id @ X101 @ id)) & ($true != (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id)) & ($true = (X93 @ id @ X100 @ id))) | ? [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (($true != (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105)) & ($true = (X93 @ X104 @ X102 @ (comp @ X103 @ X105)))) | ? [X95 : subst > term > term] : (! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) & ($true != (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id)) & ! [X96 : term] : (($true != (X93 @ id @ X96 @ id)) | ($true = (X93 @ id @ (X95 @ id @ X96) @ id))))) <=> (hoasinduction = $true)) & ((axidl = $true) <=> ! [X423 : subst] : ((comp @ id @ X423) = X423)) & ! [X273 : d_subst] : (d_id = X273) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasinduction_lem0 = $true) <=> ! [X429 : subst > term > subst > $o] : ? [X430 : term > $o] : ! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431))) & (one = (d2term @ d_one)) & (hoasinduction_gthm = $true) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & (hoasinduction_lem3v2_gthm = $true) & (pushprop = $true) & (! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (? [X92 : term] : (((X75 @ (sub @ X77 @ (push @ X92 @ id))) != $true) & ($true = (X75 @ X92))) | ($true = (X75 @ (lam @ X77))) | ? [X82 : subst > term > term] : (($true != (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) & ! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85)) & ! [X83 : term] : (($true != (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id)))) | ? [X87 : term] : ((X75 @ X87) != (X76 @ id @ X87 @ id)) | ? [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (($true = (X76 @ X91 @ X90 @ (comp @ X89 @ X88))) & ($true != (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88))) | ? [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true != (X76 @ X79 @ X78 @ (comp @ X81 @ X80))) & ($true = (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80)))) <=> (hoasinduction_lem3v2 = $true)) & (! [X184 : term] : ((sub @ X184 @ id) = X184) <=> (termmset = $true)) & (lamnotap != $true) & (hoasinduction_lem3b_gthm = $true) & ((axidr = $true) <=> ! [X269 : subst] : ((comp @ X269 @ id) = X269)) & (lamnotvar = $true) & (! [X137 : term,X138 : subst > term > subst > $o] : (? [X139 : term] : (($true != (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id)) & ($true = (X138 @ id @ X139 @ id))) | ? [X140 : subst > term > term] : (($true != (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) & ! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ($true != (X138 @ id @ X141 @ id))) & ! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & (hoasapinj2_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) != (d2subst @ X45)) | (X44 = X45)) & ((? [X0 : term] : ((sub @ X0 @ id) != X0) | ! [X1 : term] : ((sub @ X1 @ id) = X1)) <=> (termmset_lthm = $true)) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((substmonoid = $true) <=> (! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533))) & ((pushprop_lem1v2_lthm = $true) <=> (? [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) != X416) | ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (? [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) != (X419 @ X422)) | ($true != (X420 @ X418)) | ($true = (X419 @ one))))) & (ulamvarind = $true) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (axmap = $true) & (pushprop_gthm = $true) & ((hoasinduction_lem3a = $true) <=> ! [X63 : term,X64 : subst > term > subst > $o] : (? [X65 : term] : (($true = (X64 @ id @ X65 @ id)) & ($true != (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ? [X66 : subst > term > term] : (! [X67 : term] : (($true != (X64 @ id @ X67 @ id)) | ($true = (X64 @ id @ (X66 @ id @ X67) @ id))) & ($true != (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) & ! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70))) | ($true = (X64 @ id @ (lam @ X63) @ id))))),
% 6.77/2.22    inference(ennf_transformation,[status(thm)],[f10])).
% 6.77/2.22  thf(f10,plain,(
% 6.77/2.22    (hoasinduction_lem1v2_gthm = $true) & ((var @ (d2term @ d_one)) != $true) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & ((hoasinduction_lem0_lthm = $true) <=> ! [X270 : subst > term > subst > $o] : ~! [X271 : term > $o] : ~! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272))) & ((! [X398 : term,X399 : subst] : ((sub @ one @ (push @ X398 @ X399)) = X398) => (! [X400 : term,X401 : subst] : ((comp @ sh @ (push @ X400 @ X401)) = X401) => (! [X402 : term,X403 : term] : (((lam @ X403) != (lam @ X402)) | (X402 = X403)) => ! [X404 : term,X405 : subst > term > term,X406 : subst,X407 : subst > term > term] : (~! [X408 : subst,X409 : term,X410 : subst] : ((X405 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408)) = (sub @ (X405 @ X410 @ X409) @ X408)) | ~! [X411 : term,X412 : subst,X413 : subst] : ((sub @ (X407 @ X412 @ X411) @ X413) = (X407 @ (comp @ X412 @ X413) @ (sub @ X411 @ X413))) | ((X407 @ X406 @ X404) = (X405 @ X406 @ X404)) | ((lam @ (X405 @ sh @ one)) != (lam @ (X407 @ sh @ one))))))) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm = $true) & ((hoaslaminj = $true) <=> ! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ~! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149))) | ~! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))))) & (axabs = $true) & (hoasinduction_lem3_gthm = $true) & (axclos = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X130 : term] : ~! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ((! [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) = X475) => (! [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) = X478) => (! [X479 : subst] : ((comp @ X479 @ id) = X479) => (! [X480 : term,X481 : term > $o] : (~! [X482 : term] : (($true = (X481 @ (lam @ X482))) | ($true != (X481 @ X482))) | ~! [X483 : term,X484 : term] : (($true != (X481 @ X484)) | ($true != (X481 @ X483)) | ($true = (X481 @ (ap @ X484 @ X483)))) | ($true = (X481 @ X480)) | ~! [X485 : term] : (($true = (X481 @ X485)) | ($true != (var @ X485)))) => ! [X486 : term,X487 : term > $o,X488 : subst] : (($true = (X487 @ (sub @ X486 @ X488))) | ~! [X489 : term,X490 : term] : (($true = (X487 @ (ap @ X490 @ X489))) | ($true != (X487 @ X490)) | ($true != (X487 @ X489))) | ~! [X492 : term] : (~! [X493 : term] : (($true != (X487 @ X493)) | ($true = (X487 @ (sub @ X492 @ (push @ X493 @ id))))) | ($true = (X487 @ (lam @ X492)))) | ~! [X491 : term] : (($true != (var @ X491)) | ($true = (X487 @ (sub @ X491 @ X488))))))))) <=> (induction2lem_lthm = $true)) & (hoasapinj1_gthm = $true) & (axassoc = $true) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) = (d2term @ X460)) => (X459 = X460)) & ((substmonoid_lthm = $true) <=> (! [X71 : subst] : ((comp @ id @ X71) = X71) => (! [X72 : subst] : ((comp @ X72 @ id) = X72) => (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74))))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & (hoasinduction_lem1_lthm = $true) & (! [X353 : term > $o,X354 : subst > term > subst > $o,X355 : term,X356 : term] : (~! [X357 : term,X358 : subst,X359 : subst,X360 : subst] : (($true != (X354 @ X358 @ X357 @ (comp @ X360 @ X359))) | ($true = (X354 @ (comp @ X358 @ X360) @ (sub @ X357 @ X360) @ X359))) | ~! [X363 : term,X364 : subst,X365 : subst,X366 : subst] : (((X354 @ (comp @ X364 @ X365) @ (sub @ X363 @ X365) @ X366) != $true) | ($true = (X354 @ X364 @ X363 @ (comp @ X365 @ X366)))) | ($true = (X353 @ (ap @ X356 @ X355))) | ~! [X361 : term,X362 : term] : (($true != (X354 @ id @ X361 @ id)) | ($true != (X354 @ id @ X362 @ id)) | ($true = (X354 @ id @ (ap @ (sub @ X361 @ id) @ X362) @ id))) | ~! [X367 : term] : ((X353 @ X367) = (X354 @ id @ X367 @ id)) | ($true != (X353 @ X356)) | ($true != (X353 @ X355))) <=> (hoasinduction_lem2v2 = $true)) & ((! [X194 : subst > term > subst > $o] : ~! [X195 : term > $o] : ~! [X196 : term] : ((X194 @ id @ X196 @ id) = (X195 @ X196)) => (! [X197 : term > $o,X198 : term] : (~! [X200 : term,X201 : term] : (($true = (X197 @ (ap @ X201 @ X200))) | ($true != (X197 @ X200)) | ($true != (X197 @ X201))) | ($true = (X197 @ X198)) | ~! [X202 : term] : (($true = (X197 @ (lam @ X202))) | ~! [X203 : term] : (((X197 @ X203) != $true) | ($true = (X197 @ (sub @ X202 @ (push @ X203 @ id)))))) | ~! [X199 : term] : (($true = (X197 @ X199)) | ($true != (var @ X199)))) => (! [X204 : term] : ((sub @ X204 @ id) = X204) => (! [X205 : term > $o,X206 : term,X207 : subst > term > subst > $o] : (~! [X208 : subst > term > term] : (($true = (X207 @ id @ (lam @ (X208 @ sh @ one)) @ id)) | ~! [X209 : subst,X210 : subst,X211 : term] : ((X208 @ (comp @ X209 @ X210) @ (sub @ X211 @ X210)) = (sub @ (X208 @ X209 @ X211) @ X210)) | ~! [X212 : term] : (($true != (X207 @ id @ X212 @ id)) | ((X207 @ id @ (X208 @ id @ X212) @ id) = $true))) | ~! [X213 : term] : (((X205 @ (sub @ X206 @ (push @ X213 @ id))) = $true) | ($true != (X205 @ X213))) | ~! [X214 : term] : ((X205 @ X214) = (X207 @ id @ X214 @ id)) | ($true = (X205 @ (lam @ X206)))) => ! [X215 : term,X216 : subst > term > subst > $o] : (~! [X230 : term] : (($true = (X216 @ id @ X230 @ id)) | ($true != (var @ (sub @ X230 @ id)))) | ($true = (X216 @ id @ X215 @ id)) | ~! [X231 : term,X232 : term] : (((X216 @ id @ X232 @ id) != $true) | ($true = (X216 @ id @ (ap @ (sub @ X231 @ id) @ X232) @ id)) | ($true != (X216 @ id @ X231 @ id))) | ~! [X217 : term,X218 : subst,X219 : subst,X220 : subst] : (($true = (X216 @ (comp @ X219 @ X218) @ (sub @ X217 @ X218) @ X220)) | ($true != (X216 @ X219 @ X217 @ (comp @ X218 @ X220)))) | ~! [X221 : subst > term > term] : (~! [X222 : subst,X223 : term,X224 : subst] : ((X221 @ (comp @ X222 @ X224) @ (sub @ X223 @ X224)) = (sub @ (X221 @ X222 @ X223) @ X224)) | ($true = (X216 @ id @ (lam @ (X221 @ sh @ one)) @ id)) | ~! [X225 : term] : (($true = (X216 @ id @ (X221 @ id @ X225) @ id)) | ($true != (X216 @ id @ X225 @ id)))) | ~! [X226 : subst,X227 : term,X228 : subst,X229 : subst] : (($true = (X216 @ X229 @ X227 @ (comp @ X226 @ X228))) | ($true != (X216 @ (comp @ X229 @ X226) @ (sub @ X227 @ X226) @ X228)))))))) <=> (hoasinduction_lthm_3 = $true)) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & ((induction = $true) <=> ! [X57 : term > $o,X58 : term] : (~! [X60 : term] : (($true = (X57 @ (lam @ X60))) | ($true != (X57 @ X60))) | ~! [X61 : term,X62 : term] : (($true != (X57 @ X62)) | ($true = (X57 @ (ap @ X62 @ X61))) | ($true != (X57 @ X61))) | ($true = (X57 @ X58)) | ~! [X59 : term] : (($true = (X57 @ X59)) | ($true != (var @ X59))))) & (hoaslamnotvar = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X449 : term,X450 : subst > term > subst > $o,X451 : term > $o] : (($true = (X451 @ (lam @ X449))) | ~! [X453 : subst > term > term] : (~! [X454 : term] : (($true = (X450 @ id @ (X453 @ id @ X454) @ id)) | ($true != (X450 @ id @ X454 @ id))) | ($true = (X450 @ id @ (lam @ (X453 @ sh @ one)) @ id)) | ~! [X455 : subst,X456 : term,X457 : subst] : ((sub @ (X453 @ X455 @ X456) @ X457) = (X453 @ (comp @ X455 @ X457) @ (sub @ X456 @ X457)))) | ~! [X452 : term] : ((X450 @ id @ X452 @ id) = (X451 @ X452)) | ~! [X458 : term] : (($true != (X451 @ X458)) | ($true = (X451 @ (sub @ X449 @ (push @ X458 @ id))))))) & ((axshiftcons = $true) <=> ! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415)) & ((axscons = $true) <=> ! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2v2_gthm = $true) & ((! [X249 : term] : ((sub @ X249 @ id) = X249) => (! [X250 : term,X251 : subst > term > subst > $o] : (($true = (X251 @ id @ (lam @ (sub @ X250 @ (push @ one @ sh))) @ id)) | ~! [X257 : term] : (($true = (X251 @ id @ (sub @ X250 @ (push @ X257 @ id)) @ id)) | ($true != (X251 @ id @ X257 @ id))) | ~! [X252 : subst > term > term] : (~! [X253 : subst,X254 : term,X255 : subst] : ((X252 @ (comp @ X253 @ X255) @ (sub @ X254 @ X255)) = (sub @ (X252 @ X253 @ X254) @ X255)) | ~! [X256 : term] : (((X251 @ id @ X256 @ id) != $true) | ($true = (X251 @ id @ (X252 @ id @ X256) @ id))) | ($true = (X251 @ id @ (lam @ (X252 @ sh @ one)) @ id)))) => ! [X258 : subst > term > subst > $o,X259 : term] : (~! [X261 : subst > term > term] : (($true = (X258 @ id @ (lam @ (X261 @ sh @ one)) @ id)) | ~! [X263 : term,X264 : subst,X265 : subst] : ((sub @ (X261 @ X265 @ X263) @ X264) = (X261 @ (comp @ X265 @ X264) @ (sub @ X263 @ X264))) | ~! [X262 : term] : (((X258 @ id @ X262 @ id) != $true) | ($true = (X258 @ id @ (X261 @ id @ X262) @ id)))) | ($true = (X258 @ id @ (lam @ X259) @ id)) | ~! [X260 : term] : (($true = (X258 @ id @ (sub @ X259 @ (push @ X260 @ id)) @ id)) | ($true != (X258 @ id @ X260 @ id)))))) <=> (hoasinduction_lem3a_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & ((shinj = $true) <=> ! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267))) & ((d2subst @ d_id) = sh) & (! [X374 : term > $o,X375 : term] : (~! [X379 : term,X380 : term] : (($true != (X374 @ X380)) | ($true != (X374 @ X379)) | ($true = (X374 @ (ap @ X380 @ X379)))) | ((X374 @ X375) = $true) | ~! [X376 : term] : (~! [X377 : term] : (($true != (X374 @ X377)) | ($true = (X374 @ (sub @ X376 @ (push @ X377 @ id))))) | ($true = (X374 @ (lam @ X376)))) | ~! [X378 : term] : (($true = (X374 @ X378)) | ($true != (var @ X378)))) <=> (induction2 = $true)) & (! [X511 : term,X512 : subst > term > subst > $o] : (($true = (X512 @ id @ (lam @ (sub @ X511 @ (push @ one @ sh))) @ id)) | ~! [X522 : term] : (((X512 @ id @ (sub @ X511 @ (push @ X522 @ id)) @ id) = $true) | ($true != (X512 @ id @ X522 @ id))) | ~! [X513 : term,X514 : subst > term > term] : (($true = (X512 @ id @ (lam @ (X514 @ sh @ one)) @ id)) | ~! [X516 : subst,X517 : term,X518 : subst] : ((X514 @ (comp @ X516 @ X518) @ (sub @ X517 @ X518)) = (sub @ X513 @ (push @ (sub @ X517 @ X518) @ (comp @ X516 @ X518)))) | ~! [X515 : term] : (($true != (X512 @ id @ X515 @ id)) | ($true = (X512 @ id @ (X514 @ id @ X515) @ id))) | ~! [X519 : term,X520 : subst,X521 : subst] : ((sub @ (sub @ X513 @ (push @ X519 @ X521)) @ X520) = (sub @ (X514 @ X521 @ X519) @ X520)))) <=> (hoasinduction_lem3aaa = $true)) & ((! [X381 : term] : ~! [X382 : subst > term > term] : ~! [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) = (X382 @ X383 @ X384)) => (! [X385 : term] : ((sub @ X385 @ id) = X385) => ! [X386 : subst > term > subst > $o,X387 : term > $o,X388 : term] : (~! [X389 : subst > term > term] : (($true = (X386 @ id @ (lam @ (X389 @ sh @ one)) @ id)) | ~! [X390 : subst,X391 : subst,X392 : term] : ((X389 @ (comp @ X391 @ X390) @ (sub @ X392 @ X390)) = (sub @ (X389 @ X391 @ X392) @ X390)) | ~! [X393 : term] : (($true = (X386 @ id @ (X389 @ id @ X393) @ id)) | ($true != (X386 @ id @ X393 @ id)))) | ~! [X394 : term] : (((X387 @ (sub @ X388 @ (push @ X394 @ id))) = $true) | ((X387 @ X394) != $true)) | ~! [X395 : term] : ((X387 @ X395) = (X386 @ id @ X395 @ id)) | ($true = (X387 @ (lam @ X388)))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X2 : term,X3 : subst > term > subst > $o] : (~! [X4 : subst > term > term] : (~! [X5 : term] : (($true != (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) | ~! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6)) | ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) = $true)) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ~! [X9 : term] : (($true != (X3 @ id @ X9 @ id)) | ($true = (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id))))) & ((d2term @ d_one) = (lam @ (d2term @ d_one))) & (hoasinduction_lem1v2 = $true) & (pushprop_lem3v2 = $true) & ((! [X185 : term] : ((sub @ X185 @ id) = X185) => (! [X186 : term,X187 : term,X188 : term,X189 : term] : ((X187 = X189) | ((ap @ X187 @ X186) != (ap @ X189 @ X188))) => ! [X190 : term,X191 : term,X192 : term,X193 : term] : (((ap @ (sub @ X192 @ id) @ X191) != (ap @ (sub @ X190 @ id) @ X193)) | (X190 = X192)))) <=> (hoasapinj1_lthm = $true)) & (hoaslamnotap_lthm = $true) & (induction2lem_gthm = $true) & (hoaslaminj_gthm = $true) & (pushprop_lem0_gthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X40 : term] : ~! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one))) & (pushprop_lthm_orig = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) <=> (axvarcons = $true)) & (ulamvar1 != $true) & (substmonoid_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (! [X445 : term] : ~! [X446 : subst > term > term] : ~! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448))) <=> (hoasinduction_lem3v2_f = $true)) & ((pushprop_lem0 = $true) <=> ! [X348 : term,X349 : term > $o,X350 : subst] : ~! [X351 : term > $o] : ~! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352))) & (! [X525 : term > $o,X526 : subst,X527 : term] : (~! [X532 : term] : (($true = (X525 @ (sub @ X532 @ X526))) | ($true != (var @ X532))) | ~! [X530 : term,X531 : term] : (($true = (X525 @ (ap @ X531 @ X530))) | ($true != (X525 @ X531)) | ($true != (X525 @ X530))) | ($true = (X525 @ (sub @ X527 @ X526))) | ~! [X528 : term] : (($true = (X525 @ (lam @ X528))) | ~! [X529 : term] : (($true = (X525 @ (sub @ X528 @ (push @ X529 @ id)))) | ($true != (X525 @ X529))))) <=> (induction2lem = $true)) & (ulamvarsh = $true) & (induction2_gthm = $true) & (axvarshift = $true) & (hoasapnotvar = $true) & ((hoasinduction_lem3_lthm = $true) <=> (! [X159 : term] : ((sub @ X159 @ id) = X159) => (! [X160 : term,X161 : subst > term > subst > $o] : (~! [X163 : subst > term > term] : (~! [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) = (sub @ (X163 @ X166 @ X165) @ X167)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id)) | ~! [X164 : term] : (($true = (X161 @ id @ (X163 @ id @ X164) @ id)) | ((X161 @ id @ X164 @ id) != $true))) | ~! [X162 : term] : (($true != (X161 @ id @ X162 @ id)) | ($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id))) | ($true = (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id))) => ! [X168 : subst > term > subst > $o,X169 : term] : (($true = (X168 @ id @ (lam @ X169) @ id)) | ~! [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) != $true) | ($true = (X168 @ X181 @ X180 @ (comp @ X183 @ X182)))) | ~! [X170 : subst > term > term] : (~! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) | ~! [X174 : term] : (($true != (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id))) | ($true = (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id))) | ~! [X179 : term] : (($true = (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id)) | ($true != (X168 @ id @ X179 @ id))) | ~! [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (($true = (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175)) | ($true != (X168 @ X177 @ X176 @ (comp @ X178 @ X175)))))))) & ! [X132 : d_term] : (d_one = X132) & (! [X233 : subst > term > subst > $o,X234 : term] : (~! [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (($true = (X233 @ X248 @ X245 @ (comp @ X247 @ X246))) | ($true != (X233 @ (comp @ X248 @ X247) @ (sub @ X245 @ X247) @ X246))) | ~! [X239 : subst > term > term] : (($true = (X233 @ id @ (lam @ (X239 @ sh @ one)) @ id)) | ~! [X241 : subst,X242 : subst,X243 : term] : ((X239 @ (comp @ X242 @ X241) @ (sub @ X243 @ X241)) = (sub @ (X239 @ X242 @ X243) @ X241)) | ~! [X240 : term] : (($true = (X233 @ id @ (X239 @ id @ X240) @ id)) | ($true != (X233 @ id @ X240 @ id)))) | ~! [X244 : term] : (($true = (X233 @ id @ (sub @ X234 @ (push @ X244 @ id)) @ id)) | ($true != (X233 @ id @ X244 @ id))) | ($true = (X233 @ id @ (lam @ X234) @ id)) | ~! [X235 : subst,X236 : subst,X237 : subst,X238 : term] : (($true != (X233 @ X236 @ X238 @ (comp @ X235 @ X237))) | ($true = (X233 @ (comp @ X236 @ X235) @ (sub @ X238 @ X235) @ X237)))) <=> (hoasinduction_lem3 = $true)) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (hoasinduction_lem2_lthm = $true) & ((! [X111 : term] : ((sub @ X111 @ id) = X111) => ! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (~! [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (($true = (X114 @ X128 @ X127 @ (comp @ X129 @ X126))) | ($true != (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126))) | ~! [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (($true = (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118)) | ($true != (X114 @ X119 @ X116 @ (comp @ X117 @ X118)))) | ~! [X115 : term] : ((X114 @ id @ X115 @ id) = (X112 @ X115)) | ($true = (X112 @ (lam @ X113))) | ~! [X121 : subst > term > term] : (~! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124)) | ($true = (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id)) | ~! [X122 : term] : (($true != (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id)))) | ~! [X120 : term] : (($true != (X112 @ X120)) | ($true = (X112 @ (sub @ X113 @ (push @ X120 @ id))))))) <=> (hoasinduction_lem3v2_lthm = $true)) & (termmset_gthm = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) = X495) => (! [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) = X496) => ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499)))) | ($true != (X500 @ X501)))))) & (! [X48 : term] : ~! [X49 : subst > term > term] : ~! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true) & ((d2subst @ d_id) = id) & (! [X466 : subst > term > subst > $o,X467 : term] : (($true = (X466 @ id @ X467 @ id)) | ~! [X468 : subst > term > term] : (($true = (X466 @ id @ (lam @ (X468 @ sh @ one)) @ id)) | ~! [X469 : term] : (($true = (X466 @ id @ (X468 @ id @ X469) @ id)) | ($true != (X466 @ id @ X469 @ id))) | ~! [X470 : subst,X471 : subst,X472 : term] : ((sub @ (X468 @ X471 @ X472) @ X470) = (X468 @ (comp @ X471 @ X470) @ (sub @ X472 @ X470)))) | ~! [X473 : term,X474 : term] : (($true != (X466 @ id @ X473 @ id)) | ($true != (X466 @ id @ X474 @ id)) | ($true = (X466 @ id @ (ap @ (sub @ X474 @ id) @ X473) @ id)))) <=> (hoasinduction_no_psi_cond = $true)) & (hoaslamnotvar_gthm = $true) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) <=> (hoasapinj2 = $true)) & ((hoaslamnotap = $true) <=> ! [X368 : subst > term > term,X369 : term,X370 : term] : (~! [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) = (sub @ (X368 @ X373 @ X371) @ X372)) | ((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & (hoasinduction_lem1 = $true) & (! [X461 : term] : ((sub @ X461 @ id) = X461) <=> (axvarid = $true)) & (hoaslamnotvar_lthm = $true) & ((induction2_lthm = $true) <=> (! [X328 : term] : ((sub @ X328 @ id) = X328) => (! [X329 : term,X330 : subst,X331 : term > $o] : (((X331 @ (sub @ X329 @ X330)) = $true) | ~! [X332 : term,X333 : term] : (($true = (X331 @ (ap @ X332 @ X333))) | ($true != (X331 @ X332)) | ($true != (X331 @ X333))) | ~! [X334 : term] : (($true != (var @ X334)) | ($true = (X331 @ (sub @ X334 @ X330)))) | ~! [X335 : term] : (~! [X336 : term] : (($true != (X331 @ X336)) | ($true = (X331 @ (sub @ X335 @ (push @ X336 @ id))))) | ($true = (X331 @ (lam @ X335))))) => ! [X337 : term > $o,X338 : term] : (($true = (X337 @ X338)) | ~! [X341 : term] : (($true = (X337 @ X341)) | ($true != (var @ X341))) | ~! [X339 : term,X340 : term] : (($true != (X337 @ X339)) | ($true = (X337 @ (ap @ X339 @ X340))) | ($true != (X337 @ X340))) | ~! [X342 : term] : (~! [X343 : term] : (($true = (X337 @ (sub @ X342 @ (push @ X343 @ id)))) | ($true != (X337 @ X343))) | ($true = (X337 @ (lam @ X342)))))))) & (hoasapnotvar_gthm = $true) & (pushprop_lem1v2_gthm = $true) & ((pushprop_lem0_lthm = $true) <=> ! [X535 : subst,X536 : term > $o,X537 : term] : ~! [X538 : term > $o] : ~! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535))))) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & ((pushprop_lem1v2 = $true) <=> ! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (($true != (X53 @ X54)) | ($true = (X55 @ one)) | ~! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56)))) & (pushprop_lem2v2 = $true) & ((apinj2 = $true) <=> ! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345)))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (pushprop_lem1_gthm = $true) & ((! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X13 : term,X14 : term > $o] : (~! [X17 : term] : (($true = (X14 @ X17)) | ($true != (var @ X17))) | ~! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ($true != (X14 @ X16)) | ($true != (X14 @ X15))) | ~! [X18 : term] : (($true = (X14 @ (lam @ X18))) | ~! [X19 : term] : (($true = (X14 @ (sub @ X18 @ (push @ X19 @ id)))) | ($true != (X14 @ X19)))) | ($true = (X14 @ X13))) => (! [X20 : term] : ((sub @ X20 @ id) = X20) => (! [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (~! [X25 : term] : (($true != (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id))))) | ~! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) | ($true = (X22 @ (lam @ X23))) | ~! [X26 : subst > term > term] : (($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ~! [X30 : term] : (((X21 @ id @ X30 @ id) != $true) | ($true = (X21 @ id @ (X26 @ id @ X30) @ id))) | ~! [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) = (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))))) => ! [X31 : subst > term > subst > $o,X32 : term] : (~! [X33 : term,X34 : term] : (($true = (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id)) | ($true != (X31 @ id @ X33 @ id)) | ($true != (X31 @ id @ X34 @ id))) | ~! [X35 : subst > term > term] : (($true = (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) | ~! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37)) | ~! [X36 : term] : (($true != (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id)))) | ($true = (X31 @ id @ X32 @ id))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (~! [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true = (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) | ($true != (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ($true != (X432 @ id @ X433 @ id)) | ~! [X439 : subst,X440 : subst,X441 : subst,X442 : term] : (($true != (X432 @ (comp @ X440 @ X441) @ (sub @ X442 @ X441) @ X439)) | ($true = (X432 @ X440 @ X442 @ (comp @ X441 @ X439)))) | ($true != (X432 @ id @ X434 @ id)) | ((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ~! [X443 : term,X444 : term] : (($true != (X432 @ id @ X443 @ id)) | ($true != (X432 @ id @ X444 @ id)) | ($true = (X432 @ id @ (ap @ (sub @ X444 @ id) @ X443) @ id)))) <=> (hoasinduction_lem2 = $true)) & (apnotvar = $true) & ((hoasapinj2_lthm = $true) <=> (! [X503 : term,X504 : term,X505 : term,X506 : term] : (((ap @ X505 @ X503) != (ap @ X506 @ X504)) | (X503 = X504)) => ! [X507 : term,X508 : term,X509 : term,X510 : term] : ((X508 = X509) | ((ap @ (sub @ X507 @ id) @ X508) != (ap @ (sub @ X510 @ id) @ X509))))) & (axapp = $true) & ((pushprop_lem1 = $true) <=> ! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true != (X428 @ X427)) | ($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424)))))) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & ((! [X274 : term > $o,X275 : term] : (($true = (X274 @ X275)) | ~! [X278 : term] : (($true = (X274 @ X278)) | ($true != (var @ X278))) | ~! [X279 : term,X280 : term] : (($true != (X274 @ X279)) | ($true != (X274 @ X280)) | ($true = (X274 @ (ap @ X280 @ X279)))) | ~! [X276 : term] : (($true = (X274 @ (lam @ X276))) | ~! [X277 : term] : (((X274 @ X277) != $true) | ($true = (X274 @ (sub @ X276 @ (push @ X277 @ id))))))) => (! [X281 : term,X282 : term,X283 : subst > term > subst > $o] : (~! [X284 : term,X285 : term] : (((X283 @ id @ X284 @ id) != $true) | ($true = (X283 @ id @ (ap @ (sub @ X285 @ id) @ X284) @ id)) | ($true != (X283 @ id @ X285 @ id))) | ~! [X290 : term,X291 : subst,X292 : subst,X293 : subst] : (($true != (X283 @ (comp @ X291 @ X292) @ (sub @ X290 @ X292) @ X293)) | ($true = (X283 @ X291 @ X290 @ (comp @ X292 @ X293)))) | ($true != (X283 @ id @ X281 @ id)) | ($true = (X283 @ id @ (ap @ X282 @ X281) @ id)) | ~! [X286 : subst,X287 : subst,X288 : term,X289 : subst] : (($true = (X283 @ (comp @ X286 @ X287) @ (sub @ X288 @ X287) @ X289)) | ($true != (X283 @ X286 @ X288 @ (comp @ X287 @ X289)))) | ($true != (X283 @ id @ X282 @ id))) => (! [X294 : subst > term > subst > $o,X295 : term] : (~! [X297 : subst,X298 : term,X299 : subst,X300 : subst] : (($true = (X294 @ X300 @ X298 @ (comp @ X297 @ X299))) | ((X294 @ (comp @ X300 @ X297) @ (sub @ X298 @ X297) @ X299) != $true)) | ~! [X296 : term] : (((X294 @ id @ (sub @ X295 @ (push @ X296 @ id)) @ id) = $true) | ($true != (X294 @ id @ X296 @ id))) | ~! [X306 : term,X307 : subst,X308 : subst,X309 : subst] : (($true = (X294 @ (comp @ X308 @ X309) @ (sub @ X306 @ X309) @ X307)) | ($true != (X294 @ X308 @ X306 @ (comp @ X309 @ X307)))) | ($true = (X294 @ id @ (lam @ X295) @ id)) | ~! [X301 : subst > term > term] : (~! [X303 : term,X304 : subst,X305 : subst] : ((sub @ (X301 @ X305 @ X303) @ X304) = (X301 @ (comp @ X305 @ X304) @ (sub @ X303 @ X304))) | ~! [X302 : term] : (($true != (X294 @ id @ X302 @ id)) | ($true = (X294 @ id @ (X301 @ id @ X302) @ id))) | ($true = (X294 @ id @ (lam @ (X301 @ sh @ one)) @ id)))) => ! [X310 : subst > term > subst > $o,X311 : term] : (~! [X324 : subst,X325 : term,X326 : subst,X327 : subst] : (($true != (X310 @ X326 @ X325 @ (comp @ X324 @ X327))) | ($true = (X310 @ (comp @ X326 @ X324) @ (sub @ X325 @ X324) @ X327))) | ($true = (X310 @ id @ X311 @ id)) | ~! [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (($true = (X310 @ X316 @ X314 @ (comp @ X315 @ X317))) | ($true != (X310 @ (comp @ X316 @ X315) @ (sub @ X314 @ X315) @ X317))) | ~! [X312 : term,X313 : term] : (($true = (X310 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) | ($true != (X310 @ id @ X313 @ id)) | ($true != (X310 @ id @ X312 @ id))) | ~! [X318 : subst > term > term] : (~! [X319 : term,X320 : subst,X321 : subst] : ((X318 @ (comp @ X321 @ X320) @ (sub @ X319 @ X320)) = (sub @ (X318 @ X321 @ X319) @ X320)) | ~! [X322 : term] : (($true = (X310 @ id @ (X318 @ id @ X322) @ id)) | ($true != (X310 @ id @ X322 @ id))) | ($true = (X310 @ id @ (lam @ (X318 @ sh @ one)) @ id))) | ~! [X323 : term] : (($true = (X310 @ id @ X323 @ id)) | ($true != (var @ (sub @ X323 @ id)))))))) <=> (hoasinduction_lthm = $true)) & (! [X93 : subst > term > subst > $o,X94 : term] : (~! [X95 : subst > term > term] : (($true = (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id)) | ~! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) | ~! [X96 : term] : (($true != (X93 @ id @ X96 @ id)) | ($true = (X93 @ id @ (X95 @ id @ X96) @ id)))) | ~! [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (($true != (X93 @ X104 @ X102 @ (comp @ X103 @ X105))) | ($true = (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105))) | ~! [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (($true = (X93 @ X107 @ X109 @ (comp @ X106 @ X108))) | ($true != (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108))) | ~! [X100 : term,X101 : term] : (($true = (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id)) | ($true != (X93 @ id @ X100 @ id)) | ($true != (X93 @ id @ X101 @ id))) | ~! [X110 : term] : (($true = (X93 @ id @ X110 @ id)) | ($true != (var @ (sub @ X110 @ id)))) | ($true = (X93 @ id @ X94 @ id))) <=> (hoasinduction = $true)) & ((axidl = $true) <=> ! [X423 : subst] : ((comp @ id @ X423) = X423)) & ! [X273 : d_subst] : (d_id = X273) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (! [X429 : subst > term > subst > $o] : ~! [X430 : term > $o] : ~! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431)) <=> (hoasinduction_lem0 = $true)) & (one = (d2term @ d_one)) & (hoasinduction_gthm = $true) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & (hoasinduction_lem3v2_gthm = $true) & (pushprop = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (~! [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (($true = (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88)) | ($true != (X76 @ X91 @ X90 @ (comp @ X89 @ X88)))) | ~! [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true != (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80)) | ($true = (X76 @ X79 @ X78 @ (comp @ X81 @ X80)))) | ($true = (X75 @ (lam @ X77))) | ~! [X87 : term] : ((X75 @ X87) = (X76 @ id @ X87 @ id)) | ~! [X92 : term] : (($true != (X75 @ X92)) | ((X75 @ (sub @ X77 @ (push @ X92 @ id))) = $true)) | ~! [X82 : subst > term > term] : (~! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85)) | ($true = (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) | ~! [X83 : term] : (($true != (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id)))))) & (! [X184 : term] : ((sub @ X184 @ id) = X184) <=> (termmset = $true)) & (lamnotap != $true) & (hoasinduction_lem3b_gthm = $true) & ((axidr = $true) <=> ! [X269 : subst] : ((comp @ X269 @ id) = X269)) & (lamnotvar = $true) & (! [X137 : term,X138 : subst > term > subst > $o] : (~! [X139 : term] : (($true = (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id)) | ($true != (X138 @ id @ X139 @ id))) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true) | ~! [X140 : subst > term > term] : (($true = (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) | ~! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ($true != (X138 @ id @ X141 @ id))) | ~! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143))))) <=> (hoasinduction_lem3aa = $true)) & (hoasapinj2_gthm = $true) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem2_gthm = $true) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) = (d2subst @ X45)) => (X44 = X45)) & ((termmset_lthm = $true) <=> (! [X0 : term] : ((sub @ X0 @ id) = X0) => ! [X1 : term] : ((sub @ X1 @ id) = X1))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & ((substmonoid = $true) <=> (! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533))) & ((! [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) = X416) => ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (($true = (X419 @ one)) | ~! [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) = (X419 @ X422)) | ($true != (X420 @ X418)))) <=> (pushprop_lem1v2_lthm = $true)) & (ulamvarind = $true) & (hoasinduction_lem3a_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (axmap = $true) & (pushprop_gthm = $true) & (! [X63 : term,X64 : subst > term > subst > $o] : (~! [X66 : subst > term > term] : (~! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70)) | ($true = (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) | ~! [X67 : term] : (($true != (X64 @ id @ X67 @ id)) | ($true = (X64 @ id @ (X66 @ id @ X67) @ id)))) | ~! [X65 : term] : (($true != (X64 @ id @ X65 @ id)) | ($true = (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ($true = (X64 @ id @ (lam @ X63) @ id))) <=> (hoasinduction_lem3a = $true))),
% 6.77/2.22    inference(flattening,[status(thm)],[f9])).
% 6.77/2.22  thf(f9,plain,(
% 6.77/2.22    ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ~(lamnotap = $true) & (hoasapnotvar_gthm = $true) & (hoaslaminj_gthm = $true) & ((termmset_lthm = $true) <=> (! [X0 : term] : ((sub @ X0 @ id) = X0) => ! [X1 : term] : ((sub @ X1 @ id) = X1))) & (ulamvarsh = $true) & (hoasinduction_lem1v2 = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (apnotvar = $true) & (! [X2 : term,X3 : subst > term > subst > $o] : (~! [X4 : subst > term > term] : (~! [X5 : term] : (~($true = (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) | ~! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6)) | ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) = $true)) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ~! [X9 : term] : (~($true = (X3 @ id @ X9 @ id)) | ($true = (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X13 : term,X14 : term > $o] : (~! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ~($true = (X14 @ X15)) | ~($true = (X14 @ X16))) | ~! [X17 : term] : (~($true = (var @ X17)) | ($true = (X14 @ X17))) | ($true = (X14 @ X13)) | ~! [X18 : term] : (~! [X19 : term] : (~($true = (X14 @ X19)) | ($true = (X14 @ (sub @ X18 @ (push @ X19 @ id))))) | ($true = (X14 @ (lam @ X18))))) => (! [X20 : term] : ((sub @ X20 @ id) = X20) => (! [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (($true = (X22 @ (lam @ X23))) | ~! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) | ~! [X25 : term] : (~($true = (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id))))) | ~! [X26 : subst > term > term] : (($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ~! [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) = (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ~! [X30 : term] : (~((X21 @ id @ X30 @ id) = $true) | ($true = (X21 @ id @ (X26 @ id @ X30) @ id))))) => ! [X31 : subst > term > subst > $o,X32 : term] : (($true = (X31 @ id @ X32 @ id)) | ~! [X33 : term,X34 : term] : (~($true = (X31 @ id @ X33 @ id)) | ($true = (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id)) | ~($true = (X31 @ id @ X34 @ id))) | ~! [X35 : subst > term > term] : (~! [X36 : term] : (~($true = (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id))) | ($true = (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) | ~! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))))))))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X40 : term] : ~! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one))) & (axmap = $true) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_gthm = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) = (d2subst @ X45)) => (X44 = X45)) & (termmset_gthm = $true) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (! [X48 : term] : ~! [X49 : subst > term > term] : ~! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (~($true = (X53 @ X54)) | ($true = (X55 @ one)) | ~! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56)))) & ((induction = $true) <=> ! [X57 : term > $o,X58 : term] : (~! [X59 : term] : (($true = (X57 @ X59)) | ~($true = (var @ X59))) | ~! [X60 : term] : (($true = (X57 @ (lam @ X60))) | ~($true = (X57 @ X60))) | ($true = (X57 @ X58)) | ~! [X61 : term,X62 : term] : (($true = (X57 @ (ap @ X62 @ X61))) | ~($true = (X57 @ X61)) | ~($true = (X57 @ X62))))) & (! [X63 : term,X64 : subst > term > subst > $o] : (~! [X65 : term] : (~($true = (X64 @ id @ X65 @ id)) | ($true = (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ($true = (X64 @ id @ (lam @ X63) @ id)) | ~! [X66 : subst > term > term] : (~! [X67 : term] : (($true = (X64 @ id @ (X66 @ id @ X67) @ id)) | ~($true = (X64 @ id @ X67 @ id))) | ($true = (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) | ~! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70)))) <=> (hoasinduction_lem3a = $true)) & ((substmonoid_lthm = $true) <=> (! [X71 : subst] : ((comp @ id @ X71) = X71) => (! [X72 : subst] : ((comp @ X72 @ id) = X72) => (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (~! [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true = (X76 @ X79 @ X78 @ (comp @ X81 @ X80))) | ~($true = (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80))) | ~! [X82 : subst > term > term] : (~! [X83 : term] : (~($true = (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id))) | ($true = (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) | ~! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85))) | ($true = (X75 @ (lam @ X77))) | ~! [X87 : term] : ((X75 @ X87) = (X76 @ id @ X87 @ id)) | ~! [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (~($true = (X76 @ X91 @ X90 @ (comp @ X89 @ X88))) | ($true = (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88))) | ~! [X92 : term] : (~($true = (X75 @ X92)) | ((X75 @ (sub @ X77 @ (push @ X92 @ id))) = $true)))) & (pushprop_lem2v2 = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction = $true) <=> ! [X93 : subst > term > subst > $o,X94 : term] : (~! [X95 : subst > term > term] : (~! [X96 : term] : (($true = (X93 @ id @ (X95 @ id @ X96) @ id)) | ~($true = (X93 @ id @ X96 @ id))) | ~! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) | ($true = (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id))) | ~! [X100 : term,X101 : term] : (~($true = (X93 @ id @ X101 @ id)) | ~($true = (X93 @ id @ X100 @ id)) | ($true = (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id))) | ~! [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (~($true = (X93 @ X104 @ X102 @ (comp @ X103 @ X105))) | ($true = (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105))) | ($true = (X93 @ id @ X94 @ id)) | ~! [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (~($true = (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108)) | ($true = (X93 @ X107 @ X109 @ (comp @ X106 @ X108)))) | ~! [X110 : term] : (~($true = (var @ (sub @ X110 @ id))) | ($true = (X93 @ id @ X110 @ id))))) & (pushprop_gthm = $true) & (pushprop_lem3v2 = $true) & (induction2_gthm = $true) & ((! [X111 : term] : ((sub @ X111 @ id) = X111) => ! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (~! [X115 : term] : ((X114 @ id @ X115 @ id) = (X112 @ X115)) | ~! [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (~($true = (X114 @ X119 @ X116 @ (comp @ X117 @ X118))) | ($true = (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118))) | ~! [X120 : term] : (($true = (X112 @ (sub @ X113 @ (push @ X120 @ id)))) | ~($true = (X112 @ X120))) | ~! [X121 : subst > term > term] : (($true = (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id)) | ~! [X122 : term] : (~($true = (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id))) | ~! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124))) | ($true = (X112 @ (lam @ X113))) | ~! [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (~($true = (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126)) | ($true = (X114 @ X128 @ X127 @ (comp @ X129 @ X126)))))) <=> (hoasinduction_lem3v2_lthm = $true)) & (hoasapnotvar = $true) & (substmonoid_gthm = $true) & (! [X130 : term] : ~! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ! [X132 : d_term] : (d_one = X132) & (ulamvarind = $true) & (pushprop_lem2v2_lthm = $true) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & (axabs = $true) & (hoasinduction_lem3b_gthm = $true) & ~((var @ (d2term @ d_one)) = $true) & (hoasinduction_lem3v2_gthm = $true) & (! [X137 : term,X138 : subst > term > subst > $o] : (~! [X139 : term] : (~($true = (X138 @ id @ X139 @ id)) | ($true = (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id))) | ~! [X140 : subst > term > term] : (($true = (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) | ~! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ~($true = (X138 @ id @ X141 @ id))) | ~! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & ((hoaslaminj = $true) <=> ! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ~! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149))) | ~! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))))) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem1 = $true) & (hoaslamnotap_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & ((hoasinduction_lem3_lthm = $true) <=> (! [X159 : term] : ((sub @ X159 @ id) = X159) => (! [X160 : term,X161 : subst > term > subst > $o] : (~! [X162 : term] : (($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id)) | ~($true = (X161 @ id @ X162 @ id))) | ~! [X163 : subst > term > term] : (~! [X164 : term] : (($true = (X161 @ id @ (X163 @ id @ X164) @ id)) | ~((X161 @ id @ X164 @ id) = $true)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id)) | ~! [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) = (sub @ (X163 @ X166 @ X165) @ X167))) | ($true = (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id))) => ! [X168 : subst > term > subst > $o,X169 : term] : (~! [X170 : subst > term > term] : (($true = (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id)) | ~! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) | ~! [X174 : term] : (~($true = (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id)))) | ~! [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (~($true = (X168 @ X177 @ X176 @ (comp @ X178 @ X175))) | ($true = (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175))) | ($true = (X168 @ id @ (lam @ X169) @ id)) | ~! [X179 : term] : (~($true = (X168 @ id @ X179 @ id)) | ($true = (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id))) | ~! [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (($true = (X168 @ X181 @ X180 @ (comp @ X183 @ X182))) | ~((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) = $true)))))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X184 : term] : ((sub @ X184 @ id) = X184) <=> (termmset = $true)) & ((! [X185 : term] : ((sub @ X185 @ id) = X185) => (! [X186 : term,X187 : term,X188 : term,X189 : term] : ((X187 = X189) | ((ap @ X187 @ X186) != (ap @ X189 @ X188))) => ! [X190 : term,X191 : term,X192 : term,X193 : term] : (((ap @ (sub @ X192 @ id) @ X191) != (ap @ (sub @ X190 @ id) @ X193)) | (X190 = X192)))) <=> (hoasapinj1_lthm = $true)) & ((hoasinduction_lthm_3 = $true) <=> (! [X194 : subst > term > subst > $o] : ~! [X195 : term > $o] : ~! [X196 : term] : ((X194 @ id @ X196 @ id) = (X195 @ X196)) => (! [X197 : term > $o,X198 : term] : (($true = (X197 @ X198)) | ~! [X199 : term] : (~($true = (var @ X199)) | ($true = (X197 @ X199))) | ~! [X200 : term,X201 : term] : (($true = (X197 @ (ap @ X201 @ X200))) | ~($true = (X197 @ X200)) | ~($true = (X197 @ X201))) | ~! [X202 : term] : (~! [X203 : term] : (~((X197 @ X203) = $true) | ($true = (X197 @ (sub @ X202 @ (push @ X203 @ id))))) | ($true = (X197 @ (lam @ X202))))) => (! [X204 : term] : ((sub @ X204 @ id) = X204) => (! [X205 : term > $o,X206 : term,X207 : subst > term > subst > $o] : (~! [X208 : subst > term > term] : (~! [X209 : subst,X210 : subst,X211 : term] : ((X208 @ (comp @ X209 @ X210) @ (sub @ X211 @ X210)) = (sub @ (X208 @ X209 @ X211) @ X210)) | ($true = (X207 @ id @ (lam @ (X208 @ sh @ one)) @ id)) | ~! [X212 : term] : (~($true = (X207 @ id @ X212 @ id)) | ((X207 @ id @ (X208 @ id @ X212) @ id) = $true))) | ~! [X213 : term] : (~($true = (X205 @ X213)) | ((X205 @ (sub @ X206 @ (push @ X213 @ id))) = $true)) | ($true = (X205 @ (lam @ X206))) | ~! [X214 : term] : ((X205 @ X214) = (X207 @ id @ X214 @ id))) => ! [X215 : term,X216 : subst > term > subst > $o] : (~! [X217 : term,X218 : subst,X219 : subst,X220 : subst] : (($true = (X216 @ (comp @ X219 @ X218) @ (sub @ X217 @ X218) @ X220)) | ~($true = (X216 @ X219 @ X217 @ (comp @ X218 @ X220)))) | ~! [X221 : subst > term > term] : (~! [X222 : subst,X223 : term,X224 : subst] : ((X221 @ (comp @ X222 @ X224) @ (sub @ X223 @ X224)) = (sub @ (X221 @ X222 @ X223) @ X224)) | ($true = (X216 @ id @ (lam @ (X221 @ sh @ one)) @ id)) | ~! [X225 : term] : (($true = (X216 @ id @ (X221 @ id @ X225) @ id)) | ~($true = (X216 @ id @ X225 @ id)))) | ~! [X226 : subst,X227 : term,X228 : subst,X229 : subst] : (~($true = (X216 @ (comp @ X229 @ X226) @ (sub @ X227 @ X226) @ X228)) | ($true = (X216 @ X229 @ X227 @ (comp @ X226 @ X228)))) | ~! [X230 : term] : (($true = (X216 @ id @ X230 @ id)) | ~($true = (var @ (sub @ X230 @ id)))) | ($true = (X216 @ id @ X215 @ id)) | ~! [X231 : term,X232 : term] : (~((X216 @ id @ X232 @ id) = $true) | ($true = (X216 @ id @ (ap @ (sub @ X231 @ id) @ X232) @ id)) | ~($true = (X216 @ id @ X231 @ id))))))))) & (hoasinduction_lem2_gthm = $true) & ((hoasinduction_lem3 = $true) <=> ! [X233 : subst > term > subst > $o,X234 : term] : (($true = (X233 @ id @ (lam @ X234) @ id)) | ~! [X235 : subst,X236 : subst,X237 : subst,X238 : term] : (($true = (X233 @ (comp @ X236 @ X235) @ (sub @ X238 @ X235) @ X237)) | ~($true = (X233 @ X236 @ X238 @ (comp @ X235 @ X237)))) | ~! [X239 : subst > term > term] : (~! [X240 : term] : (~($true = (X233 @ id @ X240 @ id)) | ($true = (X233 @ id @ (X239 @ id @ X240) @ id))) | ~! [X241 : subst,X242 : subst,X243 : term] : ((X239 @ (comp @ X242 @ X241) @ (sub @ X243 @ X241)) = (sub @ (X239 @ X242 @ X243) @ X241)) | ($true = (X233 @ id @ (lam @ (X239 @ sh @ one)) @ id))) | ~! [X244 : term] : (($true = (X233 @ id @ (sub @ X234 @ (push @ X244 @ id)) @ id)) | ~($true = (X233 @ id @ X244 @ id))) | ~! [X245 : term,X246 : subst,X247 : subst,X248 : subst] : (~($true = (X233 @ (comp @ X248 @ X247) @ (sub @ X245 @ X247) @ X246)) | ($true = (X233 @ X248 @ X245 @ (comp @ X247 @ X246)))))) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X249 : term] : ((sub @ X249 @ id) = X249) => (! [X250 : term,X251 : subst > term > subst > $o] : (~! [X252 : subst > term > term] : (~! [X253 : subst,X254 : term,X255 : subst] : ((X252 @ (comp @ X253 @ X255) @ (sub @ X254 @ X255)) = (sub @ (X252 @ X253 @ X254) @ X255)) | ($true = (X251 @ id @ (lam @ (X252 @ sh @ one)) @ id)) | ~! [X256 : term] : (~((X251 @ id @ X256 @ id) = $true) | ($true = (X251 @ id @ (X252 @ id @ X256) @ id)))) | ~! [X257 : term] : (~($true = (X251 @ id @ X257 @ id)) | ($true = (X251 @ id @ (sub @ X250 @ (push @ X257 @ id)) @ id))) | ($true = (X251 @ id @ (lam @ (sub @ X250 @ (push @ one @ sh))) @ id))) => ! [X258 : subst > term > subst > $o,X259 : term] : (~! [X260 : term] : (~($true = (X258 @ id @ X260 @ id)) | ($true = (X258 @ id @ (sub @ X259 @ (push @ X260 @ id)) @ id))) | ($true = (X258 @ id @ (lam @ X259) @ id)) | ~! [X261 : subst > term > term] : (~! [X262 : term] : (($true = (X258 @ id @ (X261 @ id @ X262) @ id)) | ~((X258 @ id @ X262 @ id) = $true)) | ~! [X263 : term,X264 : subst,X265 : subst] : ((sub @ (X261 @ X265 @ X263) @ X264) = (X261 @ (comp @ X265 @ X264) @ (sub @ X263 @ X264))) | ($true = (X258 @ id @ (lam @ (X261 @ sh @ one)) @ id))))))) & (axclos = $true) & (hoasinduction_lem2_lthm = $true) & ((shinj = $true) <=> ! [X266 : term,X267 : term] : (((sub @ X266 @ sh) != (sub @ X267 @ sh)) | (X266 = X267))) & ((axscons = $true) <=> ! [X268 : subst] : ((push @ (sub @ one @ X268) @ (comp @ sh @ X268)) = X268)) & ((axidr = $true) <=> ! [X269 : subst] : ((comp @ X269 @ id) = X269)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X270 : subst > term > subst > $o] : ~! [X271 : term > $o] : ~! [X272 : term] : ((X270 @ id @ X272 @ id) = (X271 @ X272))) & (pushprop = $true) & ! [X273 : d_subst] : (d_id = X273) & ((! [X274 : term > $o,X275 : term] : (($true = (X274 @ X275)) | ~! [X276 : term] : (($true = (X274 @ (lam @ X276))) | ~! [X277 : term] : (($true = (X274 @ (sub @ X276 @ (push @ X277 @ id)))) | ~((X274 @ X277) = $true))) | ~! [X278 : term] : (~($true = (var @ X278)) | ($true = (X274 @ X278))) | ~! [X279 : term,X280 : term] : (~($true = (X274 @ X279)) | ($true = (X274 @ (ap @ X280 @ X279))) | ~($true = (X274 @ X280)))) => (! [X281 : term,X282 : term,X283 : subst > term > subst > $o] : (~($true = (X283 @ id @ X281 @ id)) | ~($true = (X283 @ id @ X282 @ id)) | ($true = (X283 @ id @ (ap @ X282 @ X281) @ id)) | ~! [X284 : term,X285 : term] : (($true = (X283 @ id @ (ap @ (sub @ X285 @ id) @ X284) @ id)) | ~($true = (X283 @ id @ X285 @ id)) | ~((X283 @ id @ X284 @ id) = $true)) | ~! [X286 : subst,X287 : subst,X288 : term,X289 : subst] : (($true = (X283 @ (comp @ X286 @ X287) @ (sub @ X288 @ X287) @ X289)) | ~($true = (X283 @ X286 @ X288 @ (comp @ X287 @ X289)))) | ~! [X290 : term,X291 : subst,X292 : subst,X293 : subst] : (($true = (X283 @ X291 @ X290 @ (comp @ X292 @ X293))) | ~($true = (X283 @ (comp @ X291 @ X292) @ (sub @ X290 @ X292) @ X293)))) => (! [X294 : subst > term > subst > $o,X295 : term] : (~! [X296 : term] : (((X294 @ id @ (sub @ X295 @ (push @ X296 @ id)) @ id) = $true) | ~($true = (X294 @ id @ X296 @ id))) | ~! [X297 : subst,X298 : term,X299 : subst,X300 : subst] : (($true = (X294 @ X300 @ X298 @ (comp @ X297 @ X299))) | ~((X294 @ (comp @ X300 @ X297) @ (sub @ X298 @ X297) @ X299) = $true)) | ($true = (X294 @ id @ (lam @ X295) @ id)) | ~! [X301 : subst > term > term] : (~! [X302 : term] : (~($true = (X294 @ id @ X302 @ id)) | ($true = (X294 @ id @ (X301 @ id @ X302) @ id))) | ($true = (X294 @ id @ (lam @ (X301 @ sh @ one)) @ id)) | ~! [X303 : term,X304 : subst,X305 : subst] : ((sub @ (X301 @ X305 @ X303) @ X304) = (X301 @ (comp @ X305 @ X304) @ (sub @ X303 @ X304)))) | ~! [X306 : term,X307 : subst,X308 : subst,X309 : subst] : (~($true = (X294 @ X308 @ X306 @ (comp @ X309 @ X307))) | ($true = (X294 @ (comp @ X308 @ X309) @ (sub @ X306 @ X309) @ X307)))) => ! [X310 : subst > term > subst > $o,X311 : term] : (~! [X312 : term,X313 : term] : (~($true = (X310 @ id @ X312 @ id)) | ($true = (X310 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) | ~($true = (X310 @ id @ X313 @ id))) | ~! [X314 : term,X315 : subst,X316 : subst,X317 : subst] : (($true = (X310 @ X316 @ X314 @ (comp @ X315 @ X317))) | ~($true = (X310 @ (comp @ X316 @ X315) @ (sub @ X314 @ X315) @ X317))) | ~! [X318 : subst > term > term] : (~! [X319 : term,X320 : subst,X321 : subst] : ((X318 @ (comp @ X321 @ X320) @ (sub @ X319 @ X320)) = (sub @ (X318 @ X321 @ X319) @ X320)) | ($true = (X310 @ id @ (lam @ (X318 @ sh @ one)) @ id)) | ~! [X322 : term] : (~($true = (X310 @ id @ X322 @ id)) | ($true = (X310 @ id @ (X318 @ id @ X322) @ id)))) | ($true = (X310 @ id @ X311 @ id)) | ~! [X323 : term] : (($true = (X310 @ id @ X323 @ id)) | ~($true = (var @ (sub @ X323 @ id)))) | ~! [X324 : subst,X325 : term,X326 : subst,X327 : subst] : (~($true = (X310 @ X326 @ X325 @ (comp @ X324 @ X327))) | ($true = (X310 @ (comp @ X326 @ X324) @ (sub @ X325 @ X324) @ X327))))))) <=> (hoasinduction_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & ((induction2_lthm = $true) <=> (! [X328 : term] : ((sub @ X328 @ id) = X328) => (! [X329 : term,X330 : subst,X331 : term > $o] : (((X331 @ (sub @ X329 @ X330)) = $true) | ~! [X332 : term,X333 : term] : (~($true = (X331 @ X332)) | ~($true = (X331 @ X333)) | ($true = (X331 @ (ap @ X332 @ X333)))) | ~! [X334 : term] : (($true = (X331 @ (sub @ X334 @ X330))) | ~($true = (var @ X334))) | ~! [X335 : term] : (~! [X336 : term] : (~($true = (X331 @ X336)) | ($true = (X331 @ (sub @ X335 @ (push @ X336 @ id))))) | ($true = (X331 @ (lam @ X335))))) => ! [X337 : term > $o,X338 : term] : (~! [X339 : term,X340 : term] : (~($true = (X337 @ X339)) | ~($true = (X337 @ X340)) | ($true = (X337 @ (ap @ X339 @ X340)))) | ~! [X341 : term] : (($true = (X337 @ X341)) | ~($true = (var @ X341))) | ~! [X342 : term] : (($true = (X337 @ (lam @ X342))) | ~! [X343 : term] : (~($true = (X337 @ X343)) | ($true = (X337 @ (sub @ X342 @ (push @ X343 @ id)))))) | ($true = (X337 @ X338)))))) & (hoasinduction_lem1_lthm = $true) & ((apinj2 = $true) <=> ! [X344 : term,X345 : term,X346 : term,X347 : term] : ((X345 = X347) | ((ap @ X344 @ X347) != (ap @ X346 @ X345)))) & ((pushprop_lem0 = $true) <=> ! [X348 : term,X349 : term > $o,X350 : subst] : ~! [X351 : term > $o] : ~! [X352 : term] : ((X349 @ (sub @ X352 @ (push @ X348 @ X350))) = (X351 @ X352))) & (hoasapinj1_gthm = $true) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem2v2 = $true) <=> ! [X353 : term > $o,X354 : subst > term > subst > $o,X355 : term,X356 : term] : (~! [X357 : term,X358 : subst,X359 : subst,X360 : subst] : (($true = (X354 @ (comp @ X358 @ X360) @ (sub @ X357 @ X360) @ X359)) | ~($true = (X354 @ X358 @ X357 @ (comp @ X360 @ X359)))) | ~! [X361 : term,X362 : term] : (($true = (X354 @ id @ (ap @ (sub @ X361 @ id) @ X362) @ id)) | ~($true = (X354 @ id @ X361 @ id)) | ~($true = (X354 @ id @ X362 @ id))) | ~($true = (X353 @ X355)) | ~($true = (X353 @ X356)) | ($true = (X353 @ (ap @ X356 @ X355))) | ~! [X363 : term,X364 : subst,X365 : subst,X366 : subst] : (($true = (X354 @ X364 @ X363 @ (comp @ X365 @ X366))) | ~((X354 @ (comp @ X364 @ X365) @ (sub @ X363 @ X365) @ X366) = $true)) | ~! [X367 : term] : ((X353 @ X367) = (X354 @ id @ X367 @ id)))) & ((hoaslamnotap = $true) <=> ! [X368 : subst > term > term,X369 : term,X370 : term] : (~! [X371 : term,X372 : subst,X373 : subst] : ((X368 @ (comp @ X373 @ X372) @ (sub @ X371 @ X372)) = (sub @ (X368 @ X373 @ X371) @ X372)) | ((ap @ (sub @ X370 @ id) @ X369) != (lam @ (X368 @ sh @ one))))) & (! [X374 : term > $o,X375 : term] : (~! [X376 : term] : (~! [X377 : term] : (~($true = (X374 @ X377)) | ($true = (X374 @ (sub @ X376 @ (push @ X377 @ id))))) | ($true = (X374 @ (lam @ X376)))) | ~! [X378 : term] : (~($true = (var @ X378)) | ($true = (X374 @ X378))) | ~! [X379 : term,X380 : term] : (~($true = (X374 @ X379)) | ($true = (X374 @ (ap @ X380 @ X379))) | ~($true = (X374 @ X380))) | ((X374 @ X375) = $true)) <=> (induction2 = $true)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X381 : term] : ~! [X382 : subst > term > term] : ~! [X383 : subst,X384 : term] : ((sub @ X381 @ (push @ X384 @ X383)) = (X382 @ X383 @ X384)) => (! [X385 : term] : ((sub @ X385 @ id) = X385) => ! [X386 : subst > term > subst > $o,X387 : term > $o,X388 : term] : (($true = (X387 @ (lam @ X388))) | ~! [X389 : subst > term > term] : (~! [X390 : subst,X391 : subst,X392 : term] : ((X389 @ (comp @ X391 @ X390) @ (sub @ X392 @ X390)) = (sub @ (X389 @ X391 @ X392) @ X390)) | ~! [X393 : term] : (~($true = (X386 @ id @ X393 @ id)) | ($true = (X386 @ id @ (X389 @ id @ X393) @ id))) | ($true = (X386 @ id @ (lam @ (X389 @ sh @ one)) @ id))) | ~! [X394 : term] : (((X387 @ (sub @ X388 @ (push @ X394 @ id))) = $true) | ~((X387 @ X394) = $true)) | ~! [X395 : term] : ((X387 @ X395) = (X386 @ id @ X395 @ id)))))) & ! [X396 : subst] : ? [X397 : d_subst] : ((d2subst @ X397) = X396) & ((! [X398 : term,X399 : subst] : ((sub @ one @ (push @ X398 @ X399)) = X398) => (! [X400 : term,X401 : subst] : ((comp @ sh @ (push @ X400 @ X401)) = X401) => (! [X402 : term,X403 : term] : (((lam @ X403) != (lam @ X402)) | (X402 = X403)) => ! [X404 : term,X405 : subst > term > term,X406 : subst,X407 : subst > term > term] : (~! [X408 : subst,X409 : term,X410 : subst] : ((X405 @ (comp @ X410 @ X408) @ (sub @ X409 @ X408)) = (sub @ (X405 @ X410 @ X409) @ X408)) | ~! [X411 : term,X412 : subst,X413 : subst] : ((sub @ (X407 @ X412 @ X411) @ X413) = (X407 @ (comp @ X412 @ X413) @ (sub @ X411 @ X413))) | ((X407 @ X406 @ X404) = (X405 @ X406 @ X404)) | ((lam @ (X405 @ sh @ one)) != (lam @ (X407 @ sh @ one))))))) <=> (hoaslaminj_lthm = $true)) & (induction2lem_gthm = $true) & ((axshiftcons = $true) <=> ! [X414 : term,X415 : subst] : ((comp @ sh @ (push @ X414 @ X415)) = X415)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X416 : term,X417 : subst] : ((sub @ one @ (push @ X416 @ X417)) = X416) => ! [X418 : term,X419 : term > $o,X420 : term > $o,X421 : subst] : (~($true = (X420 @ X418)) | ~! [X422 : term] : ((X420 @ (sub @ X422 @ (push @ X418 @ X421))) = (X419 @ X422)) | ($true = (X419 @ one))))) & ((axidl = $true) <=> ! [X423 : subst] : ((comp @ id @ X423) = X423)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoaslamnotap_lthm = $true) & ((pushprop_lem1 = $true) <=> ! [X424 : subst,X425 : term > $o,X426 : term,X427 : term,X428 : term > $o] : (($true = (X425 @ (sub @ X427 @ (push @ X426 @ X424)))) | ~($true = (X428 @ X427)))) & (! [X429 : subst > term > subst > $o] : ~! [X430 : term > $o] : ~! [X431 : term] : ((X429 @ id @ X431 @ id) = (X430 @ X431)) <=> (hoasinduction_lem0 = $true)) & (! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ~! [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true = (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) | ~($true = (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ~! [X439 : subst,X440 : subst,X441 : subst,X442 : term] : (~($true = (X432 @ (comp @ X440 @ X441) @ (sub @ X442 @ X441) @ X439)) | ($true = (X432 @ X440 @ X442 @ (comp @ X441 @ X439)))) | ~! [X443 : term,X444 : term] : (($true = (X432 @ id @ (ap @ (sub @ X444 @ id) @ X443) @ id)) | ~($true = (X432 @ id @ X444 @ id)) | ~($true = (X432 @ id @ X443 @ id))) | ~($true = (X432 @ id @ X433 @ id)) | ~($true = (X432 @ id @ X434 @ id))) <=> (hoasinduction_lem2 = $true)) & (pushprop_lem3v2_lthm = $true) & (! [X445 : term] : ~! [X446 : subst > term > term] : ~! [X447 : term,X448 : subst] : ((X446 @ X448 @ X447) = (sub @ X445 @ (push @ X447 @ X448))) <=> (hoasinduction_lem3v2_f = $true)) & (pushprop_lthm_orig = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X449 : term,X450 : subst > term > subst > $o,X451 : term > $o] : (~! [X452 : term] : ((X450 @ id @ X452 @ id) = (X451 @ X452)) | ($true = (X451 @ (lam @ X449))) | ~! [X453 : subst > term > term] : (~! [X454 : term] : (($true = (X450 @ id @ (X453 @ id @ X454) @ id)) | ~($true = (X450 @ id @ X454 @ id))) | ($true = (X450 @ id @ (lam @ (X453 @ sh @ one)) @ id)) | ~! [X455 : subst,X456 : term,X457 : subst] : ((sub @ (X453 @ X455 @ X456) @ X457) = (X453 @ (comp @ X455 @ X457) @ (sub @ X456 @ X457)))) | ~! [X458 : term] : (($true = (X451 @ (sub @ X449 @ (push @ X458 @ id)))) | ~($true = (X451 @ X458))))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem1_gthm = $true) & ! [X459 : d_term,X460 : d_term] : (((d2term @ X459) = (d2term @ X460)) => (X459 = X460)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (! [X461 : term] : ((sub @ X461 @ id) = X461) <=> (axvarid = $true)) & (! [X462 : term,X463 : term,X464 : term,X465 : term] : (((ap @ (sub @ X462 @ id) @ X464) != (ap @ (sub @ X465 @ id) @ X463)) | (X463 = X464)) <=> (hoasapinj2 = $true)) & (! [X466 : subst > term > subst > $o,X467 : term] : (~! [X468 : subst > term > term] : (($true = (X466 @ id @ (lam @ (X468 @ sh @ one)) @ id)) | ~! [X469 : term] : (($true = (X466 @ id @ (X468 @ id @ X469) @ id)) | ~($true = (X466 @ id @ X469 @ id))) | ~! [X470 : subst,X471 : subst,X472 : term] : ((sub @ (X468 @ X471 @ X472) @ X470) = (X468 @ (comp @ X471 @ X470) @ (sub @ X472 @ X470)))) | ($true = (X466 @ id @ X467 @ id)) | ~! [X473 : term,X474 : term] : (~($true = (X466 @ id @ X474 @ id)) | ~($true = (X466 @ id @ X473 @ id)) | ($true = (X466 @ id @ (ap @ (sub @ X474 @ id) @ X473) @ id)))) <=> (hoasinduction_no_psi_cond = $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) <=> (! [X475 : term,X476 : subst] : ((sub @ one @ (push @ X475 @ X476)) = X475) => (! [X477 : term,X478 : subst] : ((comp @ sh @ (push @ X477 @ X478)) = X478) => (! [X479 : subst] : ((comp @ X479 @ id) = X479) => (! [X480 : term,X481 : term > $o] : (~! [X482 : term] : (~($true = (X481 @ X482)) | ($true = (X481 @ (lam @ X482)))) | ~! [X483 : term,X484 : term] : (~($true = (X481 @ X483)) | ($true = (X481 @ (ap @ X484 @ X483))) | ~($true = (X481 @ X484))) | ~! [X485 : term] : (($true = (X481 @ X485)) | ~($true = (var @ X485))) | ($true = (X481 @ X480))) => ! [X486 : term,X487 : term > $o,X488 : subst] : (($true = (X487 @ (sub @ X486 @ X488))) | ~! [X489 : term,X490 : term] : (($true = (X487 @ (ap @ X490 @ X489))) | ~($true = (X487 @ X489)) | ~($true = (X487 @ X490))) | ~! [X491 : term] : (~($true = (var @ X491)) | ($true = (X487 @ (sub @ X491 @ X488)))) | ~! [X492 : term] : (($true = (X487 @ (lam @ X492))) | ~! [X493 : term] : (($true = (X487 @ (sub @ X492 @ (push @ X493 @ id)))) | ~($true = (X487 @ X493)))))))))) & (axapp = $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ~(ulamvar1 = $true) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem0_gthm = $true) & ((! [X494 : subst,X495 : term] : ((sub @ one @ (push @ X495 @ X494)) = X495) => (! [X496 : subst,X497 : term] : ((comp @ sh @ (push @ X497 @ X496)) = X496) => ! [X498 : term,X499 : subst,X500 : term > $o,X501 : term,X502 : term > $o] : (~($true = (X500 @ X501)) | ($true = (X502 @ (sub @ X501 @ (push @ X498 @ X499))))))) <=> (pushprop_lem1_lthm = $true)) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasapinj2_lthm = $true) <=> (! [X503 : term,X504 : term,X505 : term,X506 : term] : (((ap @ X505 @ X503) != (ap @ X506 @ X504)) | (X503 = X504)) => ! [X507 : term,X508 : term,X509 : term,X510 : term] : ((X508 = X509) | ((ap @ (sub @ X507 @ id) @ X508) != (ap @ (sub @ X510 @ id) @ X509))))) & (hoasinduction_lem1_gthm = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X511 : term,X512 : subst > term > subst > $o] : (($true = (X512 @ id @ (lam @ (sub @ X511 @ (push @ one @ sh))) @ id)) | ~! [X513 : term,X514 : subst > term > term] : (~! [X515 : term] : (($true = (X512 @ id @ (X514 @ id @ X515) @ id)) | ~($true = (X512 @ id @ X515 @ id))) | ($true = (X512 @ id @ (lam @ (X514 @ sh @ one)) @ id)) | ~! [X516 : subst,X517 : term,X518 : subst] : ((X514 @ (comp @ X516 @ X518) @ (sub @ X517 @ X518)) = (sub @ X513 @ (push @ (sub @ X517 @ X518) @ (comp @ X516 @ X518)))) | ~! [X519 : term,X520 : subst,X521 : subst] : ((sub @ (sub @ X513 @ (push @ X519 @ X521)) @ X520) = (sub @ (X514 @ X521 @ X519) @ X520))) | ~! [X522 : term] : (~($true = (X512 @ id @ X522 @ id)) | ((X512 @ id @ (sub @ X511 @ (push @ X522 @ id)) @ id) = $true)))) & ((d2subst @ d_id) = sh) & (pushprop_lem1v2_gthm = $true) & (! [X523 : subst,X524 : term] : ((sub @ one @ (push @ X524 @ X523)) = X524) <=> (axvarcons = $true)) & ((induction2lem = $true) <=> ! [X525 : term > $o,X526 : subst,X527 : term] : (~! [X528 : term] : (~! [X529 : term] : (($true = (X525 @ (sub @ X528 @ (push @ X529 @ id)))) | ~($true = (X525 @ X529))) | ($true = (X525 @ (lam @ X528)))) | ($true = (X525 @ (sub @ X527 @ X526))) | ~! [X530 : term,X531 : term] : (($true = (X525 @ (ap @ X531 @ X530))) | ~($true = (X525 @ X531)) | ~($true = (X525 @ X530))) | ~! [X532 : term] : (($true = (X525 @ (sub @ X532 @ X526))) | ~($true = (var @ X532))))) & (lamnotvar = $true) & (one = (d2term @ d_one)) & (axvarshift = $true) & (axassoc = $true) & ((substmonoid = $true) <=> (! [X534 : subst] : ((comp @ X534 @ id) = X534) & ! [X533 : subst] : ((comp @ id @ X533) = X533))) & ((d2subst @ d_id) = id) & ((pushprop_lem0_lthm = $true) <=> ! [X535 : subst,X536 : term > $o,X537 : term] : ~! [X538 : term > $o] : ~! [X539 : term] : ((X538 @ X539) = (X536 @ (sub @ X539 @ (push @ X537 @ X535)))))),
% 6.77/2.22    inference(rectify,[status(thm)],[f6])).
% 6.77/2.22  thf(f6,plain,(
% 6.77/2.22    ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ~(lamnotap = $true) & (hoasapnotvar_gthm = $true) & (hoaslaminj_gthm = $true) & ((termmset_lthm = $true) <=> (! [X0 : term] : ((sub @ X0 @ id) = X0) => ! [X1 : term] : ((sub @ X1 @ id) = X1))) & (ulamvarsh = $true) & (hoasinduction_lem1v2 = $true) & ~((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) & (apnotvar = $true) & (! [X2 : term,X3 : subst > term > subst > $o] : (~! [X4 : subst > term > term] : (~! [X5 : term] : (~($true = (X3 @ id @ X5 @ id)) | ($true = (X3 @ id @ (X4 @ id @ X5) @ id))) | ~! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6)) | ((X3 @ id @ (lam @ (X4 @ sh @ one)) @ id) = $true)) | ($true = (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id)) | ~! [X9 : term] : (~($true = (X3 @ id @ X9 @ id)) | ($true = (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id)))) <=> (hoasinduction_lem3aa_lthm = $true)) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X13 : term,X14 : term > $o] : (~! [X15 : term,X16 : term] : (($true = (X14 @ (ap @ X16 @ X15))) | ~($true = (X14 @ X15)) | ~($true = (X14 @ X16))) | ~! [X17 : term] : (~($true = (var @ X17)) | ($true = (X14 @ X17))) | ($true = (X14 @ X13)) | ~! [X18 : term] : (~! [X19 : term] : (~($true = (X14 @ X19)) | ($true = (X14 @ (sub @ X18 @ (push @ X19 @ id))))) | ($true = (X14 @ (lam @ X18))))) => (! [X20 : term] : ((sub @ X20 @ id) = X20) => (! [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : (($true = (X22 @ (lam @ X23))) | ~! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) | ~! [X25 : term] : (~($true = (X22 @ X25)) | ($true = (X22 @ (sub @ X23 @ (push @ X25 @ id))))) | ~! [X26 : subst > term > term] : (($true = (X21 @ id @ (lam @ (X26 @ sh @ one)) @ id)) | ~! [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) = (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ~! [X30 : term] : (~((X21 @ id @ X30 @ id) = $true) | ($true = (X21 @ id @ (X26 @ id @ X30) @ id))))) => ! [X31 : subst > term > subst > $o,X32 : term] : (($true = (X31 @ id @ X32 @ id)) | ~! [X33 : term,X34 : term] : (~($true = (X31 @ id @ X33 @ id)) | ($true = (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id)) | ~($true = (X31 @ id @ X34 @ id))) | ~! [X35 : subst > term > term] : (~! [X36 : term] : (~($true = (X31 @ id @ X36 @ id)) | ($true = (X31 @ id @ (X35 @ id @ X36) @ id))) | ($true = (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id)) | ~! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))))))))) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X40 : term] : ~! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one))) & (axmap = $true) & (hoaslamnotvar_lthm = $true) & (hoasinduction_lem3_gthm = $true) & (hoasinduction_gthm = $true) & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) = (d2subst @ X45)) => (X44 = X45)) & (termmset_gthm = $true) & (! [X46 : term,X47 : term] : (((lam @ X47) != (lam @ X46)) | (X46 = X47)) <=> (laminj = $true)) & (! [X48 : term] : ~! [X49 : subst > term > term] : ~! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (~($true = (X53 @ X54)) | ($true = (X55 @ one)) | ~! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56)))) & ((induction = $true) <=> ! [X57 : term > $o,X58 : term] : (~! [X59 : term] : (($true = (X57 @ X59)) | ~($true = (var @ X59))) | ~! [X60 : term] : (($true = (X57 @ (lam @ X60))) | ~($true = (X57 @ X60))) | ($true = (X57 @ X58)) | ~! [X61 : term,X62 : term] : (($true = (X57 @ (ap @ X62 @ X61))) | ~($true = (X57 @ X61)) | ~($true = (X57 @ X62))))) & (! [X63 : term,X64 : subst > term > subst > $o] : (~! [X65 : term] : (~($true = (X64 @ id @ X65 @ id)) | ($true = (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id))) | ($true = (X64 @ id @ (lam @ X63) @ id)) | ~! [X66 : subst > term > term] : (~! [X67 : term] : (($true = (X64 @ id @ (X66 @ id @ X67) @ id)) | ~($true = (X64 @ id @ X67 @ id))) | ($true = (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id)) | ~! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70)))) <=> (hoasinduction_lem3a = $true)) & ((substmonoid_lthm = $true) <=> (! [X71 : subst] : ((comp @ id @ X71) = X71) => (! [X72 : subst] : ((comp @ X72 @ id) = X72) => (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (~! [X78 : term,X79 : subst,X80 : subst,X81 : subst] : (($true = (X76 @ X79 @ X78 @ (comp @ X81 @ X80))) | ~($true = (X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80))) | ~! [X82 : subst > term > term] : (~! [X83 : term] : (~($true = (X76 @ id @ X83 @ id)) | ($true = (X76 @ id @ (X82 @ id @ X83) @ id))) | ($true = (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id)) | ~! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85))) | ($true = (X75 @ (lam @ X77))) | ~! [X87 : term] : ((X75 @ X87) = (X76 @ id @ X87 @ id)) | ~! [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (~($true = (X76 @ X91 @ X90 @ (comp @ X89 @ X88))) | ($true = (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88))) | ~! [X92 : term] : (~($true = (X75 @ X92)) | ((X75 @ (sub @ X77 @ (push @ X92 @ id))) = $true)))) & (pushprop_lem2v2 = $true) & (hoasinduction_lem1v2_gthm = $true) & ((hoasinduction = $true) <=> ! [X93 : subst > term > subst > $o,X94 : term] : (~! [X95 : subst > term > term] : (~! [X96 : term] : (($true = (X93 @ id @ (X95 @ id @ X96) @ id)) | ~($true = (X93 @ id @ X96 @ id))) | ~! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) | ($true = (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id))) | ~! [X100 : term,X101 : term] : (~($true = (X93 @ id @ X101 @ id)) | ~($true = (X93 @ id @ X100 @ id)) | ($true = (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id))) | ~! [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (~($true = (X93 @ X104 @ X102 @ (comp @ X103 @ X105))) | ($true = (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105))) | ($true = (X93 @ id @ X94 @ id)) | ~! [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (~($true = (X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108)) | ($true = (X93 @ X107 @ X109 @ (comp @ X106 @ X108)))) | ~! [X110 : term] : (~($true = (var @ (sub @ X110 @ id))) | ($true = (X93 @ id @ X110 @ id))))) & (pushprop_gthm = $true) & (pushprop_lem3v2 = $true) & (induction2_gthm = $true) & ((! [X111 : term] : ((sub @ X111 @ id) = X111) => ! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (~! [X115 : term] : ((X114 @ id @ X115 @ id) = (X112 @ X115)) | ~! [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (~($true = (X114 @ X119 @ X116 @ (comp @ X117 @ X118))) | ($true = (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118))) | ~! [X120 : term] : (($true = (X112 @ (sub @ X113 @ (push @ X120 @ id)))) | ~($true = (X112 @ X120))) | ~! [X121 : subst > term > term] : (($true = (X114 @ id @ (lam @ (X121 @ sh @ one)) @ id)) | ~! [X122 : term] : (~($true = (X114 @ id @ X122 @ id)) | ($true = (X114 @ id @ (X121 @ id @ X122) @ id))) | ~! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124))) | ($true = (X112 @ (lam @ X113))) | ~! [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (~($true = (X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126)) | ($true = (X114 @ X128 @ X127 @ (comp @ X129 @ X126)))))) <=> (hoasinduction_lem3v2_lthm = $true)) & (hoasapnotvar = $true) & (substmonoid_gthm = $true) & (! [X130 : term] : ~! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh))) <=> (hoasinduction_lem3b = $true)) & ! [X132 : d_term] : (d_one = X132) & (ulamvarind = $true) & (pushprop_lem2v2_lthm = $true) & ((hoasapinj1 = $true) <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & (axabs = $true) & (hoasinduction_lem3b_gthm = $true) & ~((var @ (d2term @ d_one)) = $true) & (hoasinduction_lem3v2_gthm = $true) & (! [X137 : term,X138 : subst > term > subst > $o] : (~! [X139 : term] : (~($true = (X138 @ id @ X139 @ id)) | ($true = (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id))) | ~! [X140 : subst > term > term] : (($true = (X138 @ id @ (lam @ (X140 @ sh @ one)) @ id)) | ~! [X141 : term] : (($true = (X138 @ id @ (X140 @ id @ X141) @ id)) | ~($true = (X138 @ id @ X141 @ id))) | ~! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))) | ((X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id) = $true)) <=> (hoasinduction_lem3aa = $true)) & ((hoaslaminj = $true) <=> ! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ~! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149))) | ~! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))))) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem1 = $true) & (hoaslamnotap_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X155 : term,X156 : term,X157 : term,X158 : term] : ((X156 = X157) | ((ap @ X156 @ X155) != (ap @ X157 @ X158))) <=> (apinj1 = $true)) & ((hoasinduction_lem3_lthm = $true) <=> (! [X159 : term] : ((sub @ X159 @ id) = X159) => (! [X160 : term,X161 : subst > term > subst > $o] : (~! [X162 : term] : (($true = (X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id)) | ~($true = (X161 @ id @ X162 @ id))) | ~! [X163 : subst > term > term] : (~! [X164 : term] : (($true = (X161 @ id @ (X163 @ id @ X164) @ id)) | ~((X161 @ id @ X164 @ id) = $true)) | ($true = (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id)) | ~! [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) = (sub @ (X163 @ X166 @ X165) @ X167))) | ($true = (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id))) => ! [X168 : subst > term > subst > $o,X169 : term] : (~! [X170 : subst > term > term] : (($true = (X168 @ id @ (lam @ (X170 @ sh @ one)) @ id)) | ~! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) | ~! [X174 : term] : (~($true = (X168 @ id @ X174 @ id)) | ($true = (X168 @ id @ (X170 @ id @ X174) @ id)))) | ~! [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (~($true = (X168 @ X177 @ X176 @ (comp @ X178 @ X175))) | ($true = (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175))) | ($true = (X168 @ id @ (lam @ X169) @ id)) | ~! [X179 : term] : (~($true = (X168 @ id @ X179 @ id)) | ($true = (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id))) | ~! [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (($true = (X168 @ X181 @ X180 @ (comp @ X183 @ X182))) | ~((X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182) = $true)))))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X186 : term] : ((sub @ X186 @ id) = X186) <=> (termmset = $true)) & ((hoasapinj1_lthm = $true) <=> (! [X187 : term] : ((sub @ X187 @ id) = X187) => (! [X188 : term,X189 : term,X190 : term,X191 : term] : ((X189 = X191) | ((ap @ X191 @ X190) != (ap @ X189 @ X188))) => ! [X192 : term,X193 : term,X194 : term,X195 : term] : (((ap @ (sub @ X194 @ id) @ X193) != (ap @ (sub @ X192 @ id) @ X195)) | (X192 = X194))))) & ((hoasinduction_lthm_3 = $true) <=> (! [X196 : subst > term > subst > $o] : ~! [X197 : term > $o] : ~! [X198 : term] : ((X197 @ X198) = (X196 @ id @ X198 @ id)) => (! [X199 : term > $o,X200 : term] : (($true = (X199 @ X200)) | ~! [X201 : term] : (~($true = (var @ X201)) | ($true = (X199 @ X201))) | ~! [X202 : term,X203 : term] : (($true = (X199 @ (ap @ X203 @ X202))) | ~($true = (X199 @ X202)) | ~($true = (X199 @ X203))) | ~! [X204 : term] : (~! [X205 : term] : (~($true = (X199 @ X205)) | ($true = (X199 @ (sub @ X204 @ (push @ X205 @ id))))) | ($true = (X199 @ (lam @ X204))))) => (! [X206 : term] : ((sub @ X206 @ id) = X206) => (! [X207 : term > $o,X208 : term,X209 : subst > term > subst > $o] : (~! [X210 : subst > term > term] : (~! [X211 : subst,X212 : subst,X213 : term] : ((sub @ (X210 @ X211 @ X213) @ X212) = (X210 @ (comp @ X211 @ X212) @ (sub @ X213 @ X212))) | ($true = (X209 @ id @ (lam @ (X210 @ sh @ one)) @ id)) | ~! [X214 : term] : (~($true = (X209 @ id @ X214 @ id)) | ($true = (X209 @ id @ (X210 @ id @ X214) @ id)))) | ~! [X215 : term] : (~($true = (X207 @ X215)) | ((X207 @ (sub @ X208 @ (push @ X215 @ id))) = $true)) | ((X207 @ (lam @ X208)) = $true) | ~! [X216 : term] : ((X209 @ id @ X216 @ id) = (X207 @ X216))) => ! [X217 : term,X218 : subst > term > subst > $o] : (~! [X219 : term,X220 : subst,X221 : subst,X222 : subst] : (((X218 @ (comp @ X221 @ X220) @ (sub @ X219 @ X220) @ X222) = $true) | ~($true = (X218 @ X221 @ X219 @ (comp @ X220 @ X222)))) | ~! [X223 : subst > term > term] : (~! [X224 : subst,X225 : term,X226 : subst] : ((sub @ (X223 @ X224 @ X225) @ X226) = (X223 @ (comp @ X224 @ X226) @ (sub @ X225 @ X226))) | ($true = (X218 @ id @ (lam @ (X223 @ sh @ one)) @ id)) | ~! [X227 : term] : (($true = (X218 @ id @ (X223 @ id @ X227) @ id)) | ~((X218 @ id @ X227 @ id) = $true))) | ~! [X228 : subst,X229 : term,X230 : subst,X231 : subst] : (~($true = (X218 @ (comp @ X231 @ X228) @ (sub @ X229 @ X228) @ X230)) | ($true = (X218 @ X231 @ X229 @ (comp @ X228 @ X230)))) | ~! [X232 : term] : (($true = (X218 @ id @ X232 @ id)) | ~($true = (var @ (sub @ X232 @ id)))) | ($true = (X218 @ id @ X217 @ id)) | ~! [X233 : term,X234 : term] : (~($true = (X218 @ id @ X234 @ id)) | ($true = (X218 @ id @ (ap @ (sub @ X233 @ id) @ X234) @ id)) | ~((X218 @ id @ X233 @ id) = $true)))))))) & (hoasinduction_lem2_gthm = $true) & ((hoasinduction_lem3 = $true) <=> ! [X235 : subst > term > subst > $o,X236 : term] : (($true = (X235 @ id @ (lam @ X236) @ id)) | ~! [X237 : subst,X238 : subst,X239 : subst,X240 : term] : (($true = (X235 @ (comp @ X238 @ X237) @ (sub @ X240 @ X237) @ X239)) | ~((X235 @ X238 @ X240 @ (comp @ X237 @ X239)) = $true)) | ~! [X241 : subst > term > term] : (~! [X242 : term] : (~($true = (X235 @ id @ X242 @ id)) | ($true = (X235 @ id @ (X241 @ id @ X242) @ id))) | ~! [X243 : subst,X244 : subst,X245 : term] : ((sub @ (X241 @ X244 @ X245) @ X243) = (X241 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243))) | ($true = (X235 @ id @ (lam @ (X241 @ sh @ one)) @ id))) | ~! [X246 : term] : (($true = (X235 @ id @ (sub @ X236 @ (push @ X246 @ id)) @ id)) | ~($true = (X235 @ id @ X246 @ id))) | ~! [X247 : term,X248 : subst,X249 : subst,X250 : subst] : (~($true = (X235 @ (comp @ X250 @ X249) @ (sub @ X247 @ X249) @ X248)) | ((X235 @ X250 @ X247 @ (comp @ X249 @ X248)) = $true)))) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X251 : term] : ((sub @ X251 @ id) = X251) => (! [X252 : term,X253 : subst > term > subst > $o] : (~! [X254 : subst > term > term] : (~! [X255 : subst,X256 : term,X257 : subst] : ((sub @ (X254 @ X255 @ X256) @ X257) = (X254 @ (comp @ X255 @ X257) @ (sub @ X256 @ X257))) | ((X253 @ id @ (lam @ (X254 @ sh @ one)) @ id) = $true) | ~! [X258 : term] : (~($true = (X253 @ id @ X258 @ id)) | ($true = (X253 @ id @ (X254 @ id @ X258) @ id)))) | ~! [X259 : term] : (~($true = (X253 @ id @ X259 @ id)) | ((X253 @ id @ (sub @ X252 @ (push @ X259 @ id)) @ id) = $true)) | ($true = (X253 @ id @ (lam @ (sub @ X252 @ (push @ one @ sh))) @ id))) => ! [X260 : subst > term > subst > $o,X261 : term] : (~! [X262 : term] : (~($true = (X260 @ id @ X262 @ id)) | ($true = (X260 @ id @ (sub @ X261 @ (push @ X262 @ id)) @ id))) | ($true = (X260 @ id @ (lam @ X261) @ id)) | ~! [X263 : subst > term > term] : (~! [X264 : term] : (($true = (X260 @ id @ (X263 @ id @ X264) @ id)) | ~($true = (X260 @ id @ X264 @ id))) | ~! [X265 : term,X266 : subst,X267 : subst] : ((sub @ (X263 @ X267 @ X265) @ X266) = (X263 @ (comp @ X267 @ X266) @ (sub @ X265 @ X266))) | ($true = (X260 @ id @ (lam @ (X263 @ sh @ one)) @ id))))))) & (axclos = $true) & (hoasinduction_lem2_lthm = $true) & ((shinj = $true) <=> ! [X268 : term,X269 : term] : (((sub @ X269 @ sh) != (sub @ X268 @ sh)) | (X268 = X269))) & (! [X270 : subst] : ((push @ (sub @ one @ X270) @ (comp @ sh @ X270)) = X270) <=> (axscons = $true)) & (! [X271 : subst] : ((comp @ X271 @ id) = X271) <=> (axidr = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X272 : subst > term > subst > $o] : ~! [X273 : term > $o] : ~! [X274 : term] : ((X272 @ id @ X274 @ id) = (X273 @ X274))) & (pushprop = $true) & ! [X275 : d_subst] : (d_id = X275) & ((! [X276 : term > $o,X277 : term] : (((X276 @ X277) = $true) | ~! [X278 : term] : (($true = (X276 @ (lam @ X278))) | ~! [X279 : term] : (($true = (X276 @ (sub @ X278 @ (push @ X279 @ id)))) | ~($true = (X276 @ X279)))) | ~! [X280 : term] : (~($true = (var @ X280)) | ($true = (X276 @ X280))) | ~! [X281 : term,X282 : term] : (~((X276 @ X281) = $true) | ((X276 @ (ap @ X282 @ X281)) = $true) | ~($true = (X276 @ X282)))) => (! [X283 : term,X284 : term,X285 : subst > term > subst > $o] : (~($true = (X285 @ id @ X283 @ id)) | ~((X285 @ id @ X284 @ id) = $true) | ($true = (X285 @ id @ (ap @ X284 @ X283) @ id)) | ~! [X286 : term,X287 : term] : (($true = (X285 @ id @ (ap @ (sub @ X287 @ id) @ X286) @ id)) | ~($true = (X285 @ id @ X287 @ id)) | ~($true = (X285 @ id @ X286 @ id))) | ~! [X288 : subst,X289 : subst,X290 : term,X291 : subst] : (($true = (X285 @ (comp @ X288 @ X289) @ (sub @ X290 @ X289) @ X291)) | ~($true = (X285 @ X288 @ X290 @ (comp @ X289 @ X291)))) | ~! [X292 : term,X293 : subst,X294 : subst,X295 : subst] : (($true = (X285 @ X293 @ X292 @ (comp @ X294 @ X295))) | ~($true = (X285 @ (comp @ X293 @ X294) @ (sub @ X292 @ X294) @ X295)))) => (! [X296 : subst > term > subst > $o,X297 : term] : (~! [X298 : term] : (($true = (X296 @ id @ (sub @ X297 @ (push @ X298 @ id)) @ id)) | ~($true = (X296 @ id @ X298 @ id))) | ~! [X299 : subst,X300 : term,X301 : subst,X302 : subst] : (($true = (X296 @ X302 @ X300 @ (comp @ X299 @ X301))) | ~($true = (X296 @ (comp @ X302 @ X299) @ (sub @ X300 @ X299) @ X301))) | ($true = (X296 @ id @ (lam @ X297) @ id)) | ~! [X303 : subst > term > term] : (~! [X304 : term] : (~((X296 @ id @ X304 @ id) = $true) | ($true = (X296 @ id @ (X303 @ id @ X304) @ id))) | ($true = (X296 @ id @ (lam @ (X303 @ sh @ one)) @ id)) | ~! [X305 : term,X306 : subst,X307 : subst] : ((sub @ (X303 @ X307 @ X305) @ X306) = (X303 @ (comp @ X307 @ X306) @ (sub @ X305 @ X306)))) | ~! [X308 : term,X309 : subst,X310 : subst,X311 : subst] : (~($true = (X296 @ X310 @ X308 @ (comp @ X311 @ X309))) | ($true = (X296 @ (comp @ X310 @ X311) @ (sub @ X308 @ X311) @ X309)))) => ! [X312 : subst > term > subst > $o,X313 : term] : (~! [X314 : term,X315 : term] : (~((X312 @ id @ X314 @ id) = $true) | ((X312 @ id @ (ap @ (sub @ X314 @ id) @ X315) @ id) = $true) | ~($true = (X312 @ id @ X315 @ id))) | ~! [X316 : term,X317 : subst,X318 : subst,X319 : subst] : (($true = (X312 @ X318 @ X316 @ (comp @ X317 @ X319))) | ~($true = (X312 @ (comp @ X318 @ X317) @ (sub @ X316 @ X317) @ X319))) | ~! [X320 : subst > term > term] : (~! [X321 : term,X322 : subst,X323 : subst] : ((sub @ (X320 @ X323 @ X321) @ X322) = (X320 @ (comp @ X323 @ X322) @ (sub @ X321 @ X322))) | ($true = (X312 @ id @ (lam @ (X320 @ sh @ one)) @ id)) | ~! [X324 : term] : (~($true = (X312 @ id @ X324 @ id)) | ($true = (X312 @ id @ (X320 @ id @ X324) @ id)))) | ($true = (X312 @ id @ X313 @ id)) | ~! [X325 : term] : (($true = (X312 @ id @ X325 @ id)) | ~($true = (var @ (sub @ X325 @ id)))) | ~! [X326 : subst,X327 : term,X328 : subst,X329 : subst] : (~($true = (X312 @ X328 @ X327 @ (comp @ X326 @ X329))) | ($true = (X312 @ (comp @ X328 @ X326) @ (sub @ X327 @ X326) @ X329))))))) <=> (hoasinduction_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & ((induction2_lthm = $true) <=> (! [X330 : term] : ((sub @ X330 @ id) = X330) => (! [X331 : term,X332 : subst,X333 : term > $o] : (($true = (X333 @ (sub @ X331 @ X332))) | ~! [X334 : term,X335 : term] : (~($true = (X333 @ X334)) | ~($true = (X333 @ X335)) | ($true = (X333 @ (ap @ X334 @ X335)))) | ~! [X336 : term] : (($true = (X333 @ (sub @ X336 @ X332))) | ~($true = (var @ X336))) | ~! [X337 : term] : (~! [X338 : term] : (~($true = (X333 @ X338)) | ((X333 @ (sub @ X337 @ (push @ X338 @ id))) = $true)) | ($true = (X333 @ (lam @ X337))))) => ! [X339 : term > $o,X340 : term] : (~! [X341 : term,X342 : term] : (~($true = (X339 @ X341)) | ~((X339 @ X342) = $true) | ($true = (X339 @ (ap @ X341 @ X342)))) | ~! [X343 : term] : (($true = (X339 @ X343)) | ~($true = (var @ X343))) | ~! [X344 : term] : (($true = (X339 @ (lam @ X344))) | ~! [X345 : term] : (~($true = (X339 @ X345)) | ($true = (X339 @ (sub @ X344 @ (push @ X345 @ id)))))) | ($true = (X339 @ X340)))))) & (hoasinduction_lem1_lthm = $true) & ((apinj2 = $true) <=> ! [X346 : term,X347 : term,X348 : term,X349 : term] : (((ap @ X346 @ X349) != (ap @ X348 @ X347)) | (X347 = X349))) & ((pushprop_lem0 = $true) <=> ! [X350 : term,X351 : term > $o,X352 : subst] : ~! [X353 : term > $o] : ~! [X354 : term] : ((X351 @ (sub @ X354 @ (push @ X350 @ X352))) = (X353 @ X354))) & (hoasapinj1_gthm = $true) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem2v2 = $true) <=> ! [X355 : term > $o,X356 : subst > term > subst > $o,X357 : term,X358 : term] : (~! [X359 : term,X360 : subst,X361 : subst,X362 : subst] : (($true = (X356 @ (comp @ X360 @ X362) @ (sub @ X359 @ X362) @ X361)) | ~($true = (X356 @ X360 @ X359 @ (comp @ X362 @ X361)))) | ~! [X363 : term,X364 : term] : (($true = (X356 @ id @ (ap @ (sub @ X363 @ id) @ X364) @ id)) | ~($true = (X356 @ id @ X363 @ id)) | ~($true = (X356 @ id @ X364 @ id))) | ~($true = (X355 @ X357)) | ~($true = (X355 @ X358)) | ($true = (X355 @ (ap @ X358 @ X357))) | ~! [X365 : term,X366 : subst,X367 : subst,X368 : subst] : (($true = (X356 @ X366 @ X365 @ (comp @ X367 @ X368))) | ~($true = (X356 @ (comp @ X366 @ X367) @ (sub @ X365 @ X367) @ X368))) | ~! [X369 : term] : ((X356 @ id @ X369 @ id) = (X355 @ X369)))) & ((hoaslamnotap = $true) <=> ! [X370 : subst > term > term,X371 : term,X372 : term] : (~! [X373 : term,X374 : subst,X375 : subst] : ((sub @ (X370 @ X375 @ X373) @ X374) = (X370 @ (comp @ X375 @ X374) @ (sub @ X373 @ X374))) | ((ap @ (sub @ X372 @ id) @ X371) != (lam @ (X370 @ sh @ one))))) & (! [X376 : term > $o,X377 : term] : (~! [X378 : term] : (~! [X379 : term] : (~($true = (X376 @ X379)) | ($true = (X376 @ (sub @ X378 @ (push @ X379 @ id))))) | ($true = (X376 @ (lam @ X378)))) | ~! [X380 : term] : (~($true = (var @ X380)) | ($true = (X376 @ X380))) | ~! [X381 : term,X382 : term] : (~($true = (X376 @ X381)) | ($true = (X376 @ (ap @ X382 @ X381))) | ~($true = (X376 @ X382))) | ($true = (X376 @ X377))) <=> (induction2 = $true)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X383 : term] : ~! [X384 : subst > term > term] : ~! [X385 : subst,X386 : term] : ((X384 @ X385 @ X386) = (sub @ X383 @ (push @ X386 @ X385))) => (! [X387 : term] : ((sub @ X387 @ id) = X387) => ! [X388 : subst > term > subst > $o,X389 : term > $o,X390 : term] : (((X389 @ (lam @ X390)) = $true) | ~! [X391 : subst > term > term] : (~! [X392 : subst,X393 : subst,X394 : term] : ((sub @ (X391 @ X393 @ X394) @ X392) = (X391 @ (comp @ X393 @ X392) @ (sub @ X394 @ X392))) | ~! [X395 : term] : (~($true = (X388 @ id @ X395 @ id)) | ($true = (X388 @ id @ (X391 @ id @ X395) @ id))) | ($true = (X388 @ id @ (lam @ (X391 @ sh @ one)) @ id))) | ~! [X396 : term] : (($true = (X389 @ (sub @ X390 @ (push @ X396 @ id)))) | ~((X389 @ X396) = $true)) | ~! [X397 : term] : ((X388 @ id @ X397 @ id) = (X389 @ X397)))))) & ! [X398 : subst] : ? [X399 : d_subst] : ((d2subst @ X399) = X398) & ((hoaslaminj_lthm = $true) <=> (! [X400 : term,X401 : subst] : ((sub @ one @ (push @ X400 @ X401)) = X400) => (! [X402 : term,X403 : subst] : ((comp @ sh @ (push @ X402 @ X403)) = X403) => (! [X404 : term,X405 : term] : ((X404 = X405) | ((lam @ X404) != (lam @ X405))) => ! [X406 : term,X407 : subst > term > term,X408 : subst,X409 : subst > term > term] : (~! [X410 : subst,X411 : term,X412 : subst] : ((sub @ (X407 @ X412 @ X411) @ X410) = (X407 @ (comp @ X412 @ X410) @ (sub @ X411 @ X410))) | ((X407 @ X408 @ X406) = (X409 @ X408 @ X406)) | ~! [X413 : term,X414 : subst,X415 : subst] : ((sub @ (X409 @ X414 @ X413) @ X415) = (X409 @ (comp @ X414 @ X415) @ (sub @ X413 @ X415))) | ((lam @ (X409 @ sh @ one)) != (lam @ (X407 @ sh @ one)))))))) & (induction2lem_gthm = $true) & (! [X416 : term,X417 : subst] : ((comp @ sh @ (push @ X416 @ X417)) = X417) <=> (axshiftcons = $true)) & ((pushprop_lem1v2_lthm = $true) <=> (! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418) => ! [X420 : term,X421 : term > $o,X422 : term > $o,X423 : subst] : (~($true = (X422 @ X420)) | ~! [X424 : term] : ((X422 @ (sub @ X424 @ (push @ X420 @ X423))) = (X421 @ X424)) | ($true = (X421 @ one))))) & (! [X425 : subst] : ((comp @ id @ X425) = X425) <=> (axidl = $true)) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & (hoaslamnotap_lthm = $true) & ((pushprop_lem1 = $true) <=> ! [X426 : subst,X427 : term > $o,X428 : term,X429 : term,X430 : term > $o] : (($true = (X427 @ (sub @ X429 @ (push @ X428 @ X426)))) | ~($true = (X430 @ X429)))) & ((hoasinduction_lem0 = $true) <=> ! [X431 : subst > term > subst > $o] : ~! [X432 : term > $o] : ~! [X433 : term] : ((X431 @ id @ X433 @ id) = (X432 @ X433))) & (! [X434 : subst > term > subst > $o,X435 : term,X436 : term] : (($true = (X434 @ id @ (ap @ X435 @ X436) @ id)) | ~! [X437 : subst,X438 : term,X439 : subst,X440 : subst] : (($true = (X434 @ (comp @ X440 @ X437) @ (sub @ X438 @ X437) @ X439)) | ~($true = (X434 @ X440 @ X438 @ (comp @ X437 @ X439)))) | ~! [X441 : subst,X442 : subst,X443 : subst,X444 : term] : (~((X434 @ (comp @ X442 @ X443) @ (sub @ X444 @ X443) @ X441) = $true) | ($true = (X434 @ X442 @ X444 @ (comp @ X443 @ X441)))) | ~! [X445 : term,X446 : term] : (($true = (X434 @ id @ (ap @ (sub @ X446 @ id) @ X445) @ id)) | ~($true = (X434 @ id @ X446 @ id)) | ~($true = (X434 @ id @ X445 @ id))) | ~($true = (X434 @ id @ X435 @ id)) | ~($true = (X434 @ id @ X436 @ id))) <=> (hoasinduction_lem2 = $true)) & (pushprop_lem3v2_lthm = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X447 : term] : ~! [X448 : subst > term > term] : ~! [X449 : term,X450 : subst] : ((X448 @ X450 @ X449) = (sub @ X447 @ (push @ X449 @ X450)))) & (pushprop_lthm_orig = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X451 : term,X452 : subst > term > subst > $o,X453 : term > $o] : (~! [X454 : term] : ((X452 @ id @ X454 @ id) = (X453 @ X454)) | ($true = (X453 @ (lam @ X451))) | ~! [X455 : subst > term > term] : (~! [X456 : term] : (($true = (X452 @ id @ (X455 @ id @ X456) @ id)) | ~($true = (X452 @ id @ X456 @ id))) | ($true = (X452 @ id @ (lam @ (X455 @ sh @ one)) @ id)) | ~! [X457 : subst,X458 : term,X459 : subst] : ((X455 @ (comp @ X457 @ X459) @ (sub @ X458 @ X459)) = (sub @ (X455 @ X457 @ X458) @ X459))) | ~! [X460 : term] : (($true = (X453 @ (sub @ X451 @ (push @ X460 @ id)))) | ~($true = (X453 @ X460))))) & (pushprop_lem2v2_gthm = $true) & (pushprop_lem1_gthm = $true) & ! [X461 : d_term,X462 : d_term] : (((d2term @ X462) = (d2term @ X461)) => (X461 = X462)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((axvarid = $true) <=> ! [X466 : term] : ((sub @ X466 @ id) = X466)) & ((hoasapinj2 = $true) <=> ! [X467 : term,X468 : term,X469 : term,X470 : term] : (((ap @ (sub @ X470 @ id) @ X468) != (ap @ (sub @ X467 @ id) @ X469)) | (X468 = X469))) & (! [X471 : subst > term > subst > $o,X472 : term] : (~! [X473 : subst > term > term] : (($true = (X471 @ id @ (lam @ (X473 @ sh @ one)) @ id)) | ~! [X474 : term] : (($true = (X471 @ id @ (X473 @ id @ X474) @ id)) | ~($true = (X471 @ id @ X474 @ id))) | ~! [X475 : subst,X476 : subst,X477 : term] : ((sub @ (X473 @ X476 @ X477) @ X475) = (X473 @ (comp @ X476 @ X475) @ (sub @ X477 @ X475)))) | ($true = (X471 @ id @ X472 @ id)) | ~! [X478 : term,X479 : term] : (~($true = (X471 @ id @ X479 @ id)) | ~($true = (X471 @ id @ X478 @ id)) | ($true = (X471 @ id @ (ap @ (sub @ X479 @ id) @ X478) @ id)))) <=> (hoasinduction_no_psi_cond = $true)) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & ((induction2lem_lthm = $true) <=> (! [X480 : term,X481 : subst] : ((sub @ one @ (push @ X480 @ X481)) = X480) => (! [X482 : term,X483 : subst] : ((comp @ sh @ (push @ X482 @ X483)) = X483) => (! [X484 : subst] : ((comp @ X484 @ id) = X484) => (! [X485 : term,X486 : term > $o] : (~! [X487 : term] : (~($true = (X486 @ X487)) | ($true = (X486 @ (lam @ X487)))) | ~! [X488 : term,X489 : term] : (~($true = (X486 @ X488)) | ($true = (X486 @ (ap @ X489 @ X488))) | ~($true = (X486 @ X489))) | ~! [X490 : term] : (($true = (X486 @ X490)) | ~($true = (var @ X490))) | ($true = (X486 @ X485))) => ! [X491 : term,X492 : term > $o,X493 : subst] : (($true = (X492 @ (sub @ X491 @ X493))) | ~! [X494 : term,X495 : term] : (($true = (X492 @ (ap @ X495 @ X494))) | ~($true = (X492 @ X494)) | ~($true = (X492 @ X495))) | ~! [X496 : term] : (~($true = (var @ X496)) | ($true = (X492 @ (sub @ X496 @ X493)))) | ~! [X497 : term] : (($true = (X492 @ (lam @ X497))) | ~! [X498 : term] : (($true = (X492 @ (sub @ X497 @ (push @ X498 @ id)))) | ~((X492 @ X498) = $true))))))))) & (axapp = $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y3 @ Y4) = (Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1)))))))))))))) & ~(ulamvar1 = $true) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem0_gthm = $true) & ((! [X504 : subst,X505 : term] : ((sub @ one @ (push @ X505 @ X504)) = X505) => (! [X506 : subst,X507 : term] : ((comp @ sh @ (push @ X507 @ X506)) = X506) => ! [X508 : term,X509 : subst,X510 : term > $o,X511 : term,X512 : term > $o] : (~($true = (X510 @ X511)) | ($true = (X512 @ (sub @ X511 @ (push @ X508 @ X509))))))) <=> (pushprop_lem1_lthm = $true)) & (hoaslamnotvar = $true) & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & ((hoasapinj2_lthm = $true) <=> (! [X513 : term,X514 : term,X515 : term,X516 : term] : ((X513 = X514) | ((ap @ X515 @ X513) != (ap @ X516 @ X514))) => ! [X517 : term,X518 : term,X519 : term,X520 : term] : (((ap @ (sub @ X517 @ id) @ X518) != (ap @ (sub @ X520 @ id) @ X519)) | (X518 = X519)))) & (hoasinduction_lem1_gthm = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X521 : term,X522 : subst > term > subst > $o] : (((X522 @ id @ (lam @ (sub @ X521 @ (push @ one @ sh))) @ id) = $true) | ~! [X523 : term,X524 : subst > term > term] : (~! [X525 : term] : (($true = (X522 @ id @ (X524 @ id @ X525) @ id)) | ~((X522 @ id @ X525 @ id) = $true)) | ($true = (X522 @ id @ (lam @ (X524 @ sh @ one)) @ id)) | ~! [X526 : subst,X527 : term,X528 : subst] : ((sub @ X523 @ (push @ (sub @ X527 @ X528) @ (comp @ X526 @ X528))) = (X524 @ (comp @ X526 @ X528) @ (sub @ X527 @ X528))) | ~! [X529 : term,X530 : subst,X531 : subst] : ((sub @ (sub @ X523 @ (push @ X529 @ X531)) @ X530) = (sub @ (X524 @ X531 @ X529) @ X530))) | ~! [X532 : term] : (~($true = (X522 @ id @ X532 @ id)) | ($true = (X522 @ id @ (sub @ X521 @ (push @ X532 @ id)) @ id))))) & ((d2subst @ d_id) = sh) & (pushprop_lem1v2_gthm = $true) & ((axvarcons = $true) <=> ! [X533 : subst,X534 : term] : ((sub @ one @ (push @ X534 @ X533)) = X534)) & ((induction2lem = $true) <=> ! [X535 : term > $o,X536 : subst,X537 : term] : (~! [X538 : term] : (~! [X539 : term] : (($true = (X535 @ (sub @ X538 @ (push @ X539 @ id)))) | ~($true = (X535 @ X539))) | ((X535 @ (lam @ X538)) = $true)) | ($true = (X535 @ (sub @ X537 @ X536))) | ~! [X540 : term,X541 : term] : (((X535 @ (ap @ X541 @ X540)) = $true) | ~($true = (X535 @ X541)) | ~((X535 @ X540) = $true)) | ~! [X542 : term] : (($true = (X535 @ (sub @ X542 @ X536))) | ~((var @ X542) = $true)))) & (lamnotvar = $true) & (one = (d2term @ d_one)) & (axvarshift = $true) & (axassoc = $true) & ((substmonoid = $true) <=> (! [X543 : subst] : ((comp @ id @ X543) = X543) & ! [X544 : subst] : ((comp @ X544 @ id) = X544))) & ((d2subst @ d_id) = id) & (! [X545 : subst,X546 : term > $o,X547 : term] : ~! [X548 : term > $o] : ~! [X549 : term] : ((X546 @ (sub @ X549 @ (push @ X547 @ X545))) = (X548 @ X549)) <=> (pushprop_lem0_lthm = $true))),
% 6.77/2.22    inference(fool_elimination,[status(thm)],[f5])).
% 6.77/2.22  thf(f5,plain,(
% 6.77/2.22    ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ~lamnotap & hoasapnotvar_gthm & hoaslaminj_gthm & (termmset_lthm <=> (! [X0 : term] : ((sub @ X0 @ id) = X0) => ! [X1 : term] : ((sub @ X1 @ id) = X1))) & ulamvarsh & hoasinduction_lem1v2 & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & apnotvar & (! [X2 : term,X3 : subst > term > subst > $o] : (~! [X4 : subst > term > term] : (~! [X5 : term] : (~(X3 @ id @ X5 @ id) | (X3 @ id @ (X4 @ id @ X5) @ id)) | ~! [X6 : subst,X7 : subst,X8 : term] : ((X4 @ (comp @ X7 @ X6) @ (sub @ X8 @ X6)) = (sub @ (X4 @ X7 @ X8) @ X6)) | (X3 @ id @ (lam @ (X4 @ sh @ one)) @ id)) | (X3 @ id @ (lam @ (sub @ X2 @ (push @ one @ sh))) @ id) | ~! [X9 : term] : (~(X3 @ id @ X9 @ id) | (X3 @ id @ (sub @ X2 @ (push @ X9 @ id)) @ id))) <=> hoasinduction_lem3aa_lthm) & (hoasinduction_no_psi_cond_lthm <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X13 : term,X14 : term > $o] : (~! [X15 : term,X16 : term] : ((X14 @ (ap @ X16 @ X15)) | ~(X14 @ X15) | ~(X14 @ X16)) | ~! [X17 : term] : (~(var @ X17) | (X14 @ X17)) | (X14 @ X13) | ~! [X18 : term] : (~! [X19 : term] : (~(X14 @ X19) | (X14 @ (sub @ X18 @ (push @ X19 @ id)))) | (X14 @ (lam @ X18)))) => (! [X20 : term] : ((sub @ X20 @ id) = X20) => (! [X21 : subst > term > subst > $o,X22 : term > $o,X23 : term] : ((X22 @ (lam @ X23)) | ~! [X24 : term] : ((X21 @ id @ X24 @ id) = (X22 @ X24)) | ~! [X25 : term] : (~(X22 @ X25) | (X22 @ (sub @ X23 @ (push @ X25 @ id)))) | ~! [X26 : subst > term > term] : ((X21 @ id @ (lam @ (X26 @ sh @ one)) @ id) | ~! [X27 : subst,X28 : term,X29 : subst] : ((sub @ (X26 @ X29 @ X28) @ X27) = (X26 @ (comp @ X29 @ X27) @ (sub @ X28 @ X27))) | ~! [X30 : term] : (~(X21 @ id @ X30 @ id) | (X21 @ id @ (X26 @ id @ X30) @ id)))) => ! [X31 : subst > term > subst > $o,X32 : term] : ((X31 @ id @ X32 @ id) | ~! [X33 : term,X34 : term] : (~(X31 @ id @ X33 @ id) | (X31 @ id @ (ap @ (sub @ X33 @ id) @ X34) @ id) | ~(X31 @ id @ X34 @ id)) | ~! [X35 : subst > term > term] : (~! [X36 : term] : (~(X31 @ id @ X36 @ id) | (X31 @ id @ (X35 @ id @ X36) @ id)) | (X31 @ id @ (lam @ (X35 @ sh @ one)) @ id) | ~! [X37 : subst,X38 : subst,X39 : term] : ((X35 @ (comp @ X38 @ X37) @ (sub @ X39 @ X37)) = (sub @ (X35 @ X38 @ X39) @ X37))))))))) & (hoasinduction_lem3b_lthm <=> ! [X40 : term] : ~! [X41 : subst > term > term] : ((sub @ X40 @ (push @ one @ sh)) != (X41 @ sh @ one))) & axmap & hoaslamnotvar_lthm & hoasinduction_lem3_gthm & hoasinduction_gthm & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ! [X42 : term] : ? [X43 : d_term] : ((d2term @ X43) = X42) & ! [X44 : d_subst,X45 : d_subst] : (((d2subst @ X44) = (d2subst @ X45)) => (X44 = X45)) & termmset_gthm & (! [X46 : term,X47 : term] : ((X46 = X47) | ((lam @ X47) != (lam @ X46))) <=> laminj) & (! [X48 : term] : ~! [X49 : subst > term > term] : ~! [X50 : term,X51 : subst] : ((sub @ X48 @ (push @ X50 @ X51)) = (X49 @ X51 @ X50)) <=> hoasinduction_lem3v2_f_lthm) & (pushprop_lem1v2 <=> ! [X52 : subst,X53 : term > $o,X54 : term,X55 : term > $o] : (~(X53 @ X54) | (X55 @ one) | ~! [X56 : term] : ((X53 @ (sub @ X56 @ (push @ X54 @ X52))) = (X55 @ X56)))) & (induction <=> ! [X57 : term > $o,X58 : term] : (~! [X59 : term] : ((X57 @ X59) | ~(var @ X59)) | ~! [X60 : term] : ((X57 @ (lam @ X60)) | ~(X57 @ X60)) | (X57 @ X58) | ~! [X61 : term,X62 : term] : ((X57 @ (ap @ X62 @ X61)) | ~(X57 @ X61) | ~(X57 @ X62)))) & (! [X63 : term,X64 : subst > term > subst > $o] : (~! [X65 : term] : (~(X64 @ id @ X65 @ id) | (X64 @ id @ (sub @ X63 @ (push @ X65 @ id)) @ id)) | (X64 @ id @ (lam @ X63) @ id) | ~! [X66 : subst > term > term] : (~! [X67 : term] : ((X64 @ id @ (X66 @ id @ X67) @ id) | ~(X64 @ id @ X67 @ id)) | (X64 @ id @ (lam @ (X66 @ sh @ one)) @ id) | ~! [X68 : term,X69 : subst,X70 : subst] : ((X66 @ (comp @ X69 @ X70) @ (sub @ X68 @ X70)) = (sub @ (X66 @ X69 @ X68) @ X70)))) <=> hoasinduction_lem3a) & (substmonoid_lthm <=> (! [X71 : subst] : ((comp @ id @ X71) = X71) => (! [X72 : subst] : ((comp @ X72 @ id) = X72) => (! [X73 : subst] : ((comp @ X73 @ id) = X73) & ! [X74 : subst] : ((comp @ id @ X74) = X74))))) & (hoasinduction_lem3v2 <=> ! [X75 : term > $o,X76 : subst > term > subst > $o,X77 : term] : (~! [X78 : term,X79 : subst,X80 : subst,X81 : subst] : ((X76 @ X79 @ X78 @ (comp @ X81 @ X80)) | ~(X76 @ (comp @ X79 @ X81) @ (sub @ X78 @ X81) @ X80)) | ~! [X82 : subst > term > term] : (~! [X83 : term] : (~(X76 @ id @ X83 @ id) | (X76 @ id @ (X82 @ id @ X83) @ id)) | (X76 @ id @ (lam @ (X82 @ sh @ one)) @ id) | ~! [X84 : term,X85 : subst,X86 : subst] : ((X82 @ (comp @ X86 @ X85) @ (sub @ X84 @ X85)) = (sub @ (X82 @ X86 @ X84) @ X85))) | (X75 @ (lam @ X77)) | ~! [X87 : term] : ((X75 @ X87) = (X76 @ id @ X87 @ id)) | ~! [X88 : subst,X89 : subst,X90 : term,X91 : subst] : (~(X76 @ X91 @ X90 @ (comp @ X89 @ X88)) | (X76 @ (comp @ X91 @ X89) @ (sub @ X90 @ X89) @ X88)) | ~! [X92 : term] : (~(X75 @ X92) | (X75 @ (sub @ X77 @ (push @ X92 @ id)))))) & pushprop_lem2v2 & hoasinduction_lem1v2_gthm & (hoasinduction <=> ! [X93 : subst > term > subst > $o,X94 : term] : (~! [X95 : subst > term > term] : (~! [X96 : term] : ((X93 @ id @ (X95 @ id @ X96) @ id) | ~(X93 @ id @ X96 @ id)) | ~! [X97 : term,X98 : subst,X99 : subst] : ((X95 @ (comp @ X99 @ X98) @ (sub @ X97 @ X98)) = (sub @ (X95 @ X99 @ X97) @ X98)) | (X93 @ id @ (lam @ (X95 @ sh @ one)) @ id)) | ~! [X100 : term,X101 : term] : (~(X93 @ id @ X101 @ id) | ~(X93 @ id @ X100 @ id) | (X93 @ id @ (ap @ (sub @ X100 @ id) @ X101) @ id)) | ~! [X102 : term,X103 : subst,X104 : subst,X105 : subst] : (~(X93 @ X104 @ X102 @ (comp @ X103 @ X105)) | (X93 @ (comp @ X104 @ X103) @ (sub @ X102 @ X103) @ X105)) | (X93 @ id @ X94 @ id) | ~! [X106 : subst,X107 : subst,X108 : subst,X109 : term] : (~(X93 @ (comp @ X107 @ X106) @ (sub @ X109 @ X106) @ X108) | (X93 @ X107 @ X109 @ (comp @ X106 @ X108))) | ~! [X110 : term] : (~(var @ (sub @ X110 @ id)) | (X93 @ id @ X110 @ id)))) & pushprop_gthm & pushprop_lem3v2 & induction2_gthm & ((! [X111 : term] : ((sub @ X111 @ id) = X111) => ! [X112 : term > $o,X113 : term,X114 : subst > term > subst > $o] : (~! [X115 : term] : ((X114 @ id @ X115 @ id) = (X112 @ X115)) | ~! [X116 : term,X117 : subst,X118 : subst,X119 : subst] : (~(X114 @ X119 @ X116 @ (comp @ X117 @ X118)) | (X114 @ (comp @ X119 @ X117) @ (sub @ X116 @ X117) @ X118)) | ~! [X120 : term] : ((X112 @ (sub @ X113 @ (push @ X120 @ id))) | ~(X112 @ X120)) | ~! [X121 : subst > term > term] : ((X114 @ id @ (lam @ (X121 @ sh @ one)) @ id) | ~! [X122 : term] : (~(X114 @ id @ X122 @ id) | (X114 @ id @ (X121 @ id @ X122) @ id)) | ~! [X123 : subst,X124 : subst,X125 : term] : ((X121 @ (comp @ X123 @ X124) @ (sub @ X125 @ X124)) = (sub @ (X121 @ X123 @ X125) @ X124))) | (X112 @ (lam @ X113)) | ~! [X126 : subst,X127 : term,X128 : subst,X129 : subst] : (~(X114 @ (comp @ X128 @ X129) @ (sub @ X127 @ X129) @ X126) | (X114 @ X128 @ X127 @ (comp @ X129 @ X126))))) <=> hoasinduction_lem3v2_lthm) & hoasapnotvar & substmonoid_gthm & (hoasinduction_lem3b <=> ! [X130 : term] : ~! [X131 : subst > term > term] : ((X131 @ sh @ one) != (sub @ X130 @ (push @ one @ sh)))) & ! [X132 : d_term] : (d_one = X132) & ulamvarind & pushprop_lem2v2_lthm & (hoasapinj1 <=> ! [X133 : term,X134 : term,X135 : term,X136 : term] : (((ap @ (sub @ X133 @ id) @ X135) != (ap @ (sub @ X136 @ id) @ X134)) | (X133 = X136))) & axabs & hoasinduction_lem3b_gthm & ~(var @ (d2term @ d_one)) & hoasinduction_lem3v2_gthm & (! [X137 : term,X138 : subst > term > subst > $o] : (~! [X139 : term] : (~(X138 @ id @ X139 @ id) | (X138 @ id @ (sub @ X137 @ (push @ X139 @ id)) @ id)) | ~! [X140 : subst > term > term] : ((X138 @ id @ (lam @ (X140 @ sh @ one)) @ id) | ~! [X141 : term] : ((X138 @ id @ (X140 @ id @ X141) @ id) | ~(X138 @ id @ X141 @ id)) | ~! [X142 : term,X143 : subst,X144 : subst] : ((sub @ (X140 @ X144 @ X142) @ X143) = (X140 @ (comp @ X144 @ X143) @ (sub @ X142 @ X143)))) | (X138 @ id @ (lam @ (sub @ X137 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aa) & (! [X145 : subst > term > term,X146 : subst,X147 : subst > term > term,X148 : term] : (~! [X149 : subst,X150 : term,X151 : subst] : ((sub @ (X145 @ X151 @ X150) @ X149) = (X145 @ (comp @ X151 @ X149) @ (sub @ X150 @ X149))) | ((X147 @ X146 @ X148) = (X145 @ X146 @ X148)) | ((lam @ (X147 @ sh @ one)) != (lam @ (X145 @ sh @ one))) | ~! [X152 : term,X153 : subst,X154 : subst] : ((X147 @ (comp @ X154 @ X153) @ (sub @ X152 @ X153)) = (sub @ (X147 @ X154 @ X152) @ X153))) <=> hoaslaminj) & hoasapnotvar_lthm & hoasinduction_lem1 & hoaslamnotap_gthm & hoaslamnotvar_gthm & (! [X155 : term,X156 : term,X157 : term,X158 : term] : (((ap @ X156 @ X155) != (ap @ X157 @ X158)) | (X156 = X157)) <=> apinj1) & (hoasinduction_lem3_lthm <=> (! [X159 : term] : ((sub @ X159 @ id) = X159) => (! [X160 : term,X161 : subst > term > subst > $o] : (~! [X162 : term] : ((X161 @ id @ (sub @ X160 @ (push @ X162 @ id)) @ id) | ~(X161 @ id @ X162 @ id)) | ~! [X163 : subst > term > term] : (~! [X164 : term] : ((X161 @ id @ (X163 @ id @ X164) @ id) | ~(X161 @ id @ X164 @ id)) | (X161 @ id @ (lam @ (X163 @ sh @ one)) @ id) | ~! [X165 : term,X166 : subst,X167 : subst] : ((X163 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)) = (sub @ (X163 @ X166 @ X165) @ X167))) | (X161 @ id @ (lam @ (sub @ X160 @ (push @ one @ sh))) @ id)) => ! [X168 : subst > term > subst > $o,X169 : term] : (~! [X170 : subst > term > term] : ((X168 @ id @ (lam @ (X170 @ sh @ one)) @ id) | ~! [X171 : term,X172 : subst,X173 : subst] : ((X170 @ (comp @ X172 @ X173) @ (sub @ X171 @ X173)) = (sub @ (X170 @ X172 @ X171) @ X173)) | ~! [X174 : term] : (~(X168 @ id @ X174 @ id) | (X168 @ id @ (X170 @ id @ X174) @ id))) | ~! [X175 : subst,X176 : term,X177 : subst,X178 : subst] : (~(X168 @ X177 @ X176 @ (comp @ X178 @ X175)) | (X168 @ (comp @ X177 @ X178) @ (sub @ X176 @ X178) @ X175)) | (X168 @ id @ (lam @ X169) @ id) | ~! [X179 : term] : (~(X168 @ id @ X179 @ id) | (X168 @ id @ (sub @ X169 @ (push @ X179 @ id)) @ id)) | ~! [X180 : term,X181 : subst,X182 : subst,X183 : subst] : ((X168 @ X181 @ X180 @ (comp @ X183 @ X182)) | ~(X168 @ (comp @ X181 @ X183) @ (sub @ X180 @ X183) @ X182)))))) & ((^[X184 : subst, X185 : subst > term > term] : (d2term @ d_one)) = hoaslam) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X186 : term] : ((sub @ X186 @ id) = X186) <=> termmset) & (hoasapinj1_lthm <=> (! [X187 : term] : ((sub @ X187 @ id) = X187) => (! [X188 : term,X189 : term,X190 : term,X191 : term] : ((X189 = X191) | ((ap @ X191 @ X190) != (ap @ X189 @ X188))) => ! [X192 : term,X193 : term,X194 : term,X195 : term] : (((ap @ (sub @ X194 @ id) @ X193) != (ap @ (sub @ X192 @ id) @ X195)) | (X192 = X194))))) & (hoasinduction_lthm_3 <=> (! [X196 : subst > term > subst > $o] : ~! [X197 : term > $o] : ~! [X198 : term] : ((X197 @ X198) = (X196 @ id @ X198 @ id)) => (! [X199 : term > $o,X200 : term] : ((X199 @ X200) | ~! [X201 : term] : (~(var @ X201) | (X199 @ X201)) | ~! [X202 : term,X203 : term] : ((X199 @ (ap @ X203 @ X202)) | ~(X199 @ X202) | ~(X199 @ X203)) | ~! [X204 : term] : (~! [X205 : term] : (~(X199 @ X205) | (X199 @ (sub @ X204 @ (push @ X205 @ id)))) | (X199 @ (lam @ X204)))) => (! [X206 : term] : ((sub @ X206 @ id) = X206) => (! [X207 : term > $o,X208 : term,X209 : subst > term > subst > $o] : (~! [X210 : subst > term > term] : (~! [X211 : subst,X212 : subst,X213 : term] : ((sub @ (X210 @ X211 @ X213) @ X212) = (X210 @ (comp @ X211 @ X212) @ (sub @ X213 @ X212))) | (X209 @ id @ (lam @ (X210 @ sh @ one)) @ id) | ~! [X214 : term] : (~(X209 @ id @ X214 @ id) | (X209 @ id @ (X210 @ id @ X214) @ id))) | ~! [X215 : term] : (~(X207 @ X215) | (X207 @ (sub @ X208 @ (push @ X215 @ id)))) | (X207 @ (lam @ X208)) | ~! [X216 : term] : ((X209 @ id @ X216 @ id) = (X207 @ X216))) => ! [X217 : term,X218 : subst > term > subst > $o] : (~! [X219 : term,X220 : subst,X221 : subst,X222 : subst] : ((X218 @ (comp @ X221 @ X220) @ (sub @ X219 @ X220) @ X222) | ~(X218 @ X221 @ X219 @ (comp @ X220 @ X222))) | ~! [X223 : subst > term > term] : (~! [X224 : subst,X225 : term,X226 : subst] : ((sub @ (X223 @ X224 @ X225) @ X226) = (X223 @ (comp @ X224 @ X226) @ (sub @ X225 @ X226))) | (X218 @ id @ (lam @ (X223 @ sh @ one)) @ id) | ~! [X227 : term] : ((X218 @ id @ (X223 @ id @ X227) @ id) | ~(X218 @ id @ X227 @ id))) | ~! [X228 : subst,X229 : term,X230 : subst,X231 : subst] : (~(X218 @ (comp @ X231 @ X228) @ (sub @ X229 @ X228) @ X230) | (X218 @ X231 @ X229 @ (comp @ X228 @ X230))) | ~! [X232 : term] : ((X218 @ id @ X232 @ id) | ~(var @ (sub @ X232 @ id))) | (X218 @ id @ X217 @ id) | ~! [X233 : term,X234 : term] : (~(X218 @ id @ X234 @ id) | (X218 @ id @ (ap @ (sub @ X233 @ id) @ X234) @ id) | ~(X218 @ id @ X233 @ id)))))))) & hoasinduction_lem2_gthm & (hoasinduction_lem3 <=> ! [X235 : subst > term > subst > $o,X236 : term] : ((X235 @ id @ (lam @ X236) @ id) | ~! [X237 : subst,X238 : subst,X239 : subst,X240 : term] : ((X235 @ (comp @ X238 @ X237) @ (sub @ X240 @ X237) @ X239) | ~(X235 @ X238 @ X240 @ (comp @ X237 @ X239))) | ~! [X241 : subst > term > term] : (~! [X242 : term] : (~(X235 @ id @ X242 @ id) | (X235 @ id @ (X241 @ id @ X242) @ id)) | ~! [X243 : subst,X244 : subst,X245 : term] : ((sub @ (X241 @ X244 @ X245) @ X243) = (X241 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243))) | (X235 @ id @ (lam @ (X241 @ sh @ one)) @ id)) | ~! [X246 : term] : ((X235 @ id @ (sub @ X236 @ (push @ X246 @ id)) @ id) | ~(X235 @ id @ X246 @ id)) | ~! [X247 : term,X248 : subst,X249 : subst,X250 : subst] : (~(X235 @ (comp @ X250 @ X249) @ (sub @ X247 @ X249) @ X248) | (X235 @ X250 @ X247 @ (comp @ X249 @ X248))))) & (hoasinduction_lem3a_lthm <=> (! [X251 : term] : ((sub @ X251 @ id) = X251) => (! [X252 : term,X253 : subst > term > subst > $o] : (~! [X254 : subst > term > term] : (~! [X255 : subst,X256 : term,X257 : subst] : ((sub @ (X254 @ X255 @ X256) @ X257) = (X254 @ (comp @ X255 @ X257) @ (sub @ X256 @ X257))) | (X253 @ id @ (lam @ (X254 @ sh @ one)) @ id) | ~! [X258 : term] : (~(X253 @ id @ X258 @ id) | (X253 @ id @ (X254 @ id @ X258) @ id))) | ~! [X259 : term] : (~(X253 @ id @ X259 @ id) | (X253 @ id @ (sub @ X252 @ (push @ X259 @ id)) @ id)) | (X253 @ id @ (lam @ (sub @ X252 @ (push @ one @ sh))) @ id)) => ! [X260 : subst > term > subst > $o,X261 : term] : (~! [X262 : term] : (~(X260 @ id @ X262 @ id) | (X260 @ id @ (sub @ X261 @ (push @ X262 @ id)) @ id)) | (X260 @ id @ (lam @ X261) @ id) | ~! [X263 : subst > term > term] : (~! [X264 : term] : ((X260 @ id @ (X263 @ id @ X264) @ id) | ~(X260 @ id @ X264 @ id)) | ~! [X265 : term,X266 : subst,X267 : subst] : ((sub @ (X263 @ X267 @ X265) @ X266) = (X263 @ (comp @ X267 @ X266) @ (sub @ X265 @ X266))) | (X260 @ id @ (lam @ (X263 @ sh @ one)) @ id)))))) & axclos & hoasinduction_lem2_lthm & (shinj <=> ! [X268 : term,X269 : term] : (((sub @ X269 @ sh) != (sub @ X268 @ sh)) | (X268 = X269))) & (! [X270 : subst] : ((push @ (sub @ one @ X270) @ (comp @ sh @ X270)) = X270) <=> axscons) & (! [X271 : subst] : ((comp @ X271 @ id) = X271) <=> axidr) & (hoasinduction_lem0_lthm <=> ! [X272 : subst > term > subst > $o] : ~! [X273 : term > $o] : ~! [X274 : term] : ((X272 @ id @ X274 @ id) = (X273 @ X274))) & pushprop & ! [X275 : d_subst] : (d_id = X275) & ((! [X276 : term > $o,X277 : term] : ((X276 @ X277) | ~! [X278 : term] : ((X276 @ (lam @ X278)) | ~! [X279 : term] : ((X276 @ (sub @ X278 @ (push @ X279 @ id))) | ~(X276 @ X279))) | ~! [X280 : term] : (~(var @ X280) | (X276 @ X280)) | ~! [X281 : term,X282 : term] : (~(X276 @ X281) | (X276 @ (ap @ X282 @ X281)) | ~(X276 @ X282))) => (! [X283 : term,X284 : term,X285 : subst > term > subst > $o] : (~(X285 @ id @ X283 @ id) | ~(X285 @ id @ X284 @ id) | (X285 @ id @ (ap @ X284 @ X283) @ id) | ~! [X286 : term,X287 : term] : ((X285 @ id @ (ap @ (sub @ X287 @ id) @ X286) @ id) | ~(X285 @ id @ X287 @ id) | ~(X285 @ id @ X286 @ id)) | ~! [X288 : subst,X289 : subst,X290 : term,X291 : subst] : ((X285 @ (comp @ X288 @ X289) @ (sub @ X290 @ X289) @ X291) | ~(X285 @ X288 @ X290 @ (comp @ X289 @ X291))) | ~! [X292 : term,X293 : subst,X294 : subst,X295 : subst] : ((X285 @ X293 @ X292 @ (comp @ X294 @ X295)) | ~(X285 @ (comp @ X293 @ X294) @ (sub @ X292 @ X294) @ X295))) => (! [X296 : subst > term > subst > $o,X297 : term] : (~! [X298 : term] : ((X296 @ id @ (sub @ X297 @ (push @ X298 @ id)) @ id) | ~(X296 @ id @ X298 @ id)) | ~! [X299 : subst,X300 : term,X301 : subst,X302 : subst] : ((X296 @ X302 @ X300 @ (comp @ X299 @ X301)) | ~(X296 @ (comp @ X302 @ X299) @ (sub @ X300 @ X299) @ X301)) | (X296 @ id @ (lam @ X297) @ id) | ~! [X303 : subst > term > term] : (~! [X304 : term] : (~(X296 @ id @ X304 @ id) | (X296 @ id @ (X303 @ id @ X304) @ id)) | (X296 @ id @ (lam @ (X303 @ sh @ one)) @ id) | ~! [X305 : term,X306 : subst,X307 : subst] : ((sub @ (X303 @ X307 @ X305) @ X306) = (X303 @ (comp @ X307 @ X306) @ (sub @ X305 @ X306)))) | ~! [X308 : term,X309 : subst,X310 : subst,X311 : subst] : (~(X296 @ X310 @ X308 @ (comp @ X311 @ X309)) | (X296 @ (comp @ X310 @ X311) @ (sub @ X308 @ X311) @ X309))) => ! [X312 : subst > term > subst > $o,X313 : term] : (~! [X314 : term,X315 : term] : (~(X312 @ id @ X314 @ id) | (X312 @ id @ (ap @ (sub @ X314 @ id) @ X315) @ id) | ~(X312 @ id @ X315 @ id)) | ~! [X316 : term,X317 : subst,X318 : subst,X319 : subst] : ((X312 @ X318 @ X316 @ (comp @ X317 @ X319)) | ~(X312 @ (comp @ X318 @ X317) @ (sub @ X316 @ X317) @ X319)) | ~! [X320 : subst > term > term] : (~! [X321 : term,X322 : subst,X323 : subst] : ((sub @ (X320 @ X323 @ X321) @ X322) = (X320 @ (comp @ X323 @ X322) @ (sub @ X321 @ X322))) | (X312 @ id @ (lam @ (X320 @ sh @ one)) @ id) | ~! [X324 : term] : (~(X312 @ id @ X324 @ id) | (X312 @ id @ (X320 @ id @ X324) @ id))) | (X312 @ id @ X313 @ id) | ~! [X325 : term] : ((X312 @ id @ X325 @ id) | ~(var @ (sub @ X325 @ id))) | ~! [X326 : subst,X327 : term,X328 : subst,X329 : subst] : (~(X312 @ X328 @ X327 @ (comp @ X326 @ X329)) | (X312 @ (comp @ X328 @ X326) @ (sub @ X327 @ X326) @ X329)))))) <=> hoasinduction_lthm) & hoasinduction_lem3a_gthm & (induction2_lthm <=> (! [X330 : term] : ((sub @ X330 @ id) = X330) => (! [X331 : term,X332 : subst,X333 : term > $o] : ((X333 @ (sub @ X331 @ X332)) | ~! [X334 : term,X335 : term] : (~(X333 @ X334) | ~(X333 @ X335) | (X333 @ (ap @ X334 @ X335))) | ~! [X336 : term] : ((X333 @ (sub @ X336 @ X332)) | ~(var @ X336)) | ~! [X337 : term] : (~! [X338 : term] : (~(X333 @ X338) | (X333 @ (sub @ X337 @ (push @ X338 @ id)))) | (X333 @ (lam @ X337)))) => ! [X339 : term > $o,X340 : term] : (~! [X341 : term,X342 : term] : (~(X339 @ X341) | ~(X339 @ X342) | (X339 @ (ap @ X341 @ X342))) | ~! [X343 : term] : ((X339 @ X343) | ~(var @ X343)) | ~! [X344 : term] : ((X339 @ (lam @ X344)) | ~! [X345 : term] : (~(X339 @ X345) | (X339 @ (sub @ X344 @ (push @ X345 @ id))))) | (X339 @ X340))))) & hoasinduction_lem1_lthm & (apinj2 <=> ! [X346 : term,X347 : term,X348 : term,X349 : term] : (((ap @ X346 @ X349) != (ap @ X348 @ X347)) | (X347 = X349))) & (pushprop_lem0 <=> ! [X350 : term,X351 : term > $o,X352 : subst] : ~! [X353 : term > $o] : ~! [X354 : term] : ((X351 @ (sub @ X354 @ (push @ X350 @ X352))) = (X353 @ X354))) & hoasapinj1_gthm & hoasapinj2_gthm & (hoasinduction_lem2v2 <=> ! [X355 : term > $o,X356 : subst > term > subst > $o,X357 : term,X358 : term] : (~! [X359 : term,X360 : subst,X361 : subst,X362 : subst] : ((X356 @ (comp @ X360 @ X362) @ (sub @ X359 @ X362) @ X361) | ~(X356 @ X360 @ X359 @ (comp @ X362 @ X361))) | ~! [X363 : term,X364 : term] : ((X356 @ id @ (ap @ (sub @ X363 @ id) @ X364) @ id) | ~(X356 @ id @ X363 @ id) | ~(X356 @ id @ X364 @ id)) | ~(X355 @ X357) | ~(X355 @ X358) | (X355 @ (ap @ X358 @ X357)) | ~! [X365 : term,X366 : subst,X367 : subst,X368 : subst] : ((X356 @ X366 @ X365 @ (comp @ X367 @ X368)) | ~(X356 @ (comp @ X366 @ X367) @ (sub @ X365 @ X367) @ X368)) | ~! [X369 : term] : ((X356 @ id @ X369 @ id) = (X355 @ X369)))) & (hoaslamnotap <=> ! [X370 : subst > term > term,X371 : term,X372 : term] : (~! [X373 : term,X374 : subst,X375 : subst] : ((sub @ (X370 @ X375 @ X373) @ X374) = (X370 @ (comp @ X375 @ X374) @ (sub @ X373 @ X374))) | ((ap @ (sub @ X372 @ id) @ X371) != (lam @ (X370 @ sh @ one))))) & (! [X376 : term > $o,X377 : term] : (~! [X378 : term] : (~! [X379 : term] : (~(X376 @ X379) | (X376 @ (sub @ X378 @ (push @ X379 @ id)))) | (X376 @ (lam @ X378))) | ~! [X380 : term] : (~(var @ X380) | (X376 @ X380)) | ~! [X381 : term,X382 : term] : (~(X376 @ X381) | (X376 @ (ap @ X382 @ X381)) | ~(X376 @ X382)) | (X376 @ X377)) <=> induction2) & (hoasinduction_lem3v2a_lthm <=> (! [X383 : term] : ~! [X384 : subst > term > term] : ~! [X385 : subst,X386 : term] : ((X384 @ X385 @ X386) = (sub @ X383 @ (push @ X386 @ X385))) => (! [X387 : term] : ((sub @ X387 @ id) = X387) => ! [X388 : subst > term > subst > $o,X389 : term > $o,X390 : term] : ((X389 @ (lam @ X390)) | ~! [X391 : subst > term > term] : (~! [X392 : subst,X393 : subst,X394 : term] : ((sub @ (X391 @ X393 @ X394) @ X392) = (X391 @ (comp @ X393 @ X392) @ (sub @ X394 @ X392))) | ~! [X395 : term] : (~(X388 @ id @ X395 @ id) | (X388 @ id @ (X391 @ id @ X395) @ id)) | (X388 @ id @ (lam @ (X391 @ sh @ one)) @ id)) | ~! [X396 : term] : ((X389 @ (sub @ X390 @ (push @ X396 @ id))) | ~(X389 @ X396)) | ~! [X397 : term] : ((X388 @ id @ X397 @ id) = (X389 @ X397)))))) & ! [X398 : subst] : ? [X399 : d_subst] : ((d2subst @ X399) = X398) & (hoaslaminj_lthm <=> (! [X400 : term,X401 : subst] : ((sub @ one @ (push @ X400 @ X401)) = X400) => (! [X402 : term,X403 : subst] : ((comp @ sh @ (push @ X402 @ X403)) = X403) => (! [X404 : term,X405 : term] : ((X404 = X405) | ((lam @ X404) != (lam @ X405))) => ! [X406 : term,X407 : subst > term > term,X408 : subst,X409 : subst > term > term] : (~! [X410 : subst,X411 : term,X412 : subst] : ((sub @ (X407 @ X412 @ X411) @ X410) = (X407 @ (comp @ X412 @ X410) @ (sub @ X411 @ X410))) | ((X407 @ X408 @ X406) = (X409 @ X408 @ X406)) | ~! [X413 : term,X414 : subst,X415 : subst] : ((sub @ (X409 @ X414 @ X413) @ X415) = (X409 @ (comp @ X414 @ X415) @ (sub @ X413 @ X415))) | ((lam @ (X409 @ sh @ one)) != (lam @ (X407 @ sh @ one)))))))) & induction2lem_gthm & (! [X416 : term,X417 : subst] : ((comp @ sh @ (push @ X416 @ X417)) = X417) <=> axshiftcons) & (pushprop_lem1v2_lthm <=> (! [X418 : term,X419 : subst] : ((sub @ one @ (push @ X418 @ X419)) = X418) => ! [X420 : term,X421 : term > $o,X422 : term > $o,X423 : subst] : (~(X422 @ X420) | ~! [X424 : term] : ((X422 @ (sub @ X424 @ (push @ X420 @ X423))) = (X421 @ X424)) | (X421 @ one)))) & (! [X425 : subst] : ((comp @ id @ X425) = X425) <=> axidl) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & hoaslamnotap_lthm & (pushprop_lem1 <=> ! [X426 : subst,X427 : term > $o,X428 : term,X429 : term,X430 : term > $o] : ((X427 @ (sub @ X429 @ (push @ X428 @ X426))) | ~(X430 @ X429))) & (hoasinduction_lem0 <=> ! [X431 : subst > term > subst > $o] : ~! [X432 : term > $o] : ~! [X433 : term] : ((X431 @ id @ X433 @ id) = (X432 @ X433))) & (! [X434 : subst > term > subst > $o,X435 : term,X436 : term] : ((X434 @ id @ (ap @ X435 @ X436) @ id) | ~! [X437 : subst,X438 : term,X439 : subst,X440 : subst] : ((X434 @ (comp @ X440 @ X437) @ (sub @ X438 @ X437) @ X439) | ~(X434 @ X440 @ X438 @ (comp @ X437 @ X439))) | ~! [X441 : subst,X442 : subst,X443 : subst,X444 : term] : (~(X434 @ (comp @ X442 @ X443) @ (sub @ X444 @ X443) @ X441) | (X434 @ X442 @ X444 @ (comp @ X443 @ X441))) | ~! [X445 : term,X446 : term] : ((X434 @ id @ (ap @ (sub @ X446 @ id) @ X445) @ id) | ~(X434 @ id @ X446 @ id) | ~(X434 @ id @ X445 @ id)) | ~(X434 @ id @ X435 @ id) | ~(X434 @ id @ X436 @ id)) <=> hoasinduction_lem2) & pushprop_lem3v2_lthm & (hoasinduction_lem3v2_f <=> ! [X447 : term] : ~! [X448 : subst > term > term] : ~! [X449 : term,X450 : subst] : ((X448 @ X450 @ X449) = (sub @ X447 @ (push @ X449 @ X450)))) & pushprop_lthm_orig & (hoasinduction_lem3v2a <=> ! [X451 : term,X452 : subst > term > subst > $o,X453 : term > $o] : (~! [X454 : term] : ((X452 @ id @ X454 @ id) = (X453 @ X454)) | (X453 @ (lam @ X451)) | ~! [X455 : subst > term > term] : (~! [X456 : term] : ((X452 @ id @ (X455 @ id @ X456) @ id) | ~(X452 @ id @ X456 @ id)) | (X452 @ id @ (lam @ (X455 @ sh @ one)) @ id) | ~! [X457 : subst,X458 : term,X459 : subst] : ((X455 @ (comp @ X457 @ X459) @ (sub @ X458 @ X459)) = (sub @ (X455 @ X457 @ X458) @ X459))) | ~! [X460 : term] : ((X453 @ (sub @ X451 @ (push @ X460 @ id))) | ~(X453 @ X460)))) & pushprop_lem2v2_gthm & pushprop_lem1_gthm & ! [X461 : d_term,X462 : d_term] : (((d2term @ X462) = (d2term @ X461)) => (X461 = X462)) & ((^[X463 : subst > term > subst > $o, X464 : term > $o] : (! [X465 : term] : ((X463 @ id @ X465 @ id) = (X464 @ X465)))) = hoasinduction_p_and_p_prime) & (axvarid <=> ! [X466 : term] : ((sub @ X466 @ id) = X466)) & (hoasapinj2 <=> ! [X467 : term,X468 : term,X469 : term,X470 : term] : (((ap @ (sub @ X470 @ id) @ X468) != (ap @ (sub @ X467 @ id) @ X469)) | (X468 = X469))) & (! [X471 : subst > term > subst > $o,X472 : term] : (~! [X473 : subst > term > term] : ((X471 @ id @ (lam @ (X473 @ sh @ one)) @ id) | ~! [X474 : term] : ((X471 @ id @ (X473 @ id @ X474) @ id) | ~(X471 @ id @ X474 @ id)) | ~! [X475 : subst,X476 : subst,X477 : term] : ((sub @ (X473 @ X476 @ X477) @ X475) = (X473 @ (comp @ X476 @ X475) @ (sub @ X477 @ X475)))) | (X471 @ id @ X472 @ id) | ~! [X478 : term,X479 : term] : (~(X471 @ id @ X479 @ id) | ~(X471 @ id @ X478 @ id) | (X471 @ id @ (ap @ (sub @ X479 @ id) @ X478) @ id))) <=> hoasinduction_no_psi_cond) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (induction2lem_lthm <=> (! [X480 : term,X481 : subst] : ((sub @ one @ (push @ X480 @ X481)) = X480) => (! [X482 : term,X483 : subst] : ((comp @ sh @ (push @ X482 @ X483)) = X483) => (! [X484 : subst] : ((comp @ X484 @ id) = X484) => (! [X485 : term,X486 : term > $o] : (~! [X487 : term] : (~(X486 @ X487) | (X486 @ (lam @ X487))) | ~! [X488 : term,X489 : term] : (~(X486 @ X488) | (X486 @ (ap @ X489 @ X488)) | ~(X486 @ X489)) | ~! [X490 : term] : ((X486 @ X490) | ~(var @ X490)) | (X486 @ X485)) => ! [X491 : term,X492 : term > $o,X493 : subst] : ((X492 @ (sub @ X491 @ X493)) | ~! [X494 : term,X495 : term] : ((X492 @ (ap @ X495 @ X494)) | ~(X492 @ X494) | ~(X492 @ X495)) | ~! [X496 : term] : (~(var @ X496) | (X492 @ (sub @ X496 @ X493))) | ~! [X497 : term] : ((X492 @ (lam @ X497)) | ~! [X498 : term] : ((X492 @ (sub @ X497 @ (push @ X498 @ id))) | ~(X492 @ X498))))))))) & axapp & (pushprop_p_and_p_prime = (^[X499 : term, X500 : subst, X501 : term > $o, X502 : term > $o] : (! [X503 : term] : ((X502 @ X503) = (X501 @ (sub @ X503 @ (push @ X499 @ X500))))))) & ~ulamvar1 & hoasinduction_lem2v2_gthm & pushprop_lthm & pushprop_lem0_gthm & ((! [X504 : subst,X505 : term] : ((sub @ one @ (push @ X505 @ X504)) = X505) => (! [X506 : subst,X507 : term] : ((comp @ sh @ (push @ X507 @ X506)) = X506) => ! [X508 : term,X509 : subst,X510 : term > $o,X511 : term,X512 : term > $o] : (~(X510 @ X511) | (X512 @ (sub @ X511 @ (push @ X508 @ X509)))))) <=> pushprop_lem1_lthm) & hoaslamnotvar & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasapinj2_lthm <=> (! [X513 : term,X514 : term,X515 : term,X516 : term] : ((X513 = X514) | ((ap @ X515 @ X513) != (ap @ X516 @ X514))) => ! [X517 : term,X518 : term,X519 : term,X520 : term] : (((ap @ (sub @ X517 @ id) @ X518) != (ap @ (sub @ X520 @ id) @ X519)) | (X518 = X519)))) & hoasinduction_lem1_gthm & (hoasinduction_lem3aaa <=> ! [X521 : term,X522 : subst > term > subst > $o] : ((X522 @ id @ (lam @ (sub @ X521 @ (push @ one @ sh))) @ id) | ~! [X523 : term,X524 : subst > term > term] : (~! [X525 : term] : ((X522 @ id @ (X524 @ id @ X525) @ id) | ~(X522 @ id @ X525 @ id)) | (X522 @ id @ (lam @ (X524 @ sh @ one)) @ id) | ~! [X526 : subst,X527 : term,X528 : subst] : ((sub @ X523 @ (push @ (sub @ X527 @ X528) @ (comp @ X526 @ X528))) = (X524 @ (comp @ X526 @ X528) @ (sub @ X527 @ X528))) | ~! [X529 : term,X530 : subst,X531 : subst] : ((sub @ (sub @ X523 @ (push @ X529 @ X531)) @ X530) = (sub @ (X524 @ X531 @ X529) @ X530))) | ~! [X532 : term] : (~(X522 @ id @ X532 @ id) | (X522 @ id @ (sub @ X521 @ (push @ X532 @ id)) @ id)))) & ((d2subst @ d_id) = sh) & pushprop_lem1v2_gthm & (axvarcons <=> ! [X533 : subst,X534 : term] : ((sub @ one @ (push @ X534 @ X533)) = X534)) & (induction2lem <=> ! [X535 : term > $o,X536 : subst,X537 : term] : (~! [X538 : term] : (~! [X539 : term] : ((X535 @ (sub @ X538 @ (push @ X539 @ id))) | ~(X535 @ X539)) | (X535 @ (lam @ X538))) | (X535 @ (sub @ X537 @ X536)) | ~! [X540 : term,X541 : term] : ((X535 @ (ap @ X541 @ X540)) | ~(X535 @ X541) | ~(X535 @ X540)) | ~! [X542 : term] : ((X535 @ (sub @ X542 @ X536)) | ~(var @ X542)))) & lamnotvar & (one = (d2term @ d_one)) & axvarshift & axassoc & (substmonoid <=> (! [X543 : subst] : ((comp @ id @ X543) = X543) & ! [X544 : subst] : ((comp @ X544 @ id) = X544))) & ((d2subst @ d_id) = id) & (! [X545 : subst,X546 : term > $o,X547 : term] : ~! [X548 : term > $o] : ~! [X549 : term] : ((X546 @ (sub @ X549 @ (push @ X547 @ X545))) = (X548 @ X549)) <=> pushprop_lem0_lthm)),
% 6.77/2.22    inference(rectify,[status(thm)],[f1])).
% 6.77/2.22  thf(f1,axiom,(
% 6.77/2.22    ((d2term @ d_one) = (lam @ (d2term @ d_one))) & ~lamnotap & hoasapnotvar_gthm & hoaslaminj_gthm & (termmset_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X13 : term] : ((sub @ X13 @ id) = X13))) & ulamvarsh & hoasinduction_lem1v2 & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & apnotvar & (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id))) <=> hoasinduction_lem3aa_lthm) & (hoasinduction_no_psi_cond_lthm <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X22 : term,X10 : term > $o] : (~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | (X10 @ X22) | ~! [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,X11 : term > $o,X29 : term] : ((X11 @ (lam @ X29)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X29 @ (push @ X15 @ id)))) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)))) => ! [X10 : subst > term > subst > $o,X30 : term] : ((X10 @ id @ X30 @ id) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))))))))) & (hoasinduction_lem3b_lthm <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & axmap & hoaslamnotvar_lthm & hoasinduction_lem3_gthm & hoasinduction_gthm & ((d2subst @ d_id) = (comp @ (d2subst @ d_id) @ (d2subst @ d_id))) & ! [X0 : term] : ? [X1 : d_term] : ((d2term @ X1) = X0) & ! [X7 : d_subst,X6 : d_subst] : (((d2subst @ X6) = (d2subst @ X7)) => (X6 = X7)) & termmset_gthm & (! [X15 : term,X13 : term] : ((X13 = X15) | ((lam @ X13) != (lam @ X15))) <=> laminj) & (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) <=> hoasinduction_lem3v2_f_lthm) & (pushprop_lem1v2 <=> ! [X14 : subst,X10 : term > $o,X13 : term,X11 : term > $o] : (~(X10 @ X13) | (X11 @ one) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))))) & (induction <=> ! [X10 : term > $o,X21 : term] : (~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~(X10 @ X13)) | (X10 @ X21) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)))) & (! [X43 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ X43) @ id) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))))) <=> hoasinduction_lem3a) & (substmonoid_lthm <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) & ! [X14 : subst] : ((comp @ id @ X14) = X14))))) & (hoasinduction_lem3v2 <=> ! [X11 : term > $o,X10 : subst > term > subst > $o,X48 : term] : (~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | (X11 @ (lam @ X48)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X25 : subst,X26 : subst,X13 : term,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X48 @ (push @ X15 @ id)))))) & pushprop_lem2v2 & hoasinduction_lem1v2_gthm & (hoasinduction <=> ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X18 : subst > term > term] : (~! [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))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X15 @ id) | ~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id)) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X10 @ id @ X28 @ id) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term] : (~(var @ (sub @ X13 @ id)) | (X10 @ id @ X13 @ id)))) & pushprop_gthm & pushprop_lem3v2 & induction2_gthm & ((! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X11 : term > $o,X48 : term,X10 : subst > term > subst > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | ~! [X13 : term,X26 : subst,X25 : subst,X14 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X15 : term] : ((X11 @ (sub @ X48 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | (X11 @ (lam @ X48)) | ~! [X25 : subst,X13 : term,X14 : subst,X26 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))))) <=> hoasinduction_lem3v2_lthm) & hoasapnotvar & substmonoid_gthm & (hoasinduction_lem3b <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ((X18 @ sh @ one) != (sub @ X15 @ (push @ one @ sh)))) & ! [X1 : d_term] : (d_one = X1) & ulamvarind & pushprop_lem2v2_lthm & (hoasapinj1 <=> ! [X13 : term,X20 : term,X19 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15))) & axabs & hoasinduction_lem3b_gthm & ~(var @ (d2term @ d_one)) & hoasinduction_lem3v2_gthm & (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)) | ~! [X18 : subst > term > term] : ((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)))) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aa) & (! [X31 : subst > term > term,X32 : subst,X18 : subst > term > term,X33 : term] : (~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one))) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) <=> hoaslaminj) & hoasapnotvar_lthm & hoasinduction_lem1 & hoaslamnotap_gthm & hoaslamnotvar_gthm & (! [X19 : term,X13 : term,X15 : term,X20 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X13 = X15)) <=> apinj1) & (hoasinduction_lem3_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X15 : term] : ((X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [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)))) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) => ! [X10 : subst > term > subst > $o,X27 : 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))) | ~! [X25 : subst,X13 : term,X14 : subst,X26 : subst] : (~(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)) | ~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)))))) & ((^[X8 : subst, X9 : subst > term > term] : (d2term @ d_one)) = hoaslam) & ((d2term @ d_one) = (ap @ (d2term @ d_one) @ (d2term @ d_one))) & (! [X13 : term] : ((sub @ X13 @ id) = X13) <=> termmset) & (hoasapinj1_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X19 : term,X13 : term,X20 : term,X15 : term] : ((X13 = X15) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X13 : term,X20 : term,X15 : term,X19 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X13 = X15))))) & (hoasinduction_lthm_3 <=> (! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) => (! [X10 : term > $o,X22 : term] : ((X10 @ X22) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13)))) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X11 : term > $o,X29 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X14 : subst,X25 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X15 : term] : (~(X11 @ X15) | (X11 @ (sub @ X29 @ (push @ X15 @ id)))) | (X11 @ (lam @ X29)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) => ! [X28 : term,X10 : subst > term > subst > $o] : (~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [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))) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | (X10 @ id @ X28 @ id) | ~! [X13 : term,X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id)))))))) & hoasinduction_lem2_gthm & (hoasinduction_lem3 <=> ! [X10 : subst > term > subst > $o,X27 : term] : ((X10 @ id @ (lam @ X27) @ id) | ~! [X26 : subst,X14 : subst,X25 : subst,X13 : term] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | ~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X13 : term,X25 : subst,X26 : subst,X14 : subst] : (~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | (X10 @ X14 @ X13 @ (comp @ X26 @ X25))))) & (hoasinduction_lem3a_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X42 : term,X10 : subst > term > subst > $o] : (~! [X18 : subst > term > term] : (~! [X14 : subst,X13 : term,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X42 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ (sub @ X42 @ (push @ one @ sh))) @ id)) => ! [X10 : subst > term > subst > $o,X43 : term] : (~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X43 @ (push @ X15 @ id)) @ id)) | (X10 @ id @ (lam @ X43) @ id) | ~! [X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | ~! [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)))))) & axclos & hoasinduction_lem2_lthm & (shinj <=> ! [X15 : term,X13 : term] : (((sub @ X13 @ sh) != (sub @ X15 @ sh)) | (X13 = X15))) & (! [X14 : subst] : ((push @ (sub @ one @ X14) @ (comp @ sh @ X14)) = X14) <=> axscons) & (! [X14 : subst] : ((comp @ X14 @ id) = X14) <=> axidr) & (hoasinduction_lem0_lthm <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & pushprop & ! [X5 : d_subst] : (d_id = X5) & ((! [X10 : term > $o,X22 : term] : ((X10 @ X22) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13))) => (! [X24 : term,X23 : term,X10 : subst > term > subst > $o] : (~(X10 @ id @ X24 @ id) | ~(X10 @ id @ X23 @ id) | (X10 @ id @ (ap @ X23 @ X24) @ id) | ~! [X15 : term,X13 : term] : ((X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X14 : subst,X26 : subst,X13 : term,X25 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X13 : term,X14 : subst,X26 : subst,X25 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) => (! [X10 : subst > term > subst > $o,X27 : term] : (~! [X15 : term] : ((X10 @ id @ (sub @ X27 @ (push @ X15 @ id)) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | (X10 @ id @ (lam @ X27) @ id) | ~! [X18 : subst > term > term] : (~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25)))) | ~! [X13 : term,X25 : subst,X14 : subst,X26 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25))) => ! [X10 : subst > term > subst > $o,X28 : term] : (~! [X13 : term,X15 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id) | ~(X10 @ id @ X15 @ id)) | ~! [X13 : term,X26 : subst,X14 : subst,X25 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [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 @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id))) | (X10 @ id @ X28 @ id) | ~! [X13 : term] : ((X10 @ id @ X13 @ id) | ~(var @ (sub @ X13 @ id))) | ~! [X26 : subst,X13 : term,X14 : subst,X25 : subst] : (~(X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)))))) <=> hoasinduction_lthm) & hoasinduction_lem3a_gthm & (induction2_lthm <=> (! [X13 : term] : ((sub @ X13 @ id) = X13) => (! [X16 : term,X17 : subst,X10 : term > $o] : ((X10 @ (sub @ X16 @ X17)) | ~! [X13 : term,X15 : term] : (~(X10 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15))) | ~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15)) | ~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13)))) => ! [X10 : term > $o,X22 : term] : (~! [X13 : term,X15 : term] : (~(X10 @ X13) | ~(X10 @ X15) | (X10 @ (ap @ X13 @ X15))) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id))))) | (X10 @ X22))))) & hoasinduction_lem1_lthm & (apinj2 <=> ! [X13 : term,X20 : term,X15 : term,X19 : term] : (((ap @ X13 @ X19) != (ap @ X15 @ X20)) | (X19 = X20))) & (pushprop_lem0 <=> ! [X13 : term,X10 : term > $o,X14 : subst] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))) & hoasapinj1_gthm & hoasapinj2_gthm & (hoasinduction_lem2v2 <=> ! [X11 : term > $o,X10 : subst > term > subst > $o,X45 : term,X44 : term] : (~! [X13 : term,X14 : subst,X25 : subst,X26 : subst] : ((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)) | ~(X11 @ X45) | ~(X11 @ X44) | (X11 @ (ap @ X44 @ X45)) | ~! [X13 : term,X14 : subst,X26 : subst,X25 : subst] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) | ~(X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) & (hoaslamnotap <=> ! [X18 : subst > term > term,X47 : term,X46 : term] : (~! [X13 : term,X25 : subst,X14 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (ap @ (sub @ X46 @ id) @ X47)))) & (! [X10 : term > $o,X22 : term] : (~! [X13 : term] : (~! [X15 : term] : (~(X10 @ X15) | (X10 @ (sub @ X13 @ (push @ X15 @ id)))) | (X10 @ (lam @ X13))) | ~! [X13 : term] : (~(var @ X13) | (X10 @ X13)) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | (X10 @ X22)) <=> induction2) & (hoasinduction_lem3v2a_lthm <=> (! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X14 : subst,X13 : term] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13)) => (! [X13 : term] : ((sub @ X13 @ id) = X13) => ! [X10 : subst > term > subst > $o,X11 : term > $o,X29 : term] : ((X11 @ (lam @ X29)) | ~! [X18 : subst > term > term] : (~! [X25 : subst,X14 : subst,X13 : term] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ~! [X13 : term] : (~(X10 @ id @ X13 @ id) | (X10 @ id @ (X18 @ id @ X13) @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))))) & ! [X4 : subst] : ? [X5 : d_subst] : ((d2subst @ X5) = X4) & (hoaslaminj_lthm <=> (! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X15 : term,X13 : term] : ((X13 = X15) | ((lam @ X13) != (lam @ X15))) => ! [X33 : term,X31 : subst > term > term,X32 : subst,X18 : subst > term > term] : (~! [X25 : subst,X13 : term,X14 : subst] : ((sub @ (X31 @ X14 @ X13) @ X25) = (X31 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((X18 @ X32 @ X33) = (X31 @ X32 @ X33)) | ~! [X13 : term,X14 : subst,X25 : subst] : ((sub @ (X18 @ X14 @ X13) @ X25) = (X18 @ (comp @ X14 @ X25) @ (sub @ X13 @ X25))) | ((lam @ (X18 @ sh @ one)) != (lam @ (X31 @ sh @ one)))))))) & induction2lem_gthm & (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) <=> axshiftcons) & (pushprop_lem1v2_lthm <=> (! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => ! [X13 : term,X11 : term > $o,X10 : term > $o,X14 : subst] : (~(X10 @ X13) | ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) | (X11 @ one)))) & (! [X14 : subst] : ((comp @ id @ X14) = X14) <=> axidl) & ((d2term @ d_one) = (hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) & hoaslamnotap_lthm & (pushprop_lem1 <=> ! [X14 : subst,X26 : term > $o,X15 : term,X13 : term,X10 : term > $o] : ((X26 @ (sub @ X13 @ (push @ X15 @ X14))) | ~(X10 @ X13))) & (hoasinduction_lem0 <=> ! [X10 : subst > term > subst > $o] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id))) & (! [X10 : subst > term > subst > $o,X23 : term,X24 : term] : ((X10 @ id @ (ap @ X23 @ X24) @ id) | ~! [X26 : subst,X13 : term,X25 : subst,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) | ~(X10 @ X14 @ X13 @ (comp @ X26 @ X25))) | ~! [X25 : subst,X14 : subst,X26 : subst,X13 : term] : (~(X10 @ (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 @ X13 @ id) | ~(X10 @ id @ X15 @ id)) | ~(X10 @ id @ X23 @ id) | ~(X10 @ id @ X24 @ id)) <=> hoasinduction_lem2) & pushprop_lem3v2_lthm & (hoasinduction_lem3v2_f <=> ! [X15 : term] : ~! [X18 : subst > term > term] : ~! [X13 : term,X14 : subst] : ((sub @ X15 @ (push @ X13 @ X14)) = (X18 @ X14 @ X13))) & pushprop_lthm_orig & (hoasinduction_lem3v2a <=> ! [X29 : term,X10 : subst > term > subst > $o,X11 : term > $o] : (~! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)) | (X11 @ (lam @ X29)) | ~! [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)))) | ~! [X15 : term] : ((X11 @ (sub @ X29 @ (push @ X15 @ id))) | ~(X11 @ X15)))) & pushprop_lem2v2_gthm & pushprop_lem1_gthm & ! [X2 : d_term,X3 : d_term] : (((d2term @ X2) = (d2term @ X3)) => (X2 = X3)) & ((^[X10 : subst > term > subst > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ id @ X12 @ id)))) = hoasinduction_p_and_p_prime) & (axvarid <=> ! [X13 : term] : ((sub @ X13 @ id) = X13)) & (hoasapinj2 <=> ! [X13 : term,X20 : term,X19 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20))) & (! [X10 : subst > term > subst > $o,X30 : term] : (~! [X18 : subst > term > term] : ((X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [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 @ X30 @ id) | ~! [X15 : term,X13 : term] : (~(X10 @ id @ X13 @ id) | ~(X10 @ id @ X15 @ id) | (X10 @ id @ (ap @ (sub @ X13 @ id) @ X15) @ id))) <=> hoasinduction_no_psi_cond) & ((d2subst @ d_id) = (push @ (d2term @ d_one) @ (d2subst @ d_id))) & (induction2lem_lthm <=> (! [X13 : term,X14 : subst] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X13 : term,X14 : subst] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => (! [X14 : subst] : ((comp @ X14 @ id) = X14) => (! [X21 : term,X10 : term > $o] : (~! [X13 : term] : (~(X10 @ X13) | (X10 @ (lam @ X13))) | ~! [X15 : term,X13 : term] : (~(X10 @ X15) | (X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13)) | ~! [X13 : term] : ((X10 @ X13) | ~(var @ X13)) | (X10 @ X21)) => ! [X16 : term,X10 : term > $o,X17 : subst] : ((X10 @ (sub @ X16 @ X17)) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X15) | ~(X10 @ X13)) | ~! [X15 : term] : (~(var @ X15) | (X10 @ (sub @ X15 @ X17))) | ~! [X13 : term] : ((X10 @ (lam @ X13)) | ~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15))))))))) & axapp & (pushprop_p_and_p_prime = (^[X13 : term, X14 : subst, X10 : term > $o, X11 : term > $o] : (! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14))))))) & ~ulamvar1 & hoasinduction_lem2v2_gthm & pushprop_lthm & pushprop_lem0_gthm & ((! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13) => (! [X14 : subst,X13 : term] : ((comp @ sh @ (push @ X13 @ X14)) = X14) => ! [X15 : term,X14 : subst,X10 : term > $o,X13 : term,X26 : term > $o] : (~(X10 @ X13) | (X26 @ (sub @ X13 @ (push @ X15 @ X14)))))) <=> pushprop_lem1_lthm) & hoaslamnotvar & ((d2term @ d_one) = (sub @ (d2term @ d_one) @ (d2subst @ d_id))) & (hoasapinj2_lthm <=> (! [X19 : term,X20 : term,X13 : term,X15 : term] : ((X19 = X20) | ((ap @ X13 @ X19) != (ap @ X15 @ X20))) => ! [X13 : term,X19 : term,X20 : term,X15 : term] : (((ap @ (sub @ X13 @ id) @ X19) != (ap @ (sub @ X15 @ id) @ X20)) | (X19 = X20)))) & hoasinduction_lem1_gthm & (hoasinduction_lem3aaa <=> ! [X34 : term,X10 : subst > term > subst > $o] : ((X10 @ id @ (lam @ (sub @ X34 @ (push @ one @ sh))) @ id) | ~! [X35 : term,X18 : subst > term > term] : (~! [X13 : term] : ((X10 @ id @ (X18 @ id @ X13) @ id) | ~(X10 @ id @ X13 @ id)) | (X10 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~! [X39 : subst,X40 : term,X41 : subst] : ((X18 @ (comp @ X39 @ X41) @ (sub @ X40 @ X41)) = (sub @ X35 @ (push @ (sub @ X40 @ X41) @ (comp @ X39 @ X41)))) | ~! [X37 : term,X38 : subst,X36 : subst] : ((sub @ (X18 @ X36 @ X37) @ X38) = (sub @ (sub @ X35 @ (push @ X37 @ X36)) @ X38))) | ~! [X15 : term] : (~(X10 @ id @ X15 @ id) | (X10 @ id @ (sub @ X34 @ (push @ X15 @ id)) @ id)))) & ((d2subst @ d_id) = sh) & pushprop_lem1v2_gthm & (axvarcons <=> ! [X14 : subst,X13 : term] : ((sub @ one @ (push @ X13 @ X14)) = X13)) & (induction2lem <=> ! [X10 : term > $o,X17 : subst,X16 : term] : (~! [X13 : term] : (~! [X15 : term] : ((X10 @ (sub @ X13 @ (push @ X15 @ id))) | ~(X10 @ X15)) | (X10 @ (lam @ X13))) | (X10 @ (sub @ X16 @ X17)) | ~! [X15 : term,X13 : term] : ((X10 @ (ap @ X13 @ X15)) | ~(X10 @ X13) | ~(X10 @ X15)) | ~! [X15 : term] : ((X10 @ (sub @ X15 @ X17)) | ~(var @ X15)))) & lamnotvar & (one = (d2term @ d_one)) & axvarshift & axassoc & (substmonoid <=> (! [X14 : subst] : ((comp @ id @ X14) = X14) & ! [X14 : subst] : ((comp @ X14 @ id) = X14))) & ((d2subst @ d_id) = id) & (! [X14 : subst,X10 : term > $o,X13 : term] : ~! [X11 : term > $o] : ~! [X12 : term] : ((X11 @ X12) = (X10 @ (sub @ X12 @ (push @ X13 @ X14)))) <=> pushprop_lem0_lthm)),
% 6.77/2.22    file('/export/starexec/sandbox/tmp/tmp.O26DLJ38OJ/DTF2THF_7038.p',alg444_1)).
% 6.77/2.22  thf(f1283,plain,(
% 6.77/2.22    ( ! [X262 : term] : (((d2term @ (sK644 @ X262)) = X262)) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  thf(f3067,plain,(
% 6.77/2.22    ($true != (sK485 @ (d2subst @ d_id) @ (ap @ sK486 @ sK487) @ (d2subst @ d_id))) | spl658_285),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f3066])).
% 6.77/2.22  thf(f3066,definition,(
% 6.77/2.22    spl658_285 <=> ($true = (sK485 @ (d2subst @ d_id) @ (ap @ sK486 @ sK487) @ (d2subst @ d_id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_285])],[avatar_definition])).
% 6.77/2.22  thf(f6787,plain,(
% 6.77/2.22    ~spl658_383 | ~spl658_474),
% 6.77/2.22    inference(avatar_contradiction_clause,[status(thm)],[f6786])).
% 6.77/2.22  thf(f6786,plain,(
% 6.77/2.22    $false | (~spl658_383 | ~spl658_474)),
% 6.77/2.22    inference(subsumption_resolution,[status(thm)],[f3506,f6757])).
% 6.77/2.22  thf(f6757,plain,(
% 6.77/2.22    ( ! [X6 : subst,X4 : term] : (($true != (sK485 @ X6 @ X4 @ (d2subst @ d_id)))) ) | ~spl658_474),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f6756])).
% 6.77/2.22  thf(f6756,definition,(
% 6.77/2.22    spl658_474 <=> ! [X6 : subst,X4 : term] : ($true != (sK485 @ X6 @ X4 @ (d2subst @ d_id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_474])],[avatar_definition])).
% 6.77/2.22  thf(f3506,plain,(
% 6.77/2.22    ($true = (sK485 @ (d2subst @ d_id) @ sK486 @ (d2subst @ d_id))) | ~spl658_383),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f3505])).
% 6.77/2.22  thf(f3505,definition,(
% 6.77/2.22    spl658_383 <=> ($true = (sK485 @ (d2subst @ d_id) @ sK486 @ (d2subst @ d_id)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_383])],[avatar_definition])).
% 6.77/2.22  thf(f6758,plain,(
% 6.77/2.22    spl658_473 | spl658_474 | ~spl658_326),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f6751,f3237,f6756,f6753])).
% 6.77/2.22  thf(f3237,definition,(
% 6.77/2.22    spl658_326 <=> ! [X5 : subst,X4 : term,X6 : subst,X3 : subst] : (($true = (sK485 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_326])],[avatar_definition])).
% 6.77/2.22  thf(f6751,plain,(
% 6.77/2.22    ( ! [X6 : subst,X4 : term,X5 : subst] : (($true != (sK485 @ X6 @ X4 @ (d2subst @ d_id))) | ($true = (sK485 @ (d2subst @ d_id) @ (d2term @ d_one) @ X5))) ) | ~spl658_326),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f6750,f3870])).
% 6.77/2.22  thf(f6750,plain,(
% 6.77/2.22    ( ! [X3 : subst,X6 : subst,X4 : term,X5 : subst] : (($true != (sK485 @ X6 @ X4 @ (d2subst @ d_id))) | ($true = (sK485 @ (d2subst @ d_id) @ (sub @ X4 @ X3) @ X5))) ) | ~spl658_326),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f6749,f3901])).
% 6.77/2.22  thf(f3901,plain,(
% 6.77/2.22    ( ! [X195 : subst] : (((d2subst @ d_id) = X195)) )),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f1351,f1338])).
% 6.77/2.22  thf(f1338,plain,(
% 6.77/2.22    ( ! [X207 : d_subst] : ((d_id = X207)) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  thf(f1351,plain,(
% 6.77/2.22    ( ! [X195 : subst] : (((d2subst @ (sK611 @ X195)) = X195)) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  thf(f6749,plain,(
% 6.77/2.22    ( ! [X3 : subst,X6 : subst,X4 : term,X5 : subst] : (($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5))) | ($true = (sK485 @ (d2subst @ d_id) @ (sub @ X4 @ X3) @ X5))) ) | ~spl658_326),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f3238,f3901])).
% 6.77/2.22  thf(f3238,plain,(
% 6.77/2.22    ( ! [X3 : subst,X6 : subst,X4 : term,X5 : subst] : (($true = (sK485 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5)))) ) | ~spl658_326),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f3237])).
% 6.77/2.22  thf(f6748,plain,(
% 6.77/2.22    spl658_313),
% 6.77/2.22    inference(avatar_contradiction_clause,[status(thm)],[f6747])).
% 6.77/2.22  thf(f6747,plain,(
% 6.77/2.22    $false | spl658_313),
% 6.77/2.22    inference(trivial_inequality_removal,[status(thm)],[f6746])).
% 6.77/2.22  thf(f6746,plain,(
% 6.77/2.22    ($true != $true) | spl658_313),
% 6.77/2.22    inference(superposition,[status(thm)],[f3185,f6745])).
% 6.77/2.22  thf(f6745,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true = (sP109 @ X0))) )),
% 6.77/2.22    inference(subsumption_resolution,[status(thm)],[f6744,f6455])).
% 6.77/2.22  thf(f6455,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (((X0 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) = $true) | ($true = (sP109 @ X0))) )),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f1851,f3870])).
% 6.77/2.22  thf(f1851,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true = (X0 @ (d2subst @ d_id) @ (sK656 @ X0) @ (d2subst @ d_id))) | ($true = (sP109 @ X0))) )),
% 6.77/2.22    inference(definition_unfolding,[status(thm)],[f1526,f1486,f1486])).
% 6.77/2.22  thf(f1486,plain,(
% 6.77/2.22    ((d2subst @ d_id) = id)),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  thf(f1526,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true = (sP109 @ X0)) | ($true = (X0 @ id @ (sK656 @ X0) @ id))) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f762])).
% 6.77/2.22  thf(f762,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : ((($true = (sP109 @ X0)) | (($true = (X0 @ id @ (sK656 @ X0) @ id)) & ($true != (X0 @ id @ (ap @ (sK656 @ X0) @ (sK657 @ X0)) @ id)) & ($true = (X0 @ id @ (sK657 @ X0) @ id)))) & (! [X3 : term,X4 : term] : (($true != (X0 @ id @ X3 @ id)) | ($true = (X0 @ id @ (ap @ X3 @ X4) @ id)) | ($true != (X0 @ id @ X4 @ id))) | ($true != (sP109 @ X0))))),
% 6.77/2.22    inference(skolemisation,[status(esa),new_symbols(skolem,[sK656,sK657])],[f760,f761])).
% 6.77/2.22  thf(f761,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (? [X1 : term,X2 : term] : (((X0 @ id @ X1 @ id) = $true) & ((X0 @ id @ (ap @ X1 @ X2) @ id) != $true) & ($true = (X0 @ id @ X2 @ id))) => (($true = (X0 @ id @ (sK656 @ X0) @ id)) & ($true != (X0 @ id @ (ap @ (sK656 @ X0) @ (sK657 @ X0)) @ id)) & ($true = (X0 @ id @ (sK657 @ X0) @ id))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f760,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : ((($true = (sP109 @ X0)) | ? [X1 : term,X2 : term] : (((X0 @ id @ X1 @ id) = $true) & ((X0 @ id @ (ap @ X1 @ X2) @ id) != $true) & ($true = (X0 @ id @ X2 @ id)))) & (! [X3 : term,X4 : term] : (($true != (X0 @ id @ X3 @ id)) | ($true = (X0 @ id @ (ap @ X3 @ X4) @ id)) | ($true != (X0 @ id @ X4 @ id))) | ($true != (sP109 @ X0))))),
% 6.77/2.22    inference(rectify,[status(thm)],[f759])).
% 6.77/2.22  thf(f759,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : ((($true = (sP109 @ X0)) | ? [X11 : term,X12 : term] : (($true = (X0 @ id @ X11 @ id)) & ($true != (X0 @ id @ (ap @ X11 @ X12) @ id)) & ($true = (X0 @ id @ X12 @ id)))) & (! [X11 : term,X12 : term] : (($true != (X0 @ id @ X11 @ id)) | ($true = (X0 @ id @ (ap @ X11 @ X12) @ id)) | ($true != (X0 @ id @ X12 @ id))) | ($true != (sP109 @ X0))))),
% 6.77/2.22    inference(nnf_transformation,[status(thm)],[f125])).
% 6.77/2.22  thf(f125,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (($true = (sP109 @ X0)) <=> ! [X11 : term,X12 : term] : (($true != (X0 @ id @ X11 @ id)) | ($true = (X0 @ id @ (ap @ X11 @ X12) @ id)) | ($true != (X0 @ id @ X12 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f6744,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true = (sP109 @ X0)) | ((X0 @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) != $true)) )),
% 6.77/2.22    inference(forward_demodulation,[status(thm)],[f1852,f3870])).
% 6.77/2.22  thf(f1852,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true != (X0 @ (d2subst @ d_id) @ (ap @ (sK656 @ X0) @ (sK657 @ X0)) @ (d2subst @ d_id))) | ($true = (sP109 @ X0))) )),
% 6.77/2.22    inference(definition_unfolding,[status(thm)],[f1525,f1486,f1486])).
% 6.77/2.22  thf(f1525,plain,(
% 6.77/2.22    ( ! [X0 : subst > term > subst > $o] : (($true = (sP109 @ X0)) | ($true != (X0 @ id @ (ap @ (sK656 @ X0) @ (sK657 @ X0)) @ id))) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f762])).
% 6.77/2.22  thf(f3185,plain,(
% 6.77/2.22    ($true != (sP109 @ sK645)) | spl658_313),
% 6.77/2.22    inference(avatar_component_clause,[status(thm)],[f3184])).
% 6.77/2.22  thf(f3184,definition,(
% 6.77/2.22    spl658_313 <=> ($true = (sP109 @ sK645))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_313])],[avatar_definition])).
% 6.77/2.22  thf(f3743,plain,(
% 6.77/2.22    ~spl658_176 | ~spl658_81),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1528,f2225,f2614])).
% 6.77/2.22  thf(f2614,definition,(
% 6.77/2.22    spl658_176 <=> ($true = sP112)),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_176])],[avatar_definition])).
% 6.77/2.22  thf(f2225,definition,(
% 6.77/2.22    spl658_81 <=> (hoasinduction_lem2 = $true)),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_81])],[avatar_definition])).
% 6.77/2.22  thf(f1528,plain,(
% 6.77/2.22    (hoasinduction_lem2 != $true) | ($true != sP112)),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f763])).
% 6.77/2.22  thf(f763,plain,(
% 6.77/2.22    ((hoasinduction_lem2 != $true) | ($true != sP112)) & ((hoasinduction_lem2 = $true) | ($true = sP112))),
% 6.77/2.22    inference(nnf_transformation,[status(thm)],[f129])).
% 6.77/2.22  thf(f129,plain,(
% 6.77/2.22    ($true = sP112) <~> (hoasinduction_lem2 = $true)),
% 6.77/2.22    inference(definition_folding,[status(thm)],[f12,f128,f127,f126,f125])).
% 6.77/2.22  thf(f126,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (($true = (sP110 @ X0)) <=> ? [X9 : term,X10 : term] : (($true = (X0 @ id @ X9 @ id)) & ($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X9) @ id)) & ($true = (X0 @ id @ X10 @ id))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f127,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (($true = (sP111 @ X0)) <=> ? [X1 : subst,X2 : subst,X3 : subst,X4 : term] : (($true != (X0 @ (comp @ X3 @ X1) @ (sub @ X4 @ X1) @ X2)) & ($true = (X0 @ X3 @ X4 @ (comp @ X1 @ X2)))))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f128,plain,(
% 6.77/2.22    ($true = sP112) <=> ! [X0 : subst > term > subst > $o] : (? [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true != (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) & ($true = (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6))) | ($true = (sP110 @ X0)) | ($true = (sP111 @ X0)) | ($true = (sP109 @ X0)))),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[=])],[predicate_definition_introduction])).
% 6.77/2.22  thf(f12,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (? [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true != (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) & ($true = (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6))) | ? [X9 : term,X10 : term] : (($true = (X0 @ id @ X9 @ id)) & ($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X9) @ id)) & ($true = (X0 @ id @ X10 @ id))) | ? [X1 : subst,X2 : subst,X3 : subst,X4 : term] : (($true != (X0 @ (comp @ X3 @ X1) @ (sub @ X4 @ X1) @ X2)) & ($true = (X0 @ X3 @ X4 @ (comp @ X1 @ X2)))) | ! [X11 : term,X12 : term] : (($true != (X0 @ id @ X11 @ id)) | ($true = (X0 @ id @ (ap @ X11 @ X12) @ id)) | ($true != (X0 @ id @ X12 @ id)))) <~> (hoasinduction_lem2 = $true)),
% 6.77/2.22    inference(flattening,[status(thm)],[f11])).
% 6.77/2.22  thf(f11,plain,(
% 6.77/2.22    ! [X0 : subst > term > subst > $o] : (((! [X11 : term,X12 : term] : ((($true = (X0 @ id @ (ap @ X11 @ X12) @ id)) | ($true != (X0 @ id @ X12 @ id))) | ($true != (X0 @ id @ X11 @ id))) | ? [X9 : term,X10 : term] : ((($true != (X0 @ id @ (hoasap @ id @ X10 @ id @ X9) @ id)) & ($true = (X0 @ id @ X9 @ id))) & ($true = (X0 @ id @ X10 @ id)))) | ? [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true != (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) & ($true = (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6)))) | ? [X1 : subst,X2 : subst,X3 : subst,X4 : term] : (($true != (X0 @ (comp @ X3 @ X1) @ (sub @ X4 @ X1) @ X2)) & ($true = (X0 @ X3 @ X4 @ (comp @ X1 @ X2))))) <~> (hoasinduction_lem2 = $true)),
% 6.77/2.22    inference(ennf_transformation,[status(thm)],[f8])).
% 6.77/2.22  thf(f8,plain,(
% 6.77/2.22    ~(! [X0 : subst > term > subst > $o] : (! [X1 : subst,X2 : subst,X3 : subst,X4 : term] : (($true = (X0 @ X3 @ X4 @ (comp @ X1 @ X2))) => ($true = (X0 @ (comp @ X3 @ X1) @ (sub @ X4 @ X1) @ X2))) => (! [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true = (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6)) => ($true = (X0 @ X8 @ X7 @ (comp @ X5 @ X6)))) => (! [X9 : term,X10 : term] : (($true = (X0 @ id @ X10 @ id)) => (($true = (X0 @ id @ X9 @ id)) => ($true = (X0 @ id @ (hoasap @ id @ X10 @ id @ X9) @ id)))) => ! [X11 : term,X12 : term] : (($true = (X0 @ id @ X11 @ id)) => (($true = (X0 @ id @ X12 @ id)) => ($true = (X0 @ id @ (ap @ X11 @ X12) @ id))))))) <=> (hoasinduction_lem2 = $true))),
% 6.77/2.22    inference(fool_elimination,[status(thm)],[f7])).
% 6.77/2.22  thf(f7,plain,(
% 6.77/2.22    ~(! [X0 : subst > term > subst > $o] : (! [X1 : subst,X2 : subst,X3 : subst,X4 : term] : ((X0 @ X3 @ X4 @ (comp @ X1 @ X2)) => (X0 @ (comp @ X3 @ X1) @ (sub @ X4 @ X1) @ X2)) => (! [X5 : subst,X6 : subst,X7 : term,X8 : subst] : ((X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6) => (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) => (! [X9 : term,X10 : term] : ((X0 @ id @ X10 @ id) => ((X0 @ id @ X9 @ id) => (X0 @ id @ (hoasap @ id @ X10 @ id @ X9) @ id))) => ! [X11 : term,X12 : term] : ((X0 @ id @ X11 @ id) => ((X0 @ id @ X12 @ id) => (X0 @ id @ (ap @ X11 @ X12) @ id)))))) = hoasinduction_lem2)),
% 6.77/2.22    inference(rectify,[status(thm)],[f3])).
% 6.77/2.22  thf(f3,negated_conjecture,(
% 6.77/2.22    ~(! [X10 : subst > term > subst > $o] : (! [X26 : subst,X25 : subst,X14 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) => (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) => (! [X26 : subst,X25 : subst,X13 : term,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) => (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) => (! [X15 : term,X13 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (hoasap @ id @ X13 @ id @ X15) @ id))) => ! [X13 : term,X15 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (ap @ X13 @ X15) @ id)))))) = hoasinduction_lem2)),
% 6.77/2.22    inference(negated_conjecture,[status(cth)],[f2])).
% 6.77/2.22  thf(f2,conjecture,(
% 6.77/2.22    (! [X10 : subst > term > subst > $o] : (! [X26 : subst,X25 : subst,X14 : subst,X13 : term] : ((X10 @ X14 @ X13 @ (comp @ X26 @ X25)) => (X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25)) => (! [X26 : subst,X25 : subst,X13 : term,X14 : subst] : ((X10 @ (comp @ X14 @ X26) @ (sub @ X13 @ X26) @ X25) => (X10 @ X14 @ X13 @ (comp @ X26 @ X25))) => (! [X15 : term,X13 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (hoasap @ id @ X13 @ id @ X15) @ id))) => ! [X13 : term,X15 : term] : ((X10 @ id @ X13 @ id) => ((X10 @ id @ X15 @ id) => (X10 @ id @ (ap @ X13 @ X15) @ id)))))) = hoasinduction_lem2)),
% 6.77/2.22    file('/export/starexec/sandbox/tmp/tmp.O26DLJ38OJ/DTF2THF_7038.p',hoasinduction_lem2)).
% 6.77/2.22  thf(f3507,plain,(
% 6.77/2.22    spl658_383 | spl658_43),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1764,f2083,f3505])).
% 6.77/2.22  thf(f2083,definition,(
% 6.77/2.22    spl658_43 <=> ($true = sP6)),
% 6.77/2.22    introduced(definition,[new_symbols(naming,[spl658_43])],[avatar_definition])).
% 6.77/2.22  thf(f1764,plain,(
% 6.77/2.22    ($true = (sK485 @ (d2subst @ d_id) @ sK486 @ (d2subst @ d_id))) | ($true = sP6)),
% 6.77/2.22    inference(definition_unfolding,[status(thm)],[f1247,f1486,f1486])).
% 6.77/2.22  thf(f1247,plain,(
% 6.77/2.22    ($true = sP6) | ($true = (sK485 @ id @ sK486 @ id))),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f638])).
% 6.77/2.22  thf(f638,plain,(
% 6.77/2.22    (($true = sP6) | (($true = (sK485 @ id @ sK487 @ id)) & ! [X3 : subst,X4 : term,X5 : subst,X6 : subst] : (($true = (sK485 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5)))) & ($true != (sP4 @ sK485)) & ((sK485 @ id @ (ap @ sK486 @ sK487) @ id) != $true) & ((sP5 @ sK485) != $true) & ($true = (sK485 @ id @ sK486 @ id)))) & (! [X7 : subst > term > subst > $o,X8 : term,X9 : term] : (($true != (X7 @ id @ X9 @ id)) | (($true != (X7 @ (comp @ (sK491 @ X7) @ (sK488 @ X7)) @ (sub @ (sK489 @ X7) @ (sK488 @ X7)) @ (sK490 @ X7))) & ($true = (X7 @ (sK491 @ X7) @ (sK489 @ X7) @ (comp @ (sK488 @ X7) @ (sK490 @ X7))))) | ($true = (sP4 @ X7)) | ($true = (X7 @ id @ (ap @ X8 @ X9) @ id)) | ($true = (sP5 @ X7)) | ($true != (X7 @ id @ X8 @ id))) | ($true != sP6))),
% 6.77/2.22    inference(skolemisation,[status(esa),new_symbols(skolem,[sK485,sK486,sK487,sK488,sK489,sK490,sK491])],[f635,f637,f636])).
% 6.77/2.22  thf(f636,plain,(
% 6.77/2.22    ? [X0 : subst > term > subst > $o,X1 : term,X2 : term] : (($true = (X0 @ id @ X2 @ id)) & ! [X3 : subst,X4 : term,X5 : subst,X6 : subst] : (($true = (X0 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (X0 @ X6 @ X4 @ (comp @ X3 @ X5)))) & ($true != (sP4 @ X0)) & ((X0 @ id @ (ap @ X1 @ X2) @ id) != $true) & ($true != (sP5 @ X0)) & ((X0 @ id @ X1 @ id) = $true)) => (($true = (sK485 @ id @ sK487 @ id)) & ! [X6 : subst,X5 : subst,X4 : term,X3 : subst] : (($true = (sK485 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5)))) & ($true != (sP4 @ sK485)) & ((sK485 @ id @ (ap @ sK486 @ sK487) @ id) != $true) & ((sP5 @ sK485) != $true) & ($true = (sK485 @ id @ sK486 @ id)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f637,plain,(
% 6.77/2.22    ! [X7 : subst > term > subst > $o] : (? [X10 : subst,X11 : term,X12 : subst,X13 : subst] : (($true != (X7 @ (comp @ X13 @ X10) @ (sub @ X11 @ X10) @ X12)) & ($true = (X7 @ X13 @ X11 @ (comp @ X10 @ X12)))) => (($true != (X7 @ (comp @ (sK491 @ X7) @ (sK488 @ X7)) @ (sub @ (sK489 @ X7) @ (sK488 @ X7)) @ (sK490 @ X7))) & ($true = (X7 @ (sK491 @ X7) @ (sK489 @ X7) @ (comp @ (sK488 @ X7) @ (sK490 @ X7))))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f635,plain,(
% 6.77/2.22    (($true = sP6) | ? [X0 : subst > term > subst > $o,X1 : term,X2 : term] : (($true = (X0 @ id @ X2 @ id)) & ! [X3 : subst,X4 : term,X5 : subst,X6 : subst] : (($true = (X0 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (X0 @ X6 @ X4 @ (comp @ X3 @ X5)))) & ($true != (sP4 @ X0)) & ((X0 @ id @ (ap @ X1 @ X2) @ id) != $true) & ($true != (sP5 @ X0)) & ((X0 @ id @ X1 @ id) = $true))) & (! [X7 : subst > term > subst > $o,X8 : term,X9 : term] : (($true != (X7 @ id @ X9 @ id)) | ? [X10 : subst,X11 : term,X12 : subst,X13 : subst] : (($true != (X7 @ (comp @ X13 @ X10) @ (sub @ X11 @ X10) @ X12)) & ($true = (X7 @ X13 @ X11 @ (comp @ X10 @ X12)))) | ($true = (sP4 @ X7)) | ($true = (X7 @ id @ (ap @ X8 @ X9) @ id)) | ($true = (sP5 @ X7)) | ($true != (X7 @ id @ X8 @ id))) | ($true != sP6))),
% 6.77/2.22    inference(rectify,[status(thm)],[f634])).
% 6.77/2.22  thf(f634,plain,(
% 6.77/2.22    (($true = sP6) | ? [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (($true = (X432 @ id @ X434 @ id)) & ! [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true = (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) | ($true != (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) & ($true != (sP4 @ X432)) & ((X432 @ id @ (ap @ X433 @ X434) @ id) != $true) & ($true != (sP5 @ X432)) & ($true = (X432 @ id @ X433 @ id)))) & (! [X432 : subst > term > subst > $o,X433 : term,X434 : term] : (($true != (X432 @ id @ X434 @ id)) | ? [X435 : subst,X436 : term,X437 : subst,X438 : subst] : (($true != (X432 @ (comp @ X438 @ X435) @ (sub @ X436 @ X435) @ X437)) & ($true = (X432 @ X438 @ X436 @ (comp @ X435 @ X437)))) | ($true = (sP4 @ X432)) | ((X432 @ id @ (ap @ X433 @ X434) @ id) = $true) | ($true = (sP5 @ X432)) | ($true != (X432 @ id @ X433 @ id))) | ($true != sP6))),
% 6.77/2.22    inference(nnf_transformation,[status(thm)],[f21])).
% 6.77/2.22  thf(f3239,plain,(
% 6.77/2.22    spl658_326 | spl658_43),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1251,f2083,f3237])).
% 6.77/2.22  thf(f1251,plain,(
% 6.77/2.22    ( ! [X3 : subst,X6 : subst,X4 : term,X5 : subst] : (($true = sP6) | ($true = (sK485 @ (comp @ X6 @ X3) @ (sub @ X4 @ X3) @ X5)) | ($true != (sK485 @ X6 @ X4 @ (comp @ X3 @ X5)))) )),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f638])).
% 6.77/2.22  thf(f3186,plain,(
% 6.77/2.22    spl658_176 | ~spl658_313),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1512,f3184,f2614])).
% 6.77/2.22  thf(f1512,plain,(
% 6.77/2.22    ($true = sP112) | ($true != (sP109 @ sK645))),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f750])).
% 6.77/2.22  thf(f750,plain,(
% 6.77/2.22    (($true = sP112) | (! [X1 : subst,X2 : subst,X3 : term,X4 : subst] : (($true = (sK645 @ X4 @ X3 @ (comp @ X1 @ X2))) | ($true != (sK645 @ (comp @ X4 @ X1) @ (sub @ X3 @ X1) @ X2))) & ($true != (sP110 @ sK645)) & ($true != (sP111 @ sK645)) & ($true != (sP109 @ sK645)))) & (! [X5 : subst > term > subst > $o] : ((($true != (X5 @ (sK649 @ X5) @ (sK648 @ X5) @ (comp @ (sK646 @ X5) @ (sK647 @ X5)))) & ($true = (X5 @ (comp @ (sK649 @ X5) @ (sK646 @ X5)) @ (sub @ (sK648 @ X5) @ (sK646 @ X5)) @ (sK647 @ X5)))) | ($true = (sP110 @ X5)) | ((sP111 @ X5) = $true) | ($true = (sP109 @ X5))) | ($true != sP112))),
% 6.77/2.22    inference(skolemisation,[status(esa),new_symbols(skolem,[sK645,sK646,sK647,sK648,sK649])],[f747,f749,f748])).
% 6.77/2.22  thf(f748,plain,(
% 6.77/2.22    ? [X0 : subst > term > subst > $o] : (! [X1 : subst,X2 : subst,X3 : term,X4 : subst] : (($true = (X0 @ X4 @ X3 @ (comp @ X1 @ X2))) | ($true != (X0 @ (comp @ X4 @ X1) @ (sub @ X3 @ X1) @ X2))) & ($true != (sP110 @ X0)) & ($true != (sP111 @ X0)) & ($true != (sP109 @ X0))) => (! [X4 : subst,X3 : term,X2 : subst,X1 : subst] : (($true = (sK645 @ X4 @ X3 @ (comp @ X1 @ X2))) | ($true != (sK645 @ (comp @ X4 @ X1) @ (sub @ X3 @ X1) @ X2))) & ($true != (sP110 @ sK645)) & ($true != (sP111 @ sK645)) & ($true != (sP109 @ sK645)))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f749,plain,(
% 6.77/2.22    ! [X5 : subst > term > subst > $o] : (? [X6 : subst,X7 : subst,X8 : term,X9 : subst] : (($true != (X5 @ X9 @ X8 @ (comp @ X6 @ X7))) & ((X5 @ (comp @ X9 @ X6) @ (sub @ X8 @ X6) @ X7) = $true)) => (($true != (X5 @ (sK649 @ X5) @ (sK648 @ X5) @ (comp @ (sK646 @ X5) @ (sK647 @ X5)))) & ($true = (X5 @ (comp @ (sK649 @ X5) @ (sK646 @ X5)) @ (sub @ (sK648 @ X5) @ (sK646 @ X5)) @ (sK647 @ X5)))))),
% 6.77/2.22    introduced(definition,[],[choice_axiom])).
% 6.77/2.22  thf(f747,plain,(
% 6.77/2.22    (($true = sP112) | ? [X0 : subst > term > subst > $o] : (! [X1 : subst,X2 : subst,X3 : term,X4 : subst] : (($true = (X0 @ X4 @ X3 @ (comp @ X1 @ X2))) | ($true != (X0 @ (comp @ X4 @ X1) @ (sub @ X3 @ X1) @ X2))) & ($true != (sP110 @ X0)) & ($true != (sP111 @ X0)) & ($true != (sP109 @ X0)))) & (! [X5 : subst > term > subst > $o] : (? [X6 : subst,X7 : subst,X8 : term,X9 : subst] : (($true != (X5 @ X9 @ X8 @ (comp @ X6 @ X7))) & ((X5 @ (comp @ X9 @ X6) @ (sub @ X8 @ X6) @ X7) = $true)) | ($true = (sP110 @ X5)) | ((sP111 @ X5) = $true) | ($true = (sP109 @ X5))) | ($true != sP112))),
% 6.77/2.22    inference(rectify,[status(thm)],[f746])).
% 6.77/2.22  thf(f746,plain,(
% 6.77/2.22    (($true = sP112) | ? [X0 : subst > term > subst > $o] : (! [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true = (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) | ($true != (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6))) & ($true != (sP110 @ X0)) & ($true != (sP111 @ X0)) & ($true != (sP109 @ X0)))) & (! [X0 : subst > term > subst > $o] : (? [X5 : subst,X6 : subst,X7 : term,X8 : subst] : (($true != (X0 @ X8 @ X7 @ (comp @ X5 @ X6))) & ($true = (X0 @ (comp @ X8 @ X5) @ (sub @ X7 @ X5) @ X6))) | ($true = (sP110 @ X0)) | ($true = (sP111 @ X0)) | ($true = (sP109 @ X0))) | ($true != sP112))),
% 6.77/2.22    inference(nnf_transformation,[status(thm)],[f128])).
% 6.77/2.22  thf(f3068,plain,(
% 6.77/2.22    spl658_43 | ~spl658_285),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1763,f3066,f2083])).
% 6.77/2.22  thf(f1763,plain,(
% 6.77/2.22    ($true != (sK485 @ (d2subst @ d_id) @ (ap @ sK486 @ sK487) @ (d2subst @ d_id))) | ($true = sP6)),
% 6.77/2.22    inference(definition_unfolding,[status(thm)],[f1249,f1486,f1486])).
% 6.77/2.22  thf(f1249,plain,(
% 6.77/2.22    ($true = sP6) | ((sK485 @ id @ (ap @ sK486 @ sK487) @ id) != $true)),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f638])).
% 6.77/2.22  thf(f2319,plain,(
% 6.77/2.22    ~spl658_43 | spl658_81),
% 6.77/2.22    inference(avatar_split_clause,[status(thm)],[f1289,f2225,f2083])).
% 6.77/2.22  thf(f1289,plain,(
% 6.77/2.22    ($true != sP6) | (hoasinduction_lem2 = $true)),
% 6.77/2.22    inference(cnf_transformation,[status(thm)],[f745])).
% 6.77/2.22  % SZS output end Proof for DTF2THF_7038
% 6.77/2.22  % (7404)------------------------------
% 6.77/2.22  % (7404)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 6.77/2.22  % (7404)Termination reason: Refutation
% 6.77/2.22  
% 6.77/2.22  % (7404)Memory used [KB]: 13048
% 6.77/2.22  % (7404)Time elapsed: 0.312 s
% 6.77/2.22  % (7404)Instructions burned: 861 (million)
% 6.77/2.22  % (7404)------------------------------
% 6.77/2.22  % (7404)------------------------------
% 6.77/2.22  % (7356)Success in time 0.654 s
%------------------------------------------------------------------------------